GoLand 2022.3 Help

Code Completion

Use this page to configure code completion and parameter information.

Match case

Select this option if you want letter case to be taken into account when suggesting matches for code completion. Choose whether you want to match case for the first letter of for all letters.

Automatically insert single suggestions for

Choose whether you want to automatically complete your code if there's just one code completion suggestion for basic and/or type-matching completion.

Sort suggestions alphabetically

Choose this option if you want to sort items in the suggestions list in the alphabetical order instead of sorting them by relevance.

You can change this behavior at any time by clicking the sort alphabetically or sort by relevance icons in the suggestion list.

Show suggestions as you type

Select this checkbox if you want the suggestion list to be invoked automatically, without having to call completion explicitly.

Insert selected suggestion by pressing space, dot, or other context-dependent keys

Select the checkbox if you want to insert the selected suggestion by typing certain keys that depend on the language, your context, and so on.

Show the documentation popup in

Select this checkbox to have GoLand automatically show a popup for each item in the suggestions list with the documentation for the class, method, or field currently highlighted in the lookup list.

In the field to the right, specify the delay (in milliseconds), after which the popup should appear.

Insert parentheses automatically when applicable

If this option is enabled, GoLand automatically inserts a pair of opening and closing parentheses when you complete a function/method.

Insert parentheses on completion is enabled

Clear the checkbox to suppress inserting parentheses automatically.

If you use an opening parentheses ( instead of Enter to apply the selected item from a completion list, parentheses will be inserted automatically no matter whether the option is turned on or off.

Insert parentheses on completion is disabled. Parentheses are still inserted on completion with an opening brace.

To use an opening parentheses ( instead of Enter to apply the selected item from a completion list, open the Settings/Preferences dialog (Ctrl+Alt+S), go to Editor | General | Code Completion, and select the Insert selected suggestion by pressing space, dot, or other context-dependent keys checkbox.

See Use specific keys to insert suggestions for details.

Machine Learning-Assisted Completion

Sort completion suggestions based on machine learning

Select this checkbox if you want to leverage machine learning models to rank most suitable items higher in the suggestions lists. Optionally, select languages where the ML-assisted completion should apply.

When this feature is enabled, GoLand will send and receive statistics of completion choices at different caret positions to train and apply ML algorithms. The statistics are fully anonymous, they include no names of types or functions.

Mark position changes in the completion popup

If you are trying to understand, how ML assistance affects the order of suggestions in completion lists, it might be helpful to mark items that the ML algorithm moved higher or lower relatively to the standard suggestion sorting. Otherwise, if you are happy with ML suggestions, you can clear this checkbox.

Mark the most relevant item in the completion popup

When enabled, this option allows you to see if there is a completion item that the ML algorithm considers to be the exact match for the current position. If such item exists, it will be marked with an asterisk.

JavaScript

In this area, you can configure code completion in the JavaScript context.

Only type-based completion

By default, GoLand suggests completion for symbols regardless of their types. With this approach, in complicated cases the list shows multiple completion variants.

To make completion more precise, select the checkbox. The completion list will strongly depend on the GoLand inference. As a result, the list may remain empty in case of poor inference.

Suggest items with optional chaining for nullable types

By default, GoLand suggests completion for symbols with the optional chaining operator (?). To suppress showing such suggestions, clear the checkbox.

Expand method bodies in completion for overrides

By default, when you want to override a method from the parent class or interface and select this method from the list of completion suggestions, GoLand automatically adds parameters, generates a super() call, and adds the type information, if possible.

Clear the Expand method bodies in completion for overrides checkbox to suppress automatic generation of method bodies for overrides during completion.

Completion of names

  • Suggest variable and parameter names: By default, the checkbox is cleared. When it is selected, GoLand suggests names for new variables and parameters during their declaration. These suggestions are based on the names of classes, types, and interfaces that are defined in your project, in the libraries you are using, and in standard APIs.

  • Suggest names for class fields

    The option is by default turned off.

  • Add type annotations for suggested parameter names: Select this checkbox to supply each completion suggestion with information on its type.

    The checkbox is available only when the Suggest variable and parameter names checkbox is selected.

Parameter Info

Show the parameter info popup in

Select this checkbox to have GoLand automatically show a popup with all available method signatures when an opening bracket is typed in the editor, or a method is selected from the suggestions list.

In the text field to the right, specify the delay (in milliseconds) after when the popup window should appear.

If this checkbox is not selected, use Ctrl+P to show parameter info.

Show full method signatures

If this checkbox is selected, the parameter info displays full signatures, including method name and returned type.

SQL

Use aliases in completion for JOIN

Creates aliases for tables in the JOIN statement.

Use aliases in completion for JOIN

Invert order of operands in auto-generated ON clause

Switches operands in the ON clause. When the checkbox is cleared, the FROM table comes the first in the JOIN condition.

Invert order of operands in auto-generated ON clause

Suggest non-strict foreign keys based on the name matching

Generates you a list of possible code completion suggestions for JOIN statements. The code completion list includes suggestions of the columns from other tables that have the same names as columns from the table in the JOIN statement.

Read more about debugging rules for this option in Debug rules for virtual foreign keys.

Checkbox selected

Checkbox cleared

Suggest Non Strict Foreign Keys Based On The Name Matching is On
Suggest Non Strict Foreign Keys Based On The Name Matching is Off

Automatically add aliases when completing table names

Creates an alias for a table name.

Automatically add aliases when completing table names

Suggest alias names in completion after table names

Suggests an alias for a table name when you use code completion (Ctrl+Space).

Suggest alias names in completion after table names

Custom aliases (table)

You can add a table name and the alias that you want to use for this table. To add the table-alias pair, click the Add alias button (the Add alias button).

The Custom aliases table

Dart

Insert default argument values in completions

By default, when you select and apply a completion suggestion, GoLand inserts default argument values so you only need to fill in the field in the inserted template.

Clear the checkbox to suppress such behavior and fill in the arguments yourself.

Last modified: 12 December 2022