Editing
Language SupportSyntax Coloring and IndentationThe Komodo editor is language-sensitive. When you open a file in a supported language, Komodo will color the syntax, format indentation, and provide indentation guides. ![]() More Information:
Background Syntax CheckingAs you write code in the editor, Komodo periodically checks for syntax errors. Syntax errors are underlined with a red wavy line; syntax warnings are underlined with a green wavy line. Note that Komodo uses the language interpreter's own error-checking functions. There may be slight differences in the way that syntax errors are detected and displayed, depending on the version of the interpreter. At the bottom of the Komodo workspace, the syntax checking icon displays the syntax status of the current file displayed in the Editor Pane: A blue check-mark over the syntax checking icon ( A red x over the syntax checking icon ( To move the editing cursor to the line containing the error or warning, double-click the syntax checking icon. If there are multiple errors or warnings, each time you double-click the icon, the editing cursor will move to the next error. You can view the error message from the interpreter by using one of the following methods:
Komodo supports background syntax checking for the following languages:
More Information:
AutoCompleteAutoComplete presents a pop-up list of choices when it encounters functions, methods and properties for which there is a pre-defined set of options. AutoComplete functionality varies according to the language; for example, Python AutoComplete lists methods and properties, while XML AutoComplete lists element and attribute names and values. As you type additional characters, the items in the pop-up list will be reduced to those that match the characters you have entered. ![]() Use the arrow keys to scroll the list; use the Tab key to insert an item from the pop-up list into your document; use the Esc key to close the pop-up list. AutoComplete functionality is described below for each supported language. More Information:
PHP AutoCompleteAutoComplete for PHP is available for the following language elements:
To use an item from the AutoComplete pop-up list, scroll the list to select the item, then press Tab to insert. PHP AutoComplete and CallTips use the built-in function definitions contained in the file phpfunctips-<version>.txt (located under <komodo_installdir>/PHP/). Specify the PHP <version> in Configuring PHP preferences. Manually alter the phpfunctips-<version>.txt file to customize or extend PHP AutoComplete and CallTips in Komodo. Review the existing phpfunctips-<version>.txt file for examples before editing.
Python AutoCompleteAutoComplete for Python requires a Code Intelligence database to accurately list all methods and properties in a pop-up list. The Code Intelligence database contains data scanned from your Python installation and custom directories (if applicable). The database is built using a combination of two wizards. See Building the Code Intelligence Database for more information. Note that Perl, PHP, Tcl, XML, and XSLT do not require the Code Intelligence database to view AutoComplete pop-up lists.
Perl AutoCompleteAutoComplete for Perl lists methods for modules and variables that have been used elsewhere in the same program. Tcl AutoCompleteAutoComplete for Tcl lists all valid methods for a command. To use AutoComplete in Tcl files:
Tcl AutoComplete and CallTips use the built-in function definitions contained in Tcl .tip files (located under <komodo_installdir>/tcl/*.tip). Edit the .tip files to customize or extend Tcl AutoComplete and CallTips in Komodo. Review the existing .tip files for examples before editing.
XML AutoCompleteAutoComplete for XML lists all valid elements for the file, attributes for each element, and suggested attribute values. To use AutoComplete in XML files:
Autocomplete also helps with closing XML tags:
XSLT AutoCompleteAutoComplete for XSLT lists all valid elements for the xsl namespace, attributes for the element, and suggested attribute values. To use AutoComplete in XSLT files:
CallTipsCallTips present you with a reference list of the parameters or arguments for a given function or method. To use CallTips:
![]() To clear the CallTip, press the Esc key. CallTips are available for the following languages:
More Information:
Viewing the Current File as Another LanguageKomodo's syntax coloring, background syntax checking, and indentation are language-specific. However, Komodo provides the option to view a file as another language. This is useful when you open, for example, a Perl file that has no extension. You can select the Perl language option, then edit the file as a regular Perl file. Komodo's File Associations do not allow you to set a language association with a file that doesn't have an extension. To view the current file as another language:
If you have opened a file that does not have a file association specified in the Preferences dialog box, Komodo displays the file as text. You can select to view the file as another language, but Komodo does not remember again. If you will be working with a new type of file, it is recommended that you specify a file association. For example, if you open a DocBook (*.docb) file in Komodo, it does not have XML syntax coloring. Specify a file association to tell Komodo to open *.docb files as XML files. For more information on specifying file associations, see Customizing File Associations. If you choose to view a file in a different language and then save the file, the original language will not be restored when you re-open the file. If you are unsure of the original language, you can select View|View As Language|Reset to best guess. Komodo will ignore the user preference, and analyze the file in an attempt to determine its language.
Commenting Blocks of CodeThe commenting function is used to convert a single line or a group of lines into a comment, with the syntax appropriate for the file's language. Komodo supports commenting for the following languages: More Information:
Manipulating CodeAutomatically Repeating KeystrokesTo have Komodo repeat a key sequence a specified number of times:
Indenting and Un-indenting Lines of CodeTo indent a single line or a selected block of code:
To un-indent a single line or a selected block of code:
Specify the number of spaces per tab in the Indentation Editor Preferences (Edit|Preferences|Editor|Indentation).
Reflowing ParagraphsTo reformat a section of code so that it is left-aligned and displays within the Edge line column, select the section of code to be reflowed, and then select Code|Reflow Paragraph. Alternatively, use the associated key binding.
Joining LinesTo cause two lines of code to display on the same line, position the cursor in the first of the two lines, and select Code|Join Lines. The second line is joined with the first line.
Converting between Uppercase and LowercaseTo convert a selection of text from uppercase to lowercase (or vice-versa),
from the Code menu, select Make Uppercase
or Make Lowercase
Transposing CharactersTo reverse the position of the two characters to the left of the editing cursor, use the associated key binding.
Literal CharactersTo insert literal characters into the editor, select Code|Enter Next Character as Raw Literal, and then enter the key or key combination representing the literal character. (Alternatively, use the associated key binding.) For example, to insert a form feed, enter 'Ctrl'+'L'. The following characters are common:
Commenting and Un-commenting Lines or Blocks of CodeTo comment a single line of code, place the cursor on the desired line, then, from the Code menu, select Comment Region. Alternatively, use the associated key binding. To un-comment a line of code, place the cursor is on the desired line, then, from the Code menu, select Uncomment Region. Alternatively, use the associated key binding. To comment a block of code, select the lines you wish to comment by clicking and dragging the mouse in the Editor Pane. Then, from the Code menu, select Comment Region. Alternatively, use the associated key binding. To un-comment a line of code, place your cursor is on the desired line, then, from the Code menu, select Uncomment Region, or use the associated key binding.
Cleaning Line EndingsIf a file contains line endings for more than one platform, you can replace the unwanted line endings with the line endings specified in file's Properties and Settings dialog box.
Tabifying and Untabifying Regions"Tabifying" a region converts leading spaces to tabs. If you select a line of code that has some leading spaces and you choose to tabify the region, you convert all the leading spaces into Tab characters. The Tabify region dialog box sets the ratio of space characters to Tab characters. If you select 8, then each 8 space characters will be represented as 1 Tab character.
To tabify a region:
To untabify a region:
To illustrate tabifying, follow this procedure:
Now look at another line with 8 leading spaces.
You can set the width of Tab characters in the Preferences dialog box. The default value is 8.
Selecting ColumnsSelect columns of text in Komodo by pressing the 'Alt' key and then dragging with the mouse. This feature is particularly useful when you want to easily move code and data that is arranged in columns. Once the column of text has been selected, use the keyboard or the Edit menu to delete it or move it to another location.
Completing WordsThe Komodo editor maintains an index of words in the current file. Rather than re-entering words that already exist in the current file, use the Complete Word feature to finish words. Enter one or more characters, then select Code|Complete Word, or use the associated key binding. Words are completed based on the most recent occurrence in the current file. For example, if you type "pr", Komodo searches backward from the insertion point to find the first instance of a word that begins with "pr". Continue pressing the spacebar while holding down the 'Ctrl' key to cycle through all possible completions for the word. The Complete Word feature is case sensitive.
Selecting Blocks of CodeQuickly select blocks of code using Komodo's Select Block function (Code|Select Block, or use the associated key binding). This function uses the Code Folding logic. When the Select Block function is invoked, Komodo analyzes the cursor position relevant to the blocks of code in the document. If the cursor is within a block, the entire block will be selected. (If the cursor is within a nested block, only the current sub-block will be selected, not the block that contains the entire nested structure.) If the cursor is not inside a block, the entire document will be selected.
Editor Display CharacteristicsToggling Whitespace On and OffWhitespace is any space in a file not taken up by text. Line breaks, spaces, and tabs are considered whitespace. To toggle whitespace on and off, select View|View Whitespace, or use the associated key binding. To set a default for whitespace display, see Customizing Editor Features for more information.
Toggling Indentation Guides On and OffIndentation guides display vertical lines in the Editor Pane that indicate the number of whitespace indents. The width of indentation guides is determined by the value in the Indentation Width preference. See Customizing Indentation for more information. To toggle indentation guides on and off, select View|View Indentation Guides, or use the associated key binding. Toggling Line Numbers On and OffLine numbers can help orient you when working in a long file. To toggle line numbers on and off, select View|View Line Numbers, or use the associated key binding. To set this option globally, see Customizing General Editor Features for more information.
Toggling EOL (end of line) Markers On and OffEnd-of-line markers indicate where and how a line ends, such as by a hard return or another key. If you use Enter to end a line, the EOL marker could be CR or CR+LF. To toggle EOL markers on and off, select View|View EOL markers, or use the associated key binding. To set this option globally, see Customizing General Editor Features for more information.
Increasing and Decreasing the Code Font SizeTo increase the font size in the Editor Pane, select View|Font, and then Increase or Decrease. Alternatively, use the associated key binding. Repeat until the font size is appropriate. The size specification applies to all files open in the Editor Pane. When you save a file, the new font size is saved.
Toggling Fixed and Non-Fixed Width FontsIn Komodo, you can use fixed width or non-fixed width fonts for editing. You can also toggle between these settings. The default font is non-fixed width. Note that this setting does not persist. If you toggle to a different setting, the next time you open the file it will restore the width specified on the Fonts tab of the Fonts and Colors page in Komodo Preferences. To toggle between fixed and non-fixed width font:
Folding and Unfolding CodeCode folding symbols appear in the left margin of the Editor Pane immediately left of the line of code that is or can be folded. Minus signs indicate the beginning of a block of code that can be collapsed or folded. Plus signs indicate the beginning of a block of code that can be expanded or unfolded. This line of code is also underlined. Either specific code blocks or all code blocks can be folded. To collapse or fold a single block of code:
To collapse or fold all foldable blocks of code:
To expand or unfold a single block of code:
To expand or unfold all foldable blocks of code:
Navigating Within FilesMoving to a Specific LineWhile editing, you can move to a specific line number as follows:
Setting and Moving to Bookmarks and MarksBookmarks are points of interest in a file. Komodo displays blue triangles on the left margin beside bookmarked lines. Marks, which are derived from the Emacs editor, are similar to bookmarks. The key difference is that marks have no graphical representation in Komodo. Marks make it possible to create an invisible reminder of previously visited locations in a file.
Matching BracesUse the Matching Brace functions to quickly jump between opening and closing braces and parentheses. Notice that when the editing cursor is adjacent to a brace or parenthesis, the brace is displayed in bold red. The associated closing or opening brace is also displayed in bold red. To jump to the matching brace, select Code|Jump to Matching Brace, or use the associated key binding. To select the braces and the contents they contain, select Code|Select to Matching Brace.
Detecting Changed FilesKomodo can be configured to monitor the status of files that are opened in the editor. If the file is changed on disk, you will be prompted to reload the latest version under the following circumstances:
Use Komodo's Preferences to enable or disable this function.
Preview in BrowserYou can configure Komodo to preview a variety of file types in your default browser, or in the Editor Pane. The Preview in Browser feature is particularly useful when working with HTML or XML files. The browser preview will be displayed in a separate window, in the Editor Pane, or in a split view of the Editor Pane, depending on which preference has been set. The context menu in the Editor Pane is only available when the "source" tab is in focus. If Komodo does not support previewing of a specific file type, the Preview in Browser option will not be available from either the toolbar or the View menu. To preview a file with the Preview in Browser feature:
Editor Tab DisplayUse the following commands on the Window menu to manage the way previews and tab groups are displayed in the Editor Pane:
If displayed in the Editor Pane, previews include a toolbar with basic Web browser functionality, including (from left to right) "Back", "Forward" "Reload", and "Stop" buttons.
|