Code Input Helper

Code Input Helper

Code Input Helper provides a way to fast inputting code. When user inputs characters in Code Editor, the List Window will popup automatically and the matched symbols will be listed in it. Now the tool only supports Delphi. About C++Builder, it can only popup IDE's code insight instead.

List Window and its context menu show as below:

Now, if you input character continue, the mismatched item will be discarded. You can use Up, Down, PageUp, PageDown, Shift+Home, Shift+End and Left Button to select current item. Left and Right key can select the matched position of identifier. BackSpace and Delete key can update the list also. When press Enter, Space, Tab, Double-Click or one of the special characters in settings, the content of selected item will send to the editor. Esc, Ctrl and other function keys can close the list.

Code Input Helper can also input following special contents except normal identifiers:

- When input in the uses section, all unit names available will be listed.

- Compiler directives. When input '{$', all compiler directives will be listed.

- Comments in XML Style. When input '///', all comment templates in XML Style will be listed.

- Comments in JavaDoc Style. When input '{*', all comment templates in JavaDoc Style will be listed.

- Code Templates defined in IDE. Such as trycf, forb and etc.

- User-defined identifiers, compiler directives, comment templates, code templates and etc.

- Macros are supported in code template.

Tip: If you feel Code Input Helper is better then IDE's Code Completion, you can disable IDE's Code Completion, then Input Helper will be used when input dot. This is useful in Delphi 5 specially.

Context Menu

- Auto Popup: Enable or disable the auto popup feature when input code.

- Display Speed Buttons: Display speed buttons on the right of List Window or not.

- Sort Style: Automatic style uses scope value of items to sort. By Text, Length and Kind styles sort items by their contents.

- Explain of Images: Display the meaning of images, and may used to select which kinds of items can appear in list.

- Add a User-defined Symbol: Add current symbol to user-defined symbol list.

- Settings: Show the settings dialog.

The speed buttons on the right are: Add a User-defined Symbol, Settings and Tool's Help.

Settings

You can open the settings dialog from its context menu or the main settings dialog of CnWizards. The dialog shows as below:

- Auto-Settings

- Auto Popup Input Helper: Enable or disable the auto popup feature when input code.

- Popup after How Many characters Input: Auto popup after only input given number characters continuously. The valid characters include all letter, number, underline and the inner BackSpace and Delete of identifier.

- Delay before Popup: Delay before popup, if a new key pressed, then restart delay.

- Intelligent Popup: If switch it on, then don't popup list when current identifier is just the same of one of the list.

- Replace Code Insight when Later is Disabled: If you want to replace IDE's Code Completion, switch it on and disable IDE's Code Completion.

- Auto Popup after Key Sequences: If you enter one of specified key sequences here in code editor, input helper will popup. A key sequence is a double-quoted string. Key sequences are separated by comma.

- Shortcut to Toggle Auto-Popup: Define the shortcut to toggle Auto-Popup feature.

- Shortcut to Popup List Manually: Define the shortcut to popup list in valid position manually.

- Disable Input Helper when IME Opened: Switch whether disables Input Helper when IME opened.

- Output Settings

- Input Current Item when Press: When the list showing, if press one of these characters, then send the content of current item to editor.

- DO NOT popup after these characters: If you want't to display list window after pressing some characters, you can add them to these list(Use comma to seperate).

- Symbol Output Style: When the cursor is in the middle of current identifier, the output is affected by this setting. Automatic style will replace the left side or whole identifier by match degree.

- Allow Inputting Current Item by Pressing Space: When the list showing, whether send content of current item to editor by pressing Space key.

- Ignore Space Char after Inputting Current Item.: Whether Ignore the Space Char itself after sending content of current item to editor by pressing Space key. If not, there will be a space char after entered current item in Editor.

- Select and Input Middle-Matched Symbol Only when Pressing Enter: If current item is Middle-Matched for the input identifier, whether send it to editor only by pressing Enter.

- Auto Line Feed after Keyword when Pressing Enter: When press Enter after inputting full keyword, whether auto inserts a new line.

- Auto Insert Brackets for Function Having Parameters: If current item is a function or procedure having parameters, whether auto insert brackets and call parameter hint.

- List Settings

- List sorted by: Automatic style uses scope value of items to sort. By Text, Length and Kind styles sort items by their contents.

- List Font: Set the font name and size used in symbol list.

- Min Length of Symbol: Symbols can displayed in list only when their length is great than or equal to this number.

- Reserved Words: Set the capitalization style for reserved words.

- Display Middle-Matched Symbols: Whether keep the symbols which Middle-Matched to current symbol. If enable, the matched part will be highlighted, else only First-Matched symbols will be kept.

- Remove Duplicate Symbols: Whether remove other duplicate symbols and keep one only. It will lose a little performance.

- Adjust Priority Automatically according to the Frequency: If enable, the symbols which user input frequency will displayed in the top of list.

- Use the Compatible Way to Obtain Symbols: If Input Helper causes IDE or compiler unstable in some versions, you may try to enable this switch. It will be a little slower.

- Prefetch Symbols List When Opening Project：This option allows Input Helper to prefetch symbols list in background thread when opening project to make Input Helper popup faster in the first usage.

- Content Settings

- Symbol Provider List: Select the symbol providers which you want to used.
- Symbol Types: Select the symbol types which you want to used.

- Symbol List: Display all User-defined symbols.

- List: Select current list to modify.
- Add: Add a new symbol, may be normal identifier, compiler directive, comment, template, etc.
- Duplicate: Copy current item to a new item.
- Delete: Delete current item.
- Default: Restore current list's context to default.
- Edit: Modify current item.
- Import: Import symbols from data file. Can select replace or append mode.
- Export: Export all symbols to data file.

- Code Template: Edit current code template, only used in "Comment" and "Template" type.

- Insert Macro: Insert a pre-defined macro in current position. When click this button, a macro list menu will displayed.
- User Macro: Insert a user-defined macro in current position. When a template include User-defined macro execute, user may input the value in macro dialog.
- Cursor: Insert a cursor flag in current position, namely "|". If more than one flag exist, only the first one is valid.
- Clear: Clear the template.

- OK: Save current settings and close the dialog.

- Cancel: Cancel the dialog.

- Help: Show this help.

Customize Symbol

When add or edit symbol, the dialog shows as below:

- Name: The name of the symbol, is a string used to input symbol, may be normal identifier, //xxx or {$xx or other symbol which means it is a comment or compiler directive.

- Type: The kind of the symbol.

- Description: The description of the symbol, displayed in list.

- Scope: The scope of the symbol. Small scope mean the symbol will more keep to the top of list.

- Auto Indent when Multi-Line: If a template is Multi-Line and this switch is on, then every line will indent automatically when output.

- Always Popup Even Inputting Text is Full Match: Whether ignore "Intelligent Popup" switch for this symbol.

- For Pascal: If checked, this symbol can be used in Pascal source code.

- For C/C++: If checked, this symbol can be used in C/C++ source code.

Links

Form Designer Enhancements

IDE Main Form Enhancements

CPU Window Enhancements

Object Inspector Enhancements

Caption Button Enhancements

About CnWizards

Copyrights 2001-2016 CnPack Team