Indenting code makes reading statements such as while
loops easier. To set
and apply indenting preferences to code in the Editor and Live Editor:
On the Home tab, in the
Environment section, click
Preferences.
The Preferences dialog box opens.
Select MATLAB > Editor/Debugger > Language.
Choose a computer language from the Language drop-down list.
In the Indenting section, select or clear Apply smart indenting while typing, depending on whether you want indenting applied automatically, as you type.
If you clear this option, you can manually apply indenting by selecting the lines in the Editor and Live Editor to indent, right-clicking, and then selecting Smart Indent from the context menu.
Do one of the following:
If you chose any language other than MATLAB in step 2, click OK.
If you chose MATLAB in step 2, select a Function indenting format, and then click OK. Function indent formats are:
Classic
— The Editor and
Live Editor align the function code with the function
declaration.
Indent nested functions
— The Editor and Live Editor indent the function code
within a nested function.
Indent all functions
—
The Editor and Live Editor indent the function code for both
main and nested functions.
This image illustrates the function indenting formats.
Note
Indenting preferences are not supported for TLC, VHDL, or Verilog.
In MATLAB® Online™, indenting preferences are located under MATLAB > Editor/Debugger > MATLAB Language and MATLAB > Editor/Debugger > Other Languages.
Regardless of whether you apply indenting automatically or manually, you can move selected lines further to the left or right, by doing one of the following:
On the Editor tab, in the Edit
section, click ,
, or
. For live scripts and functions, this
functionality is available on the Live Editor tab, in
the Code section.
Pressing the Tab key or the Shift+Tab key, respectively.
This works differently if you select the Editor/Debugger Tab preference for Emacs-style Tab key smart indenting — when you position the cursor in any line or select a group of lines and press Tab, the lines indent according to smart indenting practices.
By default, a light gray vertical line (rule) appears at column 75 in the Editor, indicating where a line exceeds 75 characters. You can set this text limit indicator to another value, which is useful, for example, if you want to view the code in another text editor that has a different line width limit. The right-side text limit indicator is not supported in the Live Editor.
To hide, or change the appearance of the vertical line:
On the Home tab, in the
Environment section, click
Preferences.
The Preferences dialog box opens.
Select MATLAB > Editor/Debugger > Display.
Adjust the settings in the Right-hand text limit section.
Note
This limit is a visual cue only and does not prevent text from exceeding
the limit. To wrap comment text at a specified column number automatically,
go to the Home tab and in the
Environment section, click
Preferences. Select MATLAB > Editor/Debugger > Language, and adjust the Comment formatting
preferences. To adjust Comment formatting preferences
in MATLAB
Online, select Editor/Debugger > MATLAB Language.
Code folding is the ability to expand and collapse certain MATLAB programming constructs. This improves readability when a file contains numerous functions or other blocks of code that you want to hide when you are not currently working with that part of the file. MATLAB programming constructs include:
Code sections for running and publishing code
Class code
for
and parfor
blocks
Function and class help
Function code
To see the entire list of constructs, go to the Home tab, and
in the Environment section, click
Preferences. Then, select Editor/Debugger > Code Folding.
To expand or collapse code, click the plus or minus sign
that appears to the left of the construct in the
Editor. You also use the Ctrl+Shift+. (period) and Ctrl+.
(period) keyboard shortcuts, or use the code folding buttons in the
View tab.
To expand or collapse all of the code in a file, place your cursor anywhere within the file, right-click, and then select Code Folding > Expand All or Code Folding > Fold All from the context menu. You also can use the Ctrl+Shift+, (comma) and Ctrl+, (comma) keyboard shortcuts, or the code folding buttons in the View tab.
Note
Code folding is not supported in the Live Editor
You can view code that is currently folded by positioning the pointer over its
ellipsis . The code appears in a tooltip. Viewing
folded code in a tooltip is not supported in MATLAB
Online.
The following image shows the tooltip that appears when you place the pointer
over the ellipsis on line 23 of lenghtofline.m
when a
for
loop is folded.
If you print a file with one or more collapsed constructs, those constructs are expanded in the printed version of the file.
If you enable code folding for functions and a function in your code does not
end with an explicit end
statement, you see the following
behavior:
If a line containing only comments appears at the end of such a
function, then the Editor does not include that line when folding the
function. This is because MATLAB does not include trailing white space and comments in a
function definition that has no explicit end
statement. In MATLAB
Online, the Editor does include the line when folding the
function.
Code Folding Enabled for Function Code Only illustrates
this behavior. Line 13 is excluded from the fold for the
foo
function.
If a fold for a code section overlaps the function code, then the Editor does not show the fold for the overlapping section.
The three figures that follow illustrate this behavior. The first two
figures, Code Folding Enabled for Function Code Only and Code Folding Enabled for Sections Only illustrate how the code
folding appears when you enable it for function code only and then
section only, respectively. The last figure, Code Folding Enabled for Both Functions and Sections,
illustrates the effects when code folding is enabled for both. Because
the fold for section 3 (lines 11–13) overlaps the fold for function
foo
(lines 4–12), the Editor does not display the
fold for section 3.
Code Folding Enabled for Function Code Only
Code Folding Enabled for Sections Only
Code Folding Enabled for Both Functions and Sections
In the Live Editor, you can break large live scripts or functions into smaller pieces by automatically converting selected areas of code into functions or local functions. This is called code refactoring.
To refactor a selected area of code:
Select one or more lines of code.
On the Live Editor tab, in the
Code section, click
Refactor and select from the available
options.
Enter a name for the new function. MATLAB creates a function with the selected code and replaces the original code with a call to the newly created function.
Refactoring is also available in the Editor in MATLAB
Online. To refactor a selected area of code in the MATLAB
Online Editor, on the Editor tab, in the
Edit section, click the code refactoring
button . Then, select from the available options.