Language Options
Go Up to Editor Options
Tools > Options > Editor > Language
Use this page to configure Code Editor settings for various types of source files.
Item | Description |
---|---|
Language | Choose a predefined or customized source file type. Choices are: C/C++, C#, Default, HTML, IDL, INI File, JavaScript, Objective C++, Pascal, PHP, SQL, Style Sheet, Visual Basic .NET, and XML. |
Contents
Options tab
Tools > Options > Editor > Language and click on Options tab.
Item | Description |
---|---|
Auto indent mode |
Positions the cursor under the first nonblank character of the preceding nonblank line when you press |
Use tab character |
Inserts tab characters when you press |
Smart tab |
Tabs to the first non-whitespace character in the preceding line. If Use tab character is enabled, this option is off. |
Cursor through tabs |
Enables the |
Optimal fill |
Begins every auto-indented line with the minimum number of characters possible, using tabs and spaces as necessary. |
Backspace unindents |
Aligns the insertion point to the previous indentation level (outdents it) when you press |
Keep trailing blanks |
Prevents trailing blanks from being truncated. |
Show tab character |
Displays tab characters as >>, if Use tab characters is selected. |
Show space character |
Displays typed spaces as dots (.). |
Use syntax highlight |
Enables syntax highlighting. To set highlighting options, use the Color page. |
Show line breaks |
Displays line break symbols at the end of each line. |
Highlight current line |
Highlights the current line in the Code Editor. |
Tab stops |
Set tabs stops that the cursor will move to when you press |
Block indent |
Specifies the number of spaces to indent a marked block. The default is 2; the upper limit is 16. |
Syntax Highlighter tab
Tools > Options > Editor > Language and click on Syntax Highlighter tab.
Item | Description |
---|---|
Syntax Highlighter |
Choose an option to change the format for displaying code elements. Check Use syntax highlighting to enable this option. |
Error Insight tab
Tools > Options > Editor > Language and click on Error Insight tab.
Item | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Show Error insight levels |
Underlines invalid code and HTML. Positioning the cursor over invalid text displays a tooltip window containing the probable cause of the error. Choose the level of error insight you want to see.
| ||||||||||
Editor rendering style |
Choose the editor rendering style, choices are: | ||||||||||
Show Error Insight in editor gutter |
Select this option to show the error insight in the editor gutter. | ||||||||||
Inactive Code Opacity Percent |
This option allows to alpha blend and show a certain color opacity value of an inactive or disabled code. The default is 30. |
Code Insight tab
Tools > Options > Editor > Language and click on Code Insight tab.
Use this page to configure how Code Insight works while editing code in the Code Editor.
For Delphi, Code completion is provided via the DelphiLSP LSP language server.
For C++:
- The classic compiler uses old-style completion, which runs inside the IDE main thread and can block the IDE while it calculates (you can press
Escape
to cancel.) - The modern Clang compilers use Visual Assist to provide completions by default. VA is a fuzzy parser and aims to provide completions fast, but its results are not always compiler-style accurate. You can turn off the Use Visual Assist checkbox to use the cquery C++ LSP server instead. This enables Error Insight, but is not currently our recommended code completion engine.
Item | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Code insight manager |
Displays a list of programming and markup languages ( | ||||||||||
Code completion |
Displays a list of properties, methods, and events when you enter a class name followed by a period in the Code Editor. You can then select an item and press If this option is not checked, you can still invoke Code Completion by pressing
Note: For the Clang-enhanced compiler, this feature uses a Language Server Protocol server. It is asynchronous and non-blocking.
| ||||||||||
Finish incomplete properties |
Determines whether class completion completes property declarations. | ||||||||||
Parameter completion |
It is auto-invoked for methods after you code-complete that method, or press
Note: For the Clang-enhanced compiler, this feature uses a Language Server Protocol server. It is asynchronous and non-blocking.
| ||||||||||
Tooltip expression evaluation |
Displays the current value of a variable when you position the cursor over it. This feature is available when program execution is paused during a debugging session. | ||||||||||
Tooltip insight |
It happens when hovering the mouse over a symbol.
| ||||||||||
Find declaration |
Invokes Find Declaration by pressing Note:
For more information, see Code Insight Reference. | ||||||||||
Block completion |
Enables the editor to automatically insert a block-closing symbol when you begin a block and press
| ||||||||||
Code template completion |
Automatically adds a code template when you type a token that starts a template and press
| ||||||||||
Use Visual Assist |
For C++, enables different refactoring and search options, such as, rename, add Include, create declaration and create implementation, go to related, go to member, find symbol, find references, and go to definition and go to implementation | ||||||||||
Generate LSP Config |
Generates .delphi.json files. When enabling this option, the key project settings used by the LSP server are saved to a file with the same name as your project and a .delphi.json extension. Use this file when using LSP with an external editor such as Visual Studio Code. | ||||||||||
Use 64-bit version of the server | Enables the 64-bit version of the DelphiLSP engine.
Note: The 64-bit binaries feature is limited to higher SKUs and is only available in Enterprise and Architect editions. It is not available in the Professional or CE editions.
|
Insight Options tab
Tools > Options > Editor > Language and click on Insight Options tab.
Item | Description |
---|---|
Use editor font |
Uses the same font as the Code Editor instead of the standard IDE font. |
Use arrow-right to accept selected code completion item |
Accepts the item of your preference by using the arrow-right keyboard. |
Use brackets to accept selected code completion item |
This option is enabled by default, it accepts the item of your preference by using brackets. |
Code completion filtering |
Show symbols that contain filter - Select this to list all symbols that contain the text you typed.
|
Select shortest matching symbol - Select this option to select the shortest matching symbol. | |
Filter text is underlined -Select this option so the code completion dropdown underlines text that matches what you typed. | |
Code completion auto-selection |
Auto-Select template items - Select this option to automatically choose the template items. |
Auto-Select keyword items - Select this option to automatically choose the keyword items. |
LSP Behavior tab
Tools > Options > Editor > Language and click on LSP Behavior tab.
Item | Description |
---|---|
Restart server each time a project is activated |
Indexes all files in a project and all files opened in the editor. Note: For all C++ projects, this option is on by default.
|
Index only files that are opened in the editor |
Indexes only the files you open, regardless of your project. |
Index all files in the project group |
Indexes all files in all the projects and files opened in the editor when the project group is loaded. |
Completion Keys tab
Tools > Options > Editor > Language and click on Completion Keys tab.
Use this page to customize the way the IDE responds to keys you press when the Code Completion window is open, both in terms of inserting a completion vs. overwriting the symbol, as well as which keys cause an action.
This allows you to customize completion to match your expectations. For instance, if you're used to a different IDE and have specific interaction habits, you can adjust completion to meet your needs.
By default, auto-invoked code completion inserts a completion with far fewer keys than the normal code completion, only with Tab
and Enter
. This ensures that it never inserts code by accident as you type. For normal completion, accepting the completion on keys like opening brackets —(
— means you can accept a method call by starting the parameter list.
The available options for each key or set of keys are:
- Inserts - inserts the suggestion.
- Overwrites - overwrites the editor token with the suggestion.
- Cancels - cancels or close the completion.