VIM

VIM Description

Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems.

Vim is often called a "programmer's editor," and so useful for programming that many consider it an entire IDE. It's not just for programmers, though. Vim is perfect for all kinds of text editing, from composing email to editing configuration files.

Features:
Characters and Languages:
Vim supports for right-to-left editing (eg with Arabian, Farsi, Hebrew),
and multi-byte texts, ie languages with graphical characters represented
by more than one "byte", such as Chinese, Japanese, Korean (Hangul),
(Technically speaking, Vim supports text in UTF-8 and Unicode.)

Memory Limits:
Vim has much higher memory limits for line length
and buffer sizes than vanilla Vi.

Multiple Buffers and Split Screen:
Vim allows editing of multiple buffers and you can split the
screen into many subwindows (both horizontally and vertically),
so you can see many files or many parts of some files.

Number Prefix to commands:
Vim allows a number prefix for more
commands than with Vi (eg for "put").

Runtime Files (Helpfiles and Syntax Files):
[Additional files which are used when the program runs -
but these not contain code which has to be compiled and linked.]
Vim-5.7 comes with 70 help files (about 2080K of text) on
commands, options, with tips on configuration and editing.
(Vim-6.0x [010311]: 85 files, ca 2796K of text). Some files are
specific to the use of Vim on each operating system. [010311]

Scripting:
Vim has a built-in scripting language for easy extension.

Search Offset:
Vim allows offsets for search commands, so you
place the cursor *after* the found text.

Session Recovery:
Vim allows to store information of an editing session into a file ("viminfo")
which allows them for being used with the next editing session, eg
buffer list, file marks, registers, command and search history.

Tab expansion:
Vim can expand tabs within the text with spaces (expandtab, :retab).

Tag system:
Vim offers to find text in files by using an index with "tags"
together with many tag stack commands.

Text Objects:
Vim knows more text objects (paragraphs, sentences, words and WORDS -
all with and without surrounding whitespace) and allows to configure
the definition for these objects.

Syntax Coloring:
Vim shows text in color - according to its "(programming) language".
You can define the "language" ("syntax") of the files yourself.

Special code:
Vim has optional integration with Perl, Tcl and Python.
Vim can act as an OLE automation server under Windows.
Vim can also be installed with code for X-windows,
adding configurable menus and support for the mouse.
And more. Lots more!