Anjuta

There are two editors currently available in Anjuta; the Scintilla-based (classic) editor and the new GtkSourceView-based editor. Except for some minor differences, both are equally functional and can be used interchangeably. Depending on your taste in editing, you can choose either one. Editor features include:

Syntax highlighting: The editor supports syntax highlighting for almost all common programing languages. Syntax highlighting for new languages can be easily added by adding a properties file, a lexer parser (for the Scintilla editor) or lang files (for the GtkSourceView editor).
Smart Indentation: Code is automatically indented as you type based on the language and your indentation settings. (Smart indentation is currently only available for C and C++; for other languages, Anjuta performs only basic indentation.)
Autoindentation: The editor can indent the current line or a selection of lines according to your indentation settings.
Automatic code formatting (only C and C++): The editor can reformat source code using the indent program. The full range of indent options is available.
Code folding/hiding: You can fold code blocks and functions to hide them hierarchically, and can unfold them to unhide them.
Line numbers/markers display: The editor has left margins which display line numbers, markers and fold points.
Text zooming: You can zoom (change the editor font size) using either the scroll wheel or menu commands.
Code autocompletion: The editor can autocomplete known symbols, and provides type-ahead suggestions to choose for completion.
Calltips for function prototypes: When you are typing a function call, the editor provides a helpful tip showing the parameters from the function's prototype.
Indentation guides: The editor has guides to make it easier to see indentation levels.
Bookmarks: You can set or unset bookmarks for convieniently navigating to frequent destinations in your source code.
Multiple split views: The editor provides multiple views for the same file (split inside the same editor). This allows you to enter text in a file while referring to the same file at another location, or to copy/paste within the same file at different locations without having to scroll back and forth.
Incremental Search: The editor can search instantly as you type a search string in the search box. This is useful when you want to avoid typing a full search string when the first few characters are enough to reach the desired location.
Powerful search and replace: The editor supports searching for strings and regular expressions, searching in files or searching all files in your project.
Jump to line number: You can instantly jump to any line number in a source file.
Build message highlighting: Error/warning/information messages are indicated in the editor with helpful (and appropriately colored) underlines. This lets you navigate through a source file correcting all build errors without having to use the build output to jump to errors individually.
Tabs reordering: You can reorder editor tabs as you like.
Change notifications: Anjuta notifies you when a file is modified outside Anjuta while it is open in Anjuta.