====== Code Completion ======
{{ :options:code-completion:code-completion_png.png?300&link|Options->Code Completion}}
===== Display =====
* **[[view:scope|Current scope]]** - keep current braces, current scope tags and [[view:scope|current outlining area]] always highlighted
* **[[view:smart_highlight|Smart Highlight]]** - highlight occurrences of the current word in surrounding text on Ctrl + left mouse click
* **Auto Smart Highlight** - [[view:smart_highlight|Smart Highlight]] called automatically as far as you stay on some word, without need in explicit function as Ctrl + left click or shortcut. Be aware, this feature works only for "source code" (all syntaxes inherited from //Default Source//). It will not work in comments sections, in plain text files, or XML/HTML (while this syntaxes not inherited from //Default Source//).
* **[[view:matching|Matching Braces]]** - highlights matching brace pair ( {,[,( ) when cursor moved to one of braces.For color settings, check //Matching Braces// color
* **Matching Scope** - temporary highlights scope between braces, when one of braces closed. For color settings, check //[[options:syntax:font_and_colors|Matching Braces color]]//
===== Code Hints =====
* **Enable [[editing:auto_completion:hints|Code Hints]]** - enables displaying of [[editing:auto_completion:hints|Code Hints]] when you type.
* **Suggest Completion when saving N char** - Code Hint will be only then shown if it saves typing of N chars. For example, it will not be shown for word //HippoEDIT// if you have already typed //HippoE// and you N defined as 4 -> only 3 chars left and can be saved by code hint.
* **Suggest completions only after typed** - Code Hint will be shown only after you have already typed N chars. So for //HippoEDIT//, Code Hint will be shown after you have already typed //Hi// if you N equal 2.
* **Auto Hide tooltips after N msec** - Code Hint ToolTip will be hidden after N milliseconds if you have not consumed it (agree on it).
===== Quick Info =====
* **Enable [[editing:auto_completion:quick-info|Quick Info]]** - enables [[editing:auto_completion:quick-info|Quick Info]] functionality
* **Show tooltip on hovering after** - if checked, editor will show [[editing:auto_completion:quick-info|Quick Info]] ToolTip automatically when hovering over words ([[options:xml:hover-delay|with predefined delay]]).
===== Auto Code Templates =====
To simplify usage of the templates for standard language construction, HippoEDIT can automatically create code templates from style definitions and scope tags (when this makes sense).
Auto Templates are shown in the list of the templates for syntax, but not saved until changed. As far the user has changed description or text for the auto template, it would be converted into user template and saved.
User template has priority over auto templates, and so, the auto template would not be created, if user template with the same key already exists.
==== From Style definitions ====
//From [[syntax:styles|Style definitions]]// flag tells editor to automatically generate code templates for syntax, from style definitions of this syntax.
For example for following style definition in xml_spec.xml:
will be generated this code template for XML:
^Key | |
^Code | |
==== From Scope definitions ====
//From [[syntax:scopes|Scope definitions]]// - similar as for style definitions, this flag control if editor will generate auto code templates from scope definitions of syntax.
For example for such scope definition from file c++_ms_spec.xml:
...
editor generates following code template:
^Key | BEGIN_COM_MAP |
^Description | BEGIN_COM_MAP $ END_COM_MAP |
^Code | BEGIN_COM_MAP %SelectedText% % %%|%% % END_COM_MAP|