These features greatly simplifies writing formula and provides instant help so time needed to write formula decreases significantly.
Menu
Formula Editor menu options are described in detail in Menus: Formula Editor chapter of the guide.
Toolbar
The Formula Editor toolbar provides the following buttons:
Usage
Typical use of Formula Editor is as follows:
Syntax highlighting
AmiBroker's AFL editor features user-definable syntax highlighting that automatically applies user-defined colors and styles to different language elements like functions and reserved variable names, strings, numbers, comments, etc. This feature greatly simplifies code writing. You can modify coloring scheme in Preferences window.
Enhanced error reporting
When you make an error in your formula, AmiBroker's enhanced error reporting will help you to locate and fix an error by highlighting the place where error occured and displaying extended error description with the examples of common mistakes and advice how to fix them. In version 5.80 description of errors are displayed in-line with the code.
A message bar displays total number of errors and/or warnings. If you press "Go to error" button the editor will move the caret to the relevant line with the error, if you press it again, it will move to the next error and so on. If you close the message bar with the "X" button all error messages will be cleared (hidden) from the view. You can use Edit->Clear Error Message menu (Ctrl+E) to clear individual error message (in the current line).
Context help
You can quickly display relevant AFL function reference page if you press F1 key or choose "Function reference" from the context menu while the caret is inside or right after function name as shown in the picture below:
Automatic statement completion
With your insertion point next to a function, type an open parenthesis as you normally would to enclose the parameter list.
AmiBroker displays the complete declaration for the function in a pop-up window just under the insertion point.
Typing the closing parenthesis dismisses the parameter list.
You can also dismiss the list if you press arrow up/down key, click with the mouse or press RETURN.
Editor configuration
The settings of the AFL editor can be changed using Tools->Preferences, Editor page:
Window control
AFL Editor Window as a separate frame can be brought on top or to the back as any other application window using Windows Task Bar. In addition to that there is a Window->Toggle Frame menu (and Ctrl+` shortcut, ` is the tilde key just above TAB key on most keyboards) that allows to quickly toggle between AmiBroker main frame and AFL editor frame.
The user may also turn on Window->Keep On Top feature that keeps editor window on top of AmiBroker main frame.
Margins
Line numbers margin, Selection margin and Fold margin can be switched on/off using View menu. In this menu there are also options to fold/unfold all code.
Code snippets
Code snippet is a small piece of AFL code. It can be inserted by:
For more information about Code snippets see Tutorial: Using Code-snippets
Bookmarks
A bookmark is a marker that allows to quickly jump to marked line within the
formula.
To set/remove the bookmark use Edit->Bookmark->Insert /Remove menu
or Ctrl+F2 key. When you set the bookmark a light blue marker
will be shown in the left-hand margin. Now with a couple of bookmarks set you
can quickly navigate (jump) betwen them using F2 key - goes
to next bookmark, Shift+F2 key - goes to previous bookmark.
You can clear all bookmarks using Edit->Bookmark->Clear All. Please
note that bookmarks are saved along with debug information (breakpoints/watches)
in the separate file with .dbg extension.
Find in Files
Find in Files functionality is available from Edit->Find in Files menu and allows you to search all files in selected folders for specified text. The search results are presented in the Output window (Window->Output menu) like this:
Filepath\Filename.afl(line_number): Line contents
Now if you double click on that output line AmiBroker would automatically open given file in the new editor tab.
Block comment/uncomment
The AFL editor now provides a tool to automatically comment out blocks of selected lines. The tool adds a // (double slash) comment to every line within selected area. To use this tool, select some lines using mouse or cursor + SHIFT key, then use Edit->Line Comment. All lines within selected range will be commented out with // (double slash). To uncommment, select the range again and choose Edit->Line Comment once again.
Clickable links in comments
The AFL Editor now supports clickable JavaDoc/Doxygen-style links in doc comments. To use links in comments you have to put @link command followed by path to file or URL inside JavaDoc/Doxygen style comment:
/**
@link readme.html
@link http://www.amibroker.com
*/
/// @link readme.html
/// @link c:\program files\amibroker\readme.html
/// @link http://www.amibroker.com
Now when you hover the mouse over @link command you will see the underline that indicates it is clickable. It reacts to double click (not single click). When you double click it linked document will be open.
@link command can open web pages, local files (both relative and absolute
paths are supported) with Windows-registered program to open given file type.
So if you use:
/// @link something.doc
then MS word would be used.
/// @link test.xls
would open test.xls in Excel.
Relative paths refer to AmiBroker working directory. Html files are open with default browser, txt files are usually open with Notepad (or whatever application you use). If file does not exist then you will get an error message.