Smart.Braces is a tool that allows easy creation of matching braces right while you are typing. Just type an opening brace and Smart.Braces will automatically add the closing one. In addition to braces completion, Smart.Braces supports completion of string and character enclosing symbols - " and ' , respectively.

Opening brace is typed
Result of Smart.Braces invocation

Smart.Braces adds closing characters after the opening ones for all characters except curly braces; the closing curly brace is inserted into the next line and may require an additional line, for the cursor with the appropriate indent to be placed (according to the Complete curly brace and indent option ).

Options Dependency

You can control the behavior of Smart.Braces using the Editor Options | Editor | Editor Options tree view - expand the Smart.Braces options node and turn on or off options you need.

NOTE: With a non-standard JBuilder keymap used (such as Vi/VIM), Smart.Braces may conflict with keymap settings. Apparently, for the VI keymap, ' and " symbols may be overridden by Smart.Braces. The reason of such behavior lies in the features of the vi implementation (not absolutely correct implementation of the Keymap default action).
However, you can disable loading of part of the Smart.Braces functionality, which leads to the conflict.  To do this, please add the following lines to your JBuilder.config file (located in the JBuilder/bin directory):

vmparam -DProductivity.Smart.Braces. CompleteCharacters=no
vmparam -DProductivity.Smart.Braces. CompleteStrings=no

See also: Productivity! Tools, Customizing Productivity!