Comparison Of Text Editors
   HOME

TheInfoList



OR:

This article provides basic comparisons for notable
text editor A text editor is a type of computer program that edits plain text. An example of such program is "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be used to c ...
s. More feature details for text editors are available from the '' Category of text editor features'' and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive. Feature comparisons are made between stable versions of software, not the upcoming versions or ''beta'' releases – and are exclusive of any add-ons, extensions or external programs (unless specified in footnotes).


Overview


Operating system support

This section lists the
operating system An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ...
s that different editors can run on. Some editors run on additional operating systems that are not listed.


Cross-platform


Natural language (localization)


Document interface


Notes

*Multiple instances: multiple instances of the program can be opened simultaneously for editing multiple files. Applies both for single document interface (SDI) and multiple document interface (MDI) programs. Also applies for program that has a user interface that looks like multiple instances of the same program (such as some versions of
Microsoft Word Microsoft Word is a word processor program, word processing program developed by Microsoft. It was first released on October 25, 1983, under the name Multi-Tool Word for Xenix systems. Subsequent versions were later written for several other platf ...
). *Single document window splitting: window can be split to simultaneously view different areas of a file. *MDI: Overlappable windows: each opened document gets its own fully movable window inside the editor environment. *MDI: Tabbed document interface: multiple documents can be viewed as tabs in a single window. *MDI: Window splitting: splitting application window to show multiple documents (non-overlapping windows).


Basic features


Programming features


Notes

* Syntax highlighting: Displays text in different colors and fonts according to the category of terms. * Function list: Lists all functions from current file in a window or sidebar and allows user to jump directly to the definition of that function for example by double-clicking on the function name in the list. More or less realtime (does not require creating a symbol database, see below). * Symbol database: Database of functions, variable and type definitions, macro definitions etc. in all the files belonging to the software being developed. The database can be created by the editor itself or by an external program such as ctags. The database can be used to instantly locate the definition even if it is in another file. * Bracket matching: Find matching parenthesis or bracket, taking into account nesting. * Auto indentation: May refer to just simple indenting to the same level as the line above, or intelligent indenting that is language specific, e.g., ensuring a given
indent style In computer programming, indentation style is a convention or style, governing the indentation of lines of source code. An indentation style generally specifies a consistent number of whitespace characters before each line of a block, so that ...
. * Compiler integration: Allows running compilers/linkers/debuggers from within editor, capturing the compiler output and stepping through errors, automatically moving cursor to corresponding location in the source file.


Extra features

Large file support: In general, most text editors do not support large text files. Some restrict themselves to available in-core RAM while others use sophisticated virtual memory management techniques and paging algorithms.''Comparison of Windows Text Editors for Large Files''
Text editors for large files
/ref> Search in files: Perform search (and possibly replace) in multiple files on disk, for example on a sub-directory and recursively all the directories below it. Similar to
grep grep is a command-line utility for searching plaintext datasets for lines that match a regular expression. Its name comes from the ed command g/re/p (global regular expression search and print), which has the same effect. grep was originally de ...
.


Key bindings

Support for custom key bindings.


Notes, bugs

* Vim: custom maps of Ctrl-1 .. Ctrl-9, Ctrl-0 cannot be set, nor is Control-Shift-<char> distinguished from Ctrl-<char>. * Notepad++: custom shortcuts of Shift-<char> cannot be set, they need an added modifier such as Ctrl or Alt. i.e. SCI_LINESCROLLUP cannot be bound to "Shift-I"as the "Add"button is greyed out. * Emacs and Pico: pico uses most of Emacs's motion and deletion commands: ^F ^B ^P ^N ^D etc.


Protocol support

Support for editing files over a network or the Internet.


Unicode and other character encodings

To support specified character encoding, the editor must be able to load, save, view and edit text in the specific encoding and not destroy any characters. For UTF-8 and UTF-16, this requires internal 16-bit character support. Partial support is indicated if: 1) the editor can only ''convert'' the character encoding to internal (8-bit) format for editing. 2) If some encodings are supported only in ''some platforms''. 3) If the editor can only ''display'' specific character set (such as OEM) by loading corresponding font, but does not support keyboard entry for that character set.


Right-to-left and bidirectional text

Support for
Right-To-Left A writing system comprises a set of symbols, called a ''script'', as well as the rules by which the script represents a particular language. The earliest writing appeared during the late 4th millennium BC. Throughout history, each independen ...
(RTL) texts is necessary for editing some languages like
Arabic Arabic (, , or , ) is a Central Semitic languages, Central Semitic language of the Afroasiatic languages, Afroasiatic language family spoken primarily in the Arab world. The International Organization for Standardization (ISO) assigns lang ...
, Persian,
Hebrew Hebrew (; ''ʿÎbrit'') is a Northwest Semitic languages, Northwest Semitic language within the Afroasiatic languages, Afroasiatic language family. A regional dialect of the Canaanite languages, it was natively spoken by the Israelites and ...
, and
Yiddish Yiddish, historically Judeo-German, is a West Germanic language historically spoken by Ashkenazi Jews. It originated in 9th-century Central Europe, and provided the nascent Ashkenazi community with a vernacular based on High German fused with ...
and the mixture of left to right (LTR) and RTL known as bi-directional ( BiDi) support. Depending on the algorithm used in the programs it might only render the bidirectional text correctly but may not be able to edit them. (e.g. Notepad++ 5.1.3 shows bidirectional texts correctly but cannot edit it and user should change the text direction to RTL to be able to edit RTL texts correctly.)


Newline support


See also

* Editor war *Comparison of **
word processors A word processor (WP) is a device or computer program that provides for input, editing, formatting, and output of text, often with some additional features. Early word processors were stand-alone devices dedicated to the function, but current word ...
** integrated development environments ** HTML editors ** TeX editors **
hex editors Hex usually refers to: * A curse or supposed real and potentially supernaturally realized malicious wish * Hexadecimal, a base-16 number system often used in computer nomenclature Hex, HEX, or The Hex may also refer to: Magic * Hex sign, a b ...
**
notetaking software The tables below compare features of notable note-taking software. General information Basic features Advanced formatting and content See also * Comparison of text editors * Comparison of web annotation systems * Comparison of wik ...
**
wiki software Wiki software (also known as a wiki engine or a wiki application) is collaborative software that runs a wiki, which allows the users to create and collaboratively edit pages or entries via a web browser. A wiki system is usually a web application ...
*Lists of ** text editors **
wiki software Wiki software (also known as a wiki engine or a wiki application) is collaborative software that runs a wiki, which allows the users to create and collaboratively edit pages or entries via a web browser. A wiki system is usually a web application ...
** personal information managers **outliners for *** desktops *** mobile devices *** web-based


Notes


References

{{Reflist Text editors Software comparisons