Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Comparison of text editors
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Basic features== {{sticky header}}{{sort under}} {| class="wikitable sticky-header sortable" style="max-width: 30em; table-layout: fixed" |+ Text editor support for basic editing features |-valign=bottom ! ! [[spell checker|Spell checking]] ! [[regular expression|Regex]]-based find & replace ! [[character encoding|Encoding]] conversion ! [[Newline]] conversion ! Multiple undo/redo ! [[column selection|Rectangular block selection]] ! Virtual space support |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{ya}}<br />external{{efn|name=acmeext|Acme can invoke external commands and display their return values in order to integrate additional functionality.}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | AkelPad | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- | {{rh}} | [[Atom (text editor)|Atom]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{na}} | {{Partial}}<br />{{efn|name=ConTEXT_regex|''ConTEXT'' does not support regular expression backreferences in its search and replace function. [http://www.context.cx/] {{Webarchive|url=https://archive.today/20071218233757/http://www.context.cx/ |date=2007-12-18 }} }} | {{Partial}}<br />{{efn|name=ConTEXT_Character_Encoding|''ConTEXT'' only supports converting text to [[UTF-16]]. Also, it can only use one type of new-line format if converting to UTF-16.}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}}<br />Instant/live (like Firefox) | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | CudaText | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[Editra]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}}<br />Plug{{nbh}}in{{efn|''Geany'' supports spell checking [https://plugins.geany.org/spellcheck.html via a plug{{nbh}}in]}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<ref>{{cite web | url=https://www.geany.org/manual/current/index.html#virtual-spaces | title=Geany }}</ref> |- ! nowrap {{rh}} | [[gedit]] | {{ya}}<br />{{efn|name=geditSpellChecking|''gedit'' supports spell checking via a plug{{nbh}}in, which is distributed with gedit.}} | {{ya}}<br />Plug{{nbh}}in{{efn|''gedit'' supports Regex-based find & replace via plug{{nbh}}ins ([http://live.gnome.org/Gedit/Plugins] {{Webarchive|url=https://web.archive.org/web/20111214053935/http://live.gnome.org/Gedit/Plugins |date=2011-12-14 }}).}} | {{ya}} | {{ya}} | {{ya}} | {{yes2|plug{{nbh}}in}}<br /><ref>{{cite web|url=https://live.gnome.org/Gedit/Plugins/ColumnMode|title=Gedit/Plugins/ColumnMode - GNOME Wiki!|url-status=dead|archive-url=https://web.archive.org/web/20120111004835/http://live.gnome.org/Gedit/Plugins/ColumnMode|archive-date=2012-01-11}}</ref> | {{dunno}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}}<br />Plug{{nbh}}in{{efn|name=emacs_spell|Emacs supports spell checking via the external programs [[ispell]], [[aspell]], or [[Hunspell]].}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<ref>{{cite web |title=Virtual space for rectangular selections (at least) |website=[[Stack Exchange]] |url=https://emacs.stackexchange.com/questions/27051/virtual-space-for-rectangular-selections-at-least |access-date=13 March 2023}}</ref> |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}}<br />Plug{{nbh}}in{{efn|name=jeditSpellChecking|''jEdit'' supports spell checking via an external plug{{nbh}}in.}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<ref>{{cite web | url=http://www.jedit.org/users-guide/selection.html | title=Selecting Text }}</ref> |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{ya}}<br />Plug{{nbh}}in{{efn|name=joeSpellChecking|''JOE'' supports spell checking via the [[ispell]] or [[aspell]] external plug{{nbh}}ins.}} | {{Partial}}<br />{{efn|name=joeRegexp|''JOE'' uses a non-standard regular expression syntax.}} | {{na}}<br />{{efn|name=joeCharset|''JOE'' can easily pipe text through the GNU [[Recode (Unix)|recode]](1) utility; it detects locale settings and allows editing in any encoding set up by the environment.}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[JOVE]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[XEDIT|KEDIT]] | {{na}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Komodo Edit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}}{{efn|name=KomodoEditVs|''Komodo Edit'' is based on Scintilla and may support virtual space similar to Geany and Notepad++ ([https://www.scintilla.org/ScintillaRelated.html])}} |- ! nowrap {{rh}} | [[Komodo IDE]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}}{{efn|name=KomodoIDEVs|''Komodo IDE'' is based on Scintilla and may support virtual space similar to Geany and Notepad++ ([https://www.scintilla.org/ScintillaRelated.html])}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{na}} | {{ya}} | {{na}}<br />{{efn|name=LECharset|''LE'' can pipe text through the GNU [[Recode (Unix)|recode]](1) utility}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] | {{ya}}<br />Plug{{nbh}}in<ref name="LT-Spelling">{{Cite web|url=https://github.com/rschroll/lt-spelling|title=GitHub - rschroll/lt-spelling: Spell check plugin for Light Table.|date=April 29, 2015|via=GitHub}}</ref> | {{dunno}} | {{na}} | {{na}} | {{ya}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Metapad]] | {{Partial}}<br />{{efn|name=metapadSpellChecking|''Metapad'' spell checking by calling external program Aspell.}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[mg (text editor)|mg]] | {{na}} | {{ya}}<br /><ref name="mgUndo">{{Cite web|url=http://bxr.su/OpenBSD/usr.bin/mg/re_search.c|title=Super User's BSD Cross Reference: /OpenBSD/usr.bin/mg/re_search.c|website=bxr.su}}</ref> | {{na}} | {{partial}} | {{ya}}<br /><ref name="mgUndo"/> | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[mined (text editor)|MinEd]] | {{na}} | {{ya}}<br />{{efn|''mined'' supports multiple lines in search and replacement expressions.}} | {{ya}}<br />{{efn|''mined'' can convert the encoding format when using the Copy & Paste feature between multiple documents (that have different encodings).}} | {{ya}}<br />{{efn|''mined'' supports new-line conversion via a command-line option or from the menu. Files with mixed newline types can be edited transparently; different kinds of new-line have different visual indications.}} | {{na}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{na}} | {{na}} | {{na}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{na}} | {{dunno}} |- ! ! Spell checking ! Regex-based find & replace ! Encoding conversion ! Newline conversion ! Multiple undo/redo ! Rectangular block selection !Virtual Space Support |- ! nowrap {{rh}} | [[ne (text editor)|ne]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[NEdit]] | {{ya}}<br />Plug{{nbh}}in<ref name="neditSpellChecking">''NEdit'' supports spell checking via a plug{{nbh}}in</ref> | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{na}} | {{na}} | {{Partial}} | {{Partial}} | {{ya}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}}<br /><ref name="nppSpellChecking">[http://notepad-plus-plus.org/news/notepad-6.3.3-release.html ''Notepad++ 6.3.3''] {{Webarchive|url=https://web.archive.org/web/20131126192732/http://notepad-plus-plus.org/news/notepad-6.3.3-release.html |date=2013-11-26 }} and above support spell checking via the DSpellCheck plug{{nbh}}in, which is included with the default package.</ref> | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[nvi]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{ya}}<br />external{{efn|name=samext|It is possible to start external applications from inside Sam and display their return values.}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[SciTE]] | {{na}} | {{Partial|Limited}}<br />{{efn|''Scintilla''-based editors such as ''SciTE'', ''Notepad2'' and ''Notepad++'' do not support alternation (|) in regular expressions.}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}{{cn|date=March 2025}} |- ! nowrap {{rh}} | [[Smultron]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br /><ref name="subEthaEditBlockEditing">''SubEthaEdit'' supports advanced block editing, including multi-line typing and non-contiguous block selections.</ref> | {{dunno}} |- ! nowrap {{rh}} | [[Sublime Text]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}}<ref>{{cite web | url=https://forum.sublimetext.com/t/virtual-space/455/15 | title=Virtual space | date=28 March 2012 }}</ref> |- ! nowrap {{rh}} | [[TED Notepad]] | {{na}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[TextEdit]] | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{ya}} | {{Partial}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[TextPad]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[BBEdit|TextWrangler]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{Partial|Limited}}<br />{{efn|name=UERegexp|''UltraEdit'' uses the Boost C++ regex library. While Boost supports backreferences past \9 with \g{10}, UltraEdit has not yet implemented this feature.}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}}<br />{{efn|name=VeditSpellChecking|''VEDIT'' 6.2 comes with Scribe spelling checker which has been written entirely in Vedit macro language. In addition, macro package for integrating [[Aspell]] can be downloaded [http://koti.mbnet.fi/pkl/vedit/aspell.htm here].}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}}<br />{{efn|name=vimSpellChecking|''Vim'' version 7 supports spell checking natively. Earlier versions require a script.<ref>{{Cite web|url=https://www.vim.org/scripts/script.php?script_id=195|title=Engspchk - Spelling checker: On-the-fly spell checking, multi-language, alternate spellings : vim online|website=www.vim.org}}</ref> }} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{no}}<ref>{{cite web |title=Indent with virtual spaces in Vim? |url=https://www.reddit.com/r/vim/comments/l6lph3/indent_with_virtual_spaces_in_vim/ |website=reddit.com|date=28 January 2021 }}</ref> |- | {{rh}} | [[Visual Studio Code]] | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{Partial|Limited}}<br />{{efn|''Visual Studio Code'' does not support virtual space, and rectangular selection beyond line endings is not possible.}} | {{na}}<ref>{{cite web | url=https://github.com/microsoft/vscode/issues/13960 | title=Virtual Space is not implemented. Β· Issue #13960 Β· microsoft/Vscode | website=[[GitHub]] }}</ref> |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}}<br />Plug{{nbh}}in{{efn|name=emacs_spell}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[NEdit|XNedit]] | {{ya}}<br />Plug{{nbh}}in<ref name="neditSpellChecking"/> | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |-valign=top ! ! Spell checking ! Regex-based find & replace ! Encoding conversion ! Newline conversion ! Multiple undo/redo ! Rectangular block selection !Virtual Space Support |}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)