The Freya Integrated Development Environment

The Code Editor

See also

Sharp Blade provides a powerful and flexible code editor for editing and compiling Freya source files.

Main features

The code editor control, originally named Anvil, was developed by Intuitive Sight for Freya and the XSight ray tracer.

The editor uses different colors for displaying keywords, string literals and comments. These colors can be tuned using the Environment Options dialog box.

Every time you press the Enter key to create a new line, the editor examines local context and indents the new line accordingly. Format is also applied when you finish typing some keywords, such as begin, end or else.

When the insertion point is located immediatly before a left parenthesis or bracket, the editor locates the corresponding right parenthesis or bracket and, if the search succeeds, highlights both characters. It also happens when the insertion point is located at the right of a closing parenthesis or bracket.

If you type Ctrl+( when the insertion point is on an opening parenthesis or bracket, the insertion point moves to the closing parenthesis or bracket. If you type Ctrl+Shift+( instead, the insertion point moves and, at the same time, all text between those brackets or parenthesis is selected.

The editor keeps track of every changes on a document in an editing session. You can always revert how many operations you like, starting from the last one. As you undo editing commands, they are moved to a redo list, so you can repeat them if necessary. Commands in the undo last are automatically merged whenever possible. For instance, if you type four consecutive characters, the undo list merges them in a single insertion operation, instead of storing four different operations. You can turn this behavior off, if you don't like it.

The editor also keeps track of the insertion point movements and creates a history with up to 32 locations. You can move the insertion point back to any of these locations.

You can define code snippets. These snippet are simple literal macros, stored as text files in the code folder inside the Sharp Blade's installation folder.

The code editor's upper border contains two related combo boxes. The leftmost combo contains a list with all types defined in the active document, and the rightmost combo contains a list with all members declared inside the active type definition. You can use the combined actions of these two list to navigate to a given type or member.

You can also type Ctrl+Alt+Up and Ctrl+Alt+Down to move from a member declaration to the corresponding member implementation, if available, and viceversa.

You can add bookmarks to each source file by using the Ctrl+B shorcut, or executing the Toogle bookmark command from the code editor's context menu. The bookmark is displayed as a small icon on the left margin:

Then, you can use the Alt+Up and Alt+Down shortcuts to navigate to the previous or next bookmark, or execute the Next bookmark or Previous bookmark commands from the editor's context menu.

See also

The Integrated Development Environment
Project management
Keyboard shortcuts
Find dialog
Replace dialog
Go To Line dialog
The Code Snippets manager
Environment options
The Freya Programming Language