Reformatting Source Code
CLion lets you reformat source code to meet the requirements of your code style. CLion will lay out spacing, indents, keywords etc. Reformatting can apply to the selected text, entire file, or entire project.
It is also possible to apply reformatting to the parts of the source code only, using the formatting markers.
To reformat code for a directory, follow these steps:
- In the Project tool window, select a directory you want to apply your reformatting to.
- From the main menu, select or press Ctrl+Alt+L.
- In the Reformat Code dialog box, specify the necessary options and filters for you reformatting and click Run.
Reformatting code for the current file
To reformat code for the current file, follow these steps:
- In the editor of the currently opened file, press Ctrl+Shift+Alt+L.
Note that if you select from the main menu or press Ctrl+Alt+L, CLion will try to reformat the source code automatically without opening the Reformat File dialog.
- In the Reformat File dialog, specify options for the reformatting and click Run.
Skipping a region when reformatting source code
To enable formatter markers, make sure to select the check box Enable formatter markers in comments in the Code Style page of the Settings/Preferences dialog, and type the markers in the Formatter off/on fields.
To skip a certain region on reformatting, follow these steps:
- At the beginning of the region, create a line comment (Ctrl+Slash), and then manually type the marker specified in the Formatter off field of Code Style page.
- At the end of the region, create a line comment (Ctrl+Slash), and then manually type the marker specified in the Formatter on field of Code Style page.
- Perform code reformatting, as described above.
Alternatively, create a live template to surround a block of code with formatter off/on markers, see Creating and Editing Live Templates.
Example of using formatting markers
|The original source code||The code after reformatting|
When the formatting markers are disabled, the original formatting is broken:
When the formatting markers are enabled, the original formatting is preserved: