Use exactly 4 white spaces (not a tab) for indention.
if true while true disp('wait a very long time.') end end
In vim this behaviour can be achieved with the following setting.
set sw=4 ts=4 et
In order to enhance readability insert white spaces between
= and function
someVar = computeValue(oneArgument, anotherParameter);
Avoid to insert white spaces into blank lines.
Due to the large monitor sizes we have nowadays it is not mandatory to stick to the common line width of 79 characters. As the code at github is limited to 90 characters, we should also use that limit instead.
In vim this will add the following setting to the settings line introduced above.
set sw=4 ts=4 et tw=90
If you have to break a line the elements should be aligned vertically in one of the following ways.
% Aligned with opening delimiter foo = loadFile(['/path/to/a/veryveryveryveryandsoon/', ... 'filenaaaaaaaaaaaaaaaaaaammmmmmmmmmmmmmmmeeeeeeeee.txt']); % Start with function parameters in same line foo = longFunctionName(parameterOne, parameterTwo, ... parameterThree, parameterFour); % Start with function parameters on next line foo = longFunctionName( ... parameterOne, parameterTwo, ... parameterThree, parameterFour);
if-statements it could happen that you run into trouble if you have to do
a line break. The reason is that the 4 characters indentation are exactly the same
if ( which is used for alignment. Here are solutions to deal with it.
% No extra indentation if (theFirstThing & ... theSecondThing) doFunnyStuff(); end % Add a comment for separation if (theFirstThing & ... theSecondThing) % Both conditions are met, we can party doFunnyStuff(); end % Add some extra indentation on the conditional continuation line if (theFirstThing & ... theSecondThing) doFunnyStuff(); end
For multi-line statements the closing bracket may line up at the end of the last line, under the first non-whitespace character of the last line, or it may line up under the first character of the line that starts the statement.
largeMatrix = [ 1, 2, 3 4, 5, 6]; largeMatrix = [ 1, 2, 3 4, 5, 6 ]; largeMatrix = [ 1, 2, 3 4, 5, 6 ];