Code Style. JSON
for Windows and Linux
for OS X
Use this page to configure formatting options for JSON files. View the result in the
Preview pane on the right.
On this page:
Tabs and Indents
|Use tab character||
If this check box is selected, tab characters are used:
- On pressing the Tab key
- For indentation
- For code reformatting
When the check box is cleared, RubyMine uses spaces instead of tabs.
- If this check box is selected, the part of indentation defined by the nesting of code blocks,
is made of the tabs and (if necessary) spaces, while the part of indentation defined by
the alignment is made only of spaces.
- If this check box is cleared, only tabs are used. This means that a group of spaces that
fits the specified tab size is automatically replaced with a tab, which may result in
breaking fine alignment.
The Smart Tabs check box is available if the
Use Tab Character check box is selected.
|Tab size||In this text box, specify the number of spaces included in a tab.|
|Indent||In this text box, specify the number of spaces (or tabs if the
Use Tab Character
check box is selected) to be inserted for each indent level.
|Continuation indent||In this text box, specify the number of spaces (or tabs if the
Use Tab Character check box is selected) to be inserted between the elements
of an array, in expressions, method declarations and method calls.|
|Keep indents on empty lines||If this check box is selected, then RubyMine will keep indents on the empty lines as if they
contained some code.|
If this check box is not selected, RubyMine will delete the tab characters and spaces.
Indent chained methods
In declarations of functions, the second and further methods
in a chain are displayed on a separate line.
When the check box is selected, the second and further methods in a chain are aligned with the first call.
When the check box is cleared, the second and further methods in a chain are aligned with the object on which they are invoked.
Indent all chained calls in a group
The check box is available only when the Indent chained methods check box is selected.
Use this tab to specify where you want spaces in your code. To have RubyMine automatically insert a space at a location,
select the check box next to this location in the list.
The results are displayed in the Preview pane.
Use this tab to define where and how many blank lines you want RubyMine to retain and insert in your code
after reformatting. For each type of location, specify the number of blank lines to be inserted.
The results are displayed in the Preview pane.
|Keep Maximum Blank Lines||In this area, specify the number of blank lines to be kept after reformatting in the specified locations.|
|In code||Use this field to set the number of the blank lines.|
Wrapping and braces
In this tab, customize the code style options, which RubyMine will apply on
reformatting the source code. The left-hand pane contains the list of exceptions
(Keep when reformatting), and placement and alignment options for the various code
constructs (lists, statements, operations, annotations, etc.) The right-hand pane shows preview.
Alignment takes precedence over indentation options.
Right Margin (columns)
Use Right Margin field to specify a margin space required on the right side of an
element. If you select Default option then a value of the right margin from the
global settings is used.
Wrap on typing
Use Wrap on typing settings to specify how the edited text is fitted in the
specified Right margin.
You can select one the following options:
- Default - in this case RubyMine uses the Wrap on typing
option that is specified in the global settings.
- Yes - in this case RubyMine uses the value specified in the
Right Margin field.
- No - in this case this option is switched off and a line can exceed
the value specified in the right margin.
Keep when reformatting
Use the check boxes to configure exceptions that RubyMine will make when reformatting the source code.
For example, by default, the Line breaks check box is selected. If your code contains lines that are shorter than a
standard convention, you can convert them by disabling the Line breaks check box before you reformat the source code.
The wrapping style applies to the various code constructs, specified in the left-hand pane (for example, method call arguments, or assignment statements).
|Wrapping style||From this drop-down list, select the desired wrapping style:
|Ensure right margin is not exceeded||If this check box is selected, the formatter will do its best to avoid having document lines exceeding the right margin.
This option takes precedence over the Do not wrap wrapping style.|
|Align when multiline||If this check box is selected, a code construct starts at the same column on each next line.
Otherwise, the position of a code construct is determined by the current indentation level.
<character(s)> on next line
|Select this check box to have the specified character or characters moved to the next line
when the lines are wrapped.|
|'else' on new line||Use this check box to have the corresponding statements or characters moved to the next line.|
|New line after |
|Select this check box to have the code after the specified character moved to a new line.|
|Special else if treatment||If this check box is selected, |
else if statements are located in the same line.
else if statements are moved to the next line to
the corresponding indent level.
|Indent case branches||
If this check box is selected, the |
case statement is located at the corresponding indent level.
case statement is placed at the same indent level with
|Align object properties||From the drop-down list, select the type of objects' alignment:
Do not align: the attributes in sequential lines will be not aligned.
On colon: the attributes in sequential lines will be aligned against the colon.
On value: the attributes in sequential lines will be aligned against the value.
Last modified: 22 March 2017