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
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!
{{Short description|none}} This article provides basic comparisons for notable [[text editor]]s. More feature details for text editors are available from the ''[[:Category:Text editor features|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== <!-- In each table, link one (usually 1st) instance of terms, remove other WP:OVERLINK(s). --> {{mw-datatable}}{{sticky header}}{{sort under}}{{sticky table start}} {| class="wikitable sortable mw-datatable sort-under sticky-table-head sticky-table-col1" |+ List of text editors ! rowspan="2" | Name ! rowspan="2" | Developer ! rowspan="2" | Initial release ! colspan="2" | Latest release ! rowspan="2" | [[Programming language|Program{{shy}}ming language]] ! rowspan="2" data-sort-type="currency" | Cost ([[United States dollar|US$]]) ! rowspan="2" | [[Software license|License]] ! rowspan="2" | [[Graphical user interface|GUI]] ! rowspan="2" | [[Text-based user interface|TUI]] or [[Command-line interface|CLI]] |- ! class=sticky-table-none data-sort-type="number"| Version ! Date |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | [[Rob Pike]] | 1993 | [[Plan 9 from Bell Labs|Plan 9]] and [[Inferno (operating system)|Inferno]] | | [[C (programming language)|C]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]<br />[[GNU General Public License|GPL-2.0-only]]<br />[[Lucent Public License|LPL-1.02]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | AkelPad | Alexey Kuznetsov<br />Alexander Shengalts | 2003 | {{wikidata|property|preferred|references|edit|Q1084900|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1084900|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[BSD licenses|BSD-2-Clause]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Alphatk]] | Vince Darley | 1999 | {{wikidata|property|preferred|references|edit|Q4735278|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q4735278|P348|P548=Q2804309|P577}} | | {{nonfree|$40}} | {{partial|Proprietary, with BSD components}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] | [[GitHub]] | 2014 | {{wikidata|property|preferred|references|edit|Q16766305|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q16766305|P348|P548=Q2804309|P577}} | [[HTML]], [[CSS]], [[JavaScript]], [[C++]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[BBEdit]] | Rich Siegel | 1992 | {{wikidata|property|preferred|references|edit|Q795617|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q795617|P348|P548=Q2804309|P577}} | [[Objective-C]], [[Objective-C++]] | {{partial|[[Gratis versus libre|No cost]] for most features, $49.99 for full version}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Bluefish (software)|Bluefish]] | Bluefish Development Team | 1999 | {{wikidata|property|preferred|references|edit|Q651027|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q651027|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | [[Adobe Systems]] | 2012 | {{wikidata|property|preferred|references|edit|Q4683967|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q4683967|P348|P548=Q2804309|P577}} | [[HTML]], [[CSS]], [[JavaScript]], [[C++]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | Panic | 2007 | {{wikidata|property|preferred|references|edit|Q1105496|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1105496|P348|P548=Q2804309|P577}} | Objective-C | {{nonfree|$99}} | {{proprietary}} | {{ya}} | |- ! nowrap {{rh}} | [[ConTEXT]] | ConTEXT Project Ltd | 1999 | {{wikidata|property|preferred|references|edit|Q728134|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q728134|P348|P548=Q2804309|P577}} | [[Object Pascal]] ([[Delphi (programming language)|Delphi]]) | {{free|[[Gratis versus libre|No cost]]}} | {{open source|BSD-3-Clause}} | {{ya}} | |- ! nowrap {{rh}} | [[Crimson Editor]] | Ingyu Kang | 1999 | {{wikidata|property|preferred|references|edit|Q2591922|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q2591922|P348|P548=Q2804309|P577}} | C++ | {{free|[[Gratis versus libre|No cost]]}} | {{proprietary}} | {{ya}} | |- ! nowrap {{rh}} | CudaText | UVViewSoft{{efn|alexey_t, kvichans, matthias030.}} | 2015 | {{wikidata|property|preferred|references|edit|Q55430618|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q55430618|P348|P548=Q2804309|P577}} | [[Object Pascal]] ([[Lazarus (software)|Lazarus]]) | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[Mozilla Public License|MPL-2.0]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | [[Ken Thompson (computer programmer)|Ken Thompson]] | 1970 | unchanged from original | | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|?}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Editra]] | Cody Precord | 2007 | 0.7.20 | 2013-01-05 | [[Python (programming language)|Python]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[wxWindows license]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[EmEditor]] | Emurasoft, Inc. | 1997 | 21.3.0 | 2021-11-24 | C++ | {{nonfree|$39.99}} | {{proprietary|Shareware}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[epsilon (text editor)|epsilon]] | Lugaru Software | 1984 | 14.00<ref>{{Cite web |title=Epsilon 14 Update Information |url=https://lugaru.com/updinfo.html |access-date=2020-10-22 |website=Lugaru Software, Ltd.}}</ref> | 2020-10-20 | C | {{nonfree|$250}} | {{proprietary}} | | |- ! nowrap {{rh}} | [[FeatherPad]] | Pedram Pourang | 2016 | {{wikidata|property|preferred|references|edit|Q78908533|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q78908533|P348|P548=Q2804309|P577}} | C++, [[Qt (software)|Qt]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[FocusWriter]] | Graeme Gott | 2008 | {{wikidata|property|preferred|references|edit|Q4038855|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q4038855|P348|P548=Q2804309|P577}} | C++, [[Qt (software)|Qt]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[gedit]] | [[GNU]] Project | 2000 | {{wikidata|property|preferred|references|edit|Q194501|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q194501|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Geany]] | Enrico Tröger | 2005 | {{wikidata|property|preferred|references|edit|Q1122464|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1122464|P348|P548=Q2804309|P577}} | C, [[GTK+]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-2.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[GNU Emacs]] | [[Richard Stallman]] | 1984 | {{wikidata|property|preferred|references|edit|Q1252773|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1252773|P348|P548=Q2804309|P577}} | C, Emacs Lisp | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[GNU nano]] | Chris Allegretta | 1999 | {{wikidata|property|preferred|references|edit|Q306101|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q306101|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[IA Writer]] | Information Architects | 2010.09.22 | 5.6 | 2020-12-07 | [[Objective-C]] (iOS), Objective-C (macOS), [[C Sharp (programming language)|C#]] (Windows), [[Java (programming language)|Java]] (Android) | {{nonfree|$29.99}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | John E. Davis | 1992 | {{wikidata|property|preferred|references|edit|Q467413|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q467413|P348|P548=Q2804309|P577}} | C, [[S-Lang]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-2.0-or-later]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[jEdit]] | [[Slava Pestov]] | 1998 | {{wikidata|property|preferred|references|edit|Q292976|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q292976|P348|P548=Q2804309|P577}} | [[Java (programming language)|Java]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-2.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | Joseph Allen | 1988 | {{wikidata|property|preferred|references|edit|Q1691315|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1691315|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|GPL}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[JOVE]] | Johnathon Payne | 1983 | {{wikidata|property|preferred|references|edit|Q3156938|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q3156938|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|JOVE license}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | [[KDE]] Project | 2000-12 | {{wikidata|property|preferred|references|edit|Q261933|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q261933|P348|P548=Q2804309|P577}} | C++ | {{free|[[Gratis versus libre|No cost]]}} | {{open source|LGPL, MIT}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[XEDIT|KEDIT]] | Mansfield Software Group, Inc. | 1983 | 1.6.1 | 2016-12-05 | C | {{nonfree|$129}} | {{proprietary}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo Edit]] | [[Activestate]] | 2007 | {{wikidata|property|preferred|references|edit|Q1265324|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1265324|P348|P548=Q2804309|P577}} | Python, JavaScript, [[Perl]], [[Tcl]], [[PHP]], Ruby | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[Mozilla Public License|MPL]], GPL, [[GNU Lesser General Public License|LGPL]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Komodo IDE]] | Activestate | 2001 | {{wikidata|property|preferred|references|edit|Q21043327|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q21043327|P348|P548=Q2804309|P577}} | Python, JavaScript, Perl, Tcl, PHP, Ruby | {{nonfree|$295}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[KWrite]] | [[KDE]] Project | 2000 | {{wikidata|property|preferred|references|edit|Q742712|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q742712|P348|P548=Q2804309|P577}} | C++ | {{free|[[Gratis versus libre|No cost]]}} | {{open source|LGPL}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | Alexander V. Lukyanov | 1997 | {{wikidata|property|preferred|references|edit|Q4042433|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q4042433|P348|P548=Q2804309|P577}} | C++ | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Leo (text editor)|Leo]] | Edward K. Ream | 1996 | {{wikidata|property|preferred|references|edit|Q6523506|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q6523506|P348|P548=Q2804309|P577}} | Python | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] | Chris Granger | 2012 | {{wikidata|property|preferred|references|edit|Q6546235|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q6546235|P348|P548=Q2804309|P577}} | [[ClojureScript]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[mcedit]] | [[Miguel de Icaza]] | 1994 | {{wikidata|property|preferred|references|edit|Q1340000|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1340000|P348|P548=Q2804309|P577}} | C, Python, PHP, Javascript, Perl, Tcl, Ruby | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Metapad]] | Alexander Davidson | 1999 | {{wikidata|property|preferred|references|edit|Q11777663|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q11777663|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[mg (text editor)|mg]] | Dave Conroy | 1986 | current{{efn|last update in OpenBSD repo<ref>{{Cite web |title=src/usr.bin/mg at master · openbsd/src |url=https://github.com/openbsd/src/tree/master/usr.bin/mg |access-date=2020-10-21 |website=GitHub |language=en}}</ref>}} | 2020-07-22 | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[Public domain]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[mined (text editor)|MinEd]] | Thomas Wolff | 1992 | 2022.27 | 2022-12-23 | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|GPL}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | [[Microsoft]] | 1991 | 2.0.026 | | | {{nonfree|Bundled with [[MS-DOS]], [[Microsoft Windows]]}} | {{proprietary}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[ne (text editor)|ne]] | Sebastiano Vigna<br />Todd Lewis<br />Daniele Filaretti | 1993 | {{wikidata|property|preferred|references|edit|Q6983892|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q6983892|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit]] | Mark Edel | 1991 | {{wikidata|property|preferred|references|edit|Q2719620|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q2719620|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-2.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | Microsoft | 1985 | 11.2302.16.0 | | [[Microsoft Macro Assembler|MASM]] (originally) | {{nonfree|Bundled with Microsoft Windows}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | Don Ho | 2003-11-25 | {{wikidata|property|preferred|references|edit|Q2033|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q2033|P348|P548=Q2804309|P577}} | [[C++]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[nvi]] | [[Keith Bostic (software engineer)|Keith Bostic]] | 1994 | {{wikidata|property|preferred|references|edit|Q556171|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q556171|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[BSD licenses|BSD-3-Clause]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | [[University of Washington]] | 1992 | 4.64 | | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[Apache License|Apache-2.0]]}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[PimNote]] | Pimtel | 2023 | 1.2.0<ref>Pimtel. [https://www.pimtel.com/pimnote/ Pimnote].</ref> | 2023-04-22 | C# | {{free|[[Gratis versus libre|No cost]]}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[PolyEdit]] | PolySoft Solutions | 1998 | 5.4 | 2010{{nbh}}04{{nbh}}07 | | {{nonfree|$27.95}} | {{proprietary|Shareware}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[PSPad]] | Jan Fiala | 2002 | {{wikidata|property|preferred|references|edit|Q1342374|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1342374|P348|P548=Q2804309|P577}} | Object Pascal (Delphi) | {{free|[[Gratis versus libre|No cost]]}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[RJ TextEd]] | Rickard Johansson | 2004 | {{wikidata|property|preferred|references|edit|Q4047864|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q4047864|P348|P548=Q2804309|P577}} | Object Pascal (Delphi) | {{free|[[Gratis versus libre|No cost]]}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | [[Rob Pike]] | 1980s (early) | stable | | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[Lucent Public License|LPL]] ([[Open Source Initiative|OSI]] approved)}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[SciTE]] | Neil Hodgson | 1999 | {{wikidata|property|preferred|references|edit|Q186301|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q186301|P348|P548=Q2804309|P577}} | C++ | {{partial|$41.99 for macOS. [[Gratis versus libre|No cost]] for others}} | {{open source|[[Historical Permission Notice and Disclaimer|HPND]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[SlickEdit]] | SlickEdit, Inc. | 1988 | 28.0.1 | 2024-01-21 | [[C (programming language)|C]], Slick-C | {{nonfree|$299}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Smultron]] | Peter Borg | 2004 | {{wikidata|property|preferred|references|edit|Q167140|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q167140|P348|P548=Q2804309|P577}} | Objective-C | {{nonfree|$7.99}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | TheCoding{{shy}}Monkeys | 2003 | {{wikidata|property|preferred|references|edit|Q664378|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q664378|P348|P548=Q2804309|P577}} | | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]}} | {{ya}} | |- ! nowrap {{rh}} | [[Sublime Text]] | {{#statements:developer|from=Q267193}} | 2008 | {{wikidata|property|preferred|references|edit|Q267193|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q267193|P348|P548=Q2804309|P577}} | {{#statements:P277|from=Q267193}} | {{nonfree|$99}} | {{proprietary|[[Shareware]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[TED Notepad]] | Juraj Simlovic | 2001 | {{wikidata|property|preferred|references|edit|Q1761171|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q1761171|P348|P548=Q2804309|P577}} | C | {{free|[[Gratis versus libre|No cost]]}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Textadept]] | Mitchell | 2007 | {{wikidata|property|preferred|references|edit|Q18388827|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q18388827|P348|P548=Q2804309|P577}} | C, [[Lua (programming language)|Lua]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[MIT License|MIT]]}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextEdit]] | [[Apple Inc.]] | 2001 | {{wikidata|property|preferred|references|edit|Q519774|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q519774|P348|P548=Q2804309|P577}} | | {{free|[[Gratis versus libre|No cost]] (also bundled with [[macOS]])}} | {{open source|[[BSD licenses|BSD-3-Clause]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[TextMate]] | MacroMates | 2004-10-10 | {{wikidata|property|preferred|references|edit|Q2297533|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q2297533|P348|P548=Q2804309|P577}} | Objective-C++ | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-3.0-or-later]]}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[TextPad]] | Helios Software Solutions | 1992 | {{wikidata|property|preferred|references|edit|Q2295946|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q2295946|P348|P548=Q2804309|P577}} | | {{nonfree|$30.00 (£16.50)}} | {{proprietary|Shareware}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[BBEdit|TextWrangler]] | [[Bare Bones Software]] | 2003 | 5.5.2 | 2016-09-20 | | {{free|[[Gratis versus libre|No cost]]}} | {{proprietary}} | {{ya}} | |- ! nowrap {{rh}} | [[The SemWare Editor]] | Sammy Mitchell | 1985-11 | {{wikidata|property|preferred|references|edit|Q7763278|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q7763278|P348|P548=Q2804309|P577}} | C, SAL | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[BSD licenses|BSD-2-Clause]]}} | | |- ! nowrap {{rh}} | [[UltraEdit]] | [[IDM Computer Solutions]] | 1994 | 25.0 | 2018-03-12 | C++ | {{nonfree|$99.95}} | {{proprietary}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[VEDIT]] | Ted Green, Greenview Data | 1980 | 6.24.2 | 2015-01-12 | [[assembly language|Assembly]], C | {{nonfree|$89 standard, $239 Pro64}} | {{proprietary}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | [[Bill Joy]] | 1976 | 3.7 | | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[BSD licenses|BSD-4-Clause]]}} or CDDL | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | [[Bram Moolenaar]] | 1991 | {{wikidata|property|preferred|references|edit|Q131382|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q131382|P348|P548=Q2804309|P577}} | C, [[Vim script]] | {{free|[[Gratis versus libre|No cost]]}} | {{open source|Vim}} | {{ya}} <!-- as "gvim" --> | {{ya}} |- ! nowrap {{rh}} | [[Visual Studio Code]] | [[Microsoft]] | 2015 | {{wikidata|property|preferred|references|edit|Q19841877|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q19841877|P348|P548=Q2804309|P577}} | [[JavaScript]], [[TypeScript]] | {{free|[[Gratis versus libre|No cost]]}} | {{partial|Source code: [[MIT License|MIT]]<ref name="code-oss-license">{{cite web | url=https://github.com/Microsoft/vscode/blob/main/LICENSE.txt | title=LICENSE.txt | publisher=[[Microsoft]] | work=github.com/Microsoft/vscode | date=17 November 2015}}</ref> <br /> Binaries built by Microsoft: [[Proprietary software|Proprietary]]<ref name="official-download-license">{{Cite web |url=https://code.visualstudio.com/license |title=Microsoft Software License Terms |website=code.visualstudio.com |publisher=[[Microsoft]] |access-date=16 August 2016}}</ref><ref>{{Cite web |title=The best parts of Visual Studio Code are proprietary |url=https://underjord.io/the-best-parts-of-visual-studio-code-are-proprietary.html}}</ref>}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[XEmacs]] | [[Lucid Inc.]] | 1991 | {{wikidata|property|preferred|references|edit|Q2164944|P348|P548=Q2804309}} | {{wikidata|qualifier|raw|preferred|single|Q2164944|P348|P548=Q2804309|P577}} | C, Emacs Lisp | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-2.0-or-later]]}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Nedit|XNEdit]] | Olaf Wintermann | 2018 | 1.5.2 | 2023-10-05 | C | {{free|[[Gratis versus libre|No cost]]}} | {{open source|[[GNU General Public License|GPL-2.0-or-later]]}} | {{ya}} | {{na}} |} {{sticky table end}} ==Operating system support== This section lists the [[operating system]]s that different editors can run on. Some editors run on additional operating systems that are not listed. ===Cross-platform=== {{sticky header}}{{sort under}} {| class="wikitable sortable sticky-header sort-under" style="max-width: 30em;" |+ Text editor support for various operating systems |-valign=bottom ! nowrap {{rh}} | ! [[Microsoft Windows]] ! [[macOS]] ! [[Linux]] ! [[BSD]] ! [[Unix]] ! [[OpenVMS]] |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{Partial}}<br />{{efn|name=plan9windows|No native support, available as a part of the [[Inferno (operating system)|Inferno]] port for Windows or by using `plan9port` over the [[Windows Subsystem for Linux|WSL]].}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | AkelPad | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Arachnophilia]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[BBEdit]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | CudaText | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{Partial}}<br />{{efn|name=cygwin}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Editra]] | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[epsilon (text editor)|epsilon]] | {{ya}} | {{ya}}<br /><ref name="epsilon13">{{Cite web|url=http://www.lugaru.com/newv13.html|title=New Features in Epsilon 13|website=www.lugaru.com}}</ref> | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}}<br />{{efn|name=gedit_mac|[http://projects.gnome.org/gedit/ GEdit], when installed from MacPorts, runs in X11 and, therefore, does not have a native look and feel. However, precompiled native macOS binaries for GEdit may be downloaded from the GEdit project page, or from the [http://ftp.gnome.org/pub/gnome/binaries/mac/gedit/ GEdit FTP download server].}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{ya}}{{dubious|Joe's own editor (sic)|date=August 2017}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[JOVE]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[XEDIT|KEDIT]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Komodo Edit]] | <!-- Win -->{{ya}} | <!-- Mac -->{{ya}} | <!-- Linux -->{{ya}} | <!-- BSD -->{{ya}} | <!-- Unix -->{{dunno}} | <!-- OpenVMS -->{{dunno}} |- ! nowrap {{rh}} | [[Komodo IDE]] | <!-- Win -->{{ya}} | <!-- Mac -->{{ya}} | <!-- Linux -->{{ya}} | <!-- BSD -->{{ya}} | <!-- Unix -->{{dunno}} | <!-- OpenVMS -->{{dunno}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{Partial}}<br />{{efn|name=cygwin}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Metapad]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[mg (text editor)|mg]] | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[mined (text editor)|MinEd]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[GNU nano]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Ne (text editor)|ne]] | {{Partial}}<br />{{efn|name="cygwin"|Requires Cygwin or the [[Windows Subsystem for Linux]] to run on Windows.}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[NEdit]] | {{Partial}}<br />{{efn|name=cygwin}} | {{ya}}<br />{{efn|name=geditOSX|''gedit'', ''NEdit'', and ''SciTE'' run in the [[X11]] window environment, and therefore do not use the native Aqua look-and-feel when running on macOS.}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[nvi]] | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{Partial}}<br />{{efn|name=plan9windows}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[SciTE]] | {{ya}} | {{ya}}<br />{{efn|name=geditOSX}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Smultron]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Sublime Text]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Textadept]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextEdit]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextMate]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextPad]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Ulysses (text editor)]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{Partial}}<br />{{efn|name=cygwin}}{{efn|name=nsis|Stand alone [[Nullsoft Scriptable Install System|NSIS]] installable package is available}} | {{ya}}<br />{{efn|name=geditOSX|''gedit'', ''NEdit'', and ''SciTE'' run in the [[X11]] window environment, and therefore do not use the native Aqua look-and-feel when running on macOS.}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |} ==Natural language (localization)== {| class="wikitable sortable" style="max-width: 60em; table-layout: fixed" |+ Available languages for the {{abbr|UI|user interface}} |-valign=bottom ! !! Languages supported |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | English |- ! nowrap {{rh}} | AkelPad | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish |- ! nowrap {{rh}} | [[Alphatk]] | English |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] |English |- ! nowrap {{rh}} | [[BBEdit]] | English |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | English, German, French, Polish(Outdated), Korean, Japanese, Italian, Czech, Dutch, Portuguese, Spanish, Swedish(Outdated) |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | English, German, French, Spanish |- ! nowrap {{rh}} | [[ConTEXT]] | English, German, French, Polish, Italian, Dutch, Portuguese, Spanish |- ! nowrap {{rh}} | [[Crimson Editor]] | English |- ! nowrap {{rh}} | CudaText |Main: English. Addons: Japanese, French, Polish, Korean, Hungarian (2018), Greek, German (2017), and 9 others |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | |- ! nowrap {{rh}} | [[Editra]] | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[EmEditor]] | English, German, French, Korean, Japanese, Italian, Dutch, Spanish |- ! nowrap {{rh}} | [[epsilon (text editor)|epsilon]] | English |- ! nowrap {{rh}} | [[Geany]] | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |- ! nowrap {{rh}} | [[gedit]] | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | English |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | English |- ! nowrap {{rh}} | [[jEdit]] | English |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]]<ref>{{cite web|url=https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/po/|title=JOE - Joe's own editor|website=JOE - Joe's own editor / Mercurial / [2e4f45] /po|access-date=23 October 2015}}</ref> | English, German, French |- ! nowrap {{rh}} | [[JOVE]] | English |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]]<ref>{{Cite web|url=https://l10n.kde.org/stats/gui/stable/po/kate.po/|title=KDE Localization - Apps » stable » kate.po|website=l10n.kde.org}}</ref> | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[XEDIT|KEDIT]] | English |- ! nowrap {{rh}} | [[Komodo Edit]] | English |- ! nowrap {{rh}} | [[KWrite]] | English, German, Italian, Spanish, Swedish |- ! nowrap {{rh}} | [[Metapad]]<ref>{{Cite web|url=https://liquidninja.com/metapad/translations-download.html|title=Metapad language plugins|website=liquidninja.com}}</ref> | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | English |- ! nowrap {{rh}} | [[MS-DOS Editor]] | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | English, German, French, Italian, Portuguese |- ! nowrap {{rh}} | [[NEdit]] | English |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |- ! nowrap {{rh}} | [[Notepad++]] | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |- ! nowrap {{rh}} | [[nvi]] | English |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | English, Italian |- ! nowrap {{rh}} | [[PolyEdit]] | English |- ! nowrap {{rh}} | [[PSPad]] | English, German, French, Polish, Japanese, Italian, Czech, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[RJ TextEd]] | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | English |- ! nowrap {{rh}} | [[SciTE]]<ref>{{Cite web|url=https://scintilla.org/SciTETranslation.html|title=Localised SciTE|website=scintilla.org}}</ref> | English, German, French (Outdated (1.72)), Polish, Japanese (Outdated (1.62)), Italian, Dutch (Outdated (1.67)), Portuguese (Outdated (1.63)), Spanish, Swedish |- ! nowrap {{rh}} | [[SlickEdit]] | English |- ! nowrap {{rh}} | [[Smultron]] | English, German, French, Japanese, Italian, Dutch, Spanish, Swedish |- ! nowrap {{rh}} | [[SubEthaEdit]] | English |- ! nowrap {{rh}} | [[TED Notepad]] | English |- ! nowrap {{rh}} | [[TextEdit]] | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |- ! nowrap {{rh}} | [[TextMate]] | English |- ! nowrap {{rh}} | [[TextPad]] | English, German, French, Polish (Outdated (4.7.3)), Japanese, Italian(Outdated (4.7.3)), Dutch (Outdated (4.7.3)), Spanish (Outdated (4.7.3)), Portuguese (Outdated (4.7.3)) |- ! nowrap {{rh}} | [[TextWrangler]] | English |- ! nowrap {{rh}} | [[The SemWare Editor]] | English |- ! nowrap {{rh}} | [[UltraEdit]] | English, German, French, Korean, Italian, Spanish, Portuguese, Japanese, Chinese |- ! nowrap {{rh}} | [[VEDIT]] | English |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | English |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | Afrikaans, Catalan, Chinese(Simplified), Chinese(Taiwan), Czech, Danish, Dutch, German, English(UK), English(US), Esperanto, Finnish, French, Irish, Italian, Japanese, Korean, Latvian, Norwegian(Bokmål), Polish, Portuguese(Brazil), Russian, Serbian, Slovak, Spanish, Swedish, Ukrainian, Vietnamese |- ! nowrap {{rh}} | [[Visual Studio Code]] | English, Bulgarian, Chinese, French, German, Hungarian, Italian, Japanese, Korean, Portuguese, Russian, Spanish, Turkish |- ! nowrap {{rh}} | [[XEmacs]] | English |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | English |- |} ==Document interface== {{sticky header}}{{sort under}} {| class="wikitable sortable sticky-header" style="max-width: 30em; table-layout: fixed; margin-top: 0" |+ Text editor support for common document interfaces |-valign=bottom ! ! Multiple instances ! Single document window splitting ! [[multiple-document interface|MDI]]: overlappable windows ! MDI: [[tabbed document interface]] ! MDI: window splitting |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | AkelPad | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- | {{rh}} | [[Atom (text editor)|Atom]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{na}} | {{na}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | CudaText | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Editra]] | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in{{efn|''gedit'' supports single document window splitting 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}}<br />Plug{{nbh}}in{{efn|''gedit'' supports multiple document window splitting 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 }}.}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name="tabbar" |GNU Emacs 27.1 includes built-in support for tab bar (per-frame) and tab-line (per-window). Earlier versions of GNU Emacs can use a tabbed document interface in a non OS-native way using the [http://www.emacswiki.org/emacs/TabBarMode Tabbar] plug{{nbh}}in.}}{{efn|name="elscreen"|GNU Emacs can support a tabbed document interface modelled after [[GNU Screen]] using the [http://www.morishima.net/~naoto/software/elscreen/ elscreen] {{Webarchive|url=https://web.archive.org/web/20080117083341/http://www.morishima.net/~naoto/software/elscreen/ |date=2008-01-17 }} package.}} | {{ya}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{ya}} | {{ya}} | {{na}} | {{na}}<br />{{efn|name="joetabs" |''JOE'' supports editing multiple files but only seeing one of them, and switching to others via Ctrl+K+N, which is functionally equivalent to having tabs but no visible tab bar.}} | {{ya}} |- ! nowrap {{rh}} | [[JOVE]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[XEDIT|KEDIT]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo Edit]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo IDE]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Metapad]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{ya}} | {{na}} | {{na}}<br />{{efn|''mined'' supports Copy/Paste between multiple documents in separate windows, when these documents are in separate terminal windows}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[NEdit]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}}<br />2 windows |- ! nowrap {{rh}} | [[nvi]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{na}} | {{na}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{ya}} | {{na}} | {{ya}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[SciTE]] | {{ya}} | {{na}} | {{na}} | {{ya}}<br />{{efn|SciTE_max_buffers|''SciTE'' has a maximum number of buffers, which can only be set as high as 100.}} | {{na}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Smultron]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{dunno}} | {{dunno}} | {{dunno}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[TextEdit]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[TextPad]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=vimOV|''Vim'' Provided GVim is used.}} | {{ya}}<br />{{efn|name=vimTDI|''Vim'' version 7 supports a tabbed document interface. Earlier versions can emulate tabs through scripts, for example.<ref>{{Cite web|url=https://www.vim.org/scripts/script.php?script_id=1338|title=TabBar - Plugin to add tab bar ( derived from miniBufExplorer). : vim online|website=www.vim.org}}</ref>}} | {{ya}} |- | {{rh}} | [[Visual Studio Code]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} |-valign=top ! ! Multiple instances ! Single document window splitting ! MDI: overlappable windows ! MDI: tabbed document interface ! MDI: window splitting |- |} === 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]]). *'''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== {{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 |} ==Programming features== {{sticky header}}{{sort under}} {| class="wikitable sticky-header sortable" style="max-width: 30em; table-layout: fixed" |+ Text editor support for programming features (see [[source code editor]]) |-valign=bottom ! ! [[Syntax highlighting]] ! Function list ! Symbol database <br />([[ctags]] or equiv.) ! [[Brace matching]] ! Auto indentation ! [[Autocomplete|Auto completion]] ! [[Code folding]] ! [[Text folding]] ! [[Compiler]] integration |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | <!-- syntax -->{{na}} | <!-- function list -->{{ya}}<br />external{{efn|name=acmeext}} | <!-- symbol db -->{{ya}}<br />external{{efn|name=acmeext}} | <!-- bracket matching -->{{ya}} | <!-- auto indent -->{{ya}} | <!-- autocomplete -->{{Partial}}<br />{{efn|Acme's auto-completion only works on file names.}} | <!-- code folding -->{{na}} | <!-- text folding --> {{na}} | <!-- compiler integration -->{{ya}}<br />external{{efn|name=acmeext}} |- ! nowrap {{rh}} | AkelPad | <!-- syntax -->{{ya}}<br />Plug{{nbh}}in | <!-- function list -->{{ya}}<br />Plug{{nbh}}in | <!-- symbol db -->{{ya}}<br />Plug{{nbh}}in | <!-- bracket matching -->{{ya}}<br />Plug{{nbh}}in | <!-- auto indent -->{{ya}} | <!-- autocomplete -->{{ya}}<br />Plug{{nbh}}in | <!-- code folding -->{{ya}}<br />Plug{{nbh}}in | <!-- text folding --> {{na}} | <!-- compiler integration -->{{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}}<br />{{efn|name=bluefish-unstable3|''bluefish'': Configurable via the outputbox feature.}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}} | {{na}} | {{Partial}}<br />{{efn|name=openctags|With external tool [http://openctags.sourceforge.net/ OpenCTags]}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | CudaText | <!-- syntax -->{{ya}} | <!-- function list -->{{ya}} | <!-- symbol db -->{{ya}} | <!-- bracket matching -->{{ya}}<br />Plug{{nbh}}in | <!-- auto indent -->{{ya}} | <!-- autocomplete -->{{ya}}<br />Plug{{nbh}}in | <!-- code folding -->{{ya}} | <!-- text folding --> {{ya}} | <!-- compiler integration -->{{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{ya}}<br />external{{efn|name=edext|ed can invoke external commands, like a compiler.}} |- ! nowrap {{rh}} | [[Editra]] | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in{{efn|''EmEditor Professional'' supports Auto Complete via plug{{nbh}}ins ([http://www.emeditor.com/files/autocomplete700x86-zip/ 32-bit] or [http://www.emeditor.com/files/autocomplete700x64-zip/ 64-bit]).}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=geanytags|Geany uses its own tags file format, not compatible with ctags, see [http://www.geany.org/manual/current/#tags the manual].}} | {{ya}} | {{ya}} | {{ya}} | {{Partial}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{ya}}<br />Plug{{nbh}}in{{efn|name=gedit-folding|gedit-folding: Folding plug{{nbh}}in for Gedit}} | {{ya}}<br />{{efn|name=geditPlugin|''gedit'': Compiler integration: Functionality in plug{{nbh}}ins installed with gedit.}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{ya}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[JOVE]] | {{na}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[XEDIT|KEDIT]] | {{ya}} | {{na}} | {{ya}}<br />Macro | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ActiveState Komodo#Komodo Edit|Komodo Edit]] | <!-- syntax -->{{ya}} | <!-- function list -->{{ya}} | <!-- symbol db -->{{na}} | <!-- bracket matching -->{{ya}} | <!-- auto indent -->{{ya}} | <!-- autocomplete -->{{ya}} | <!-- code folding -->{{ya}} | <!-- text folding --> {{ya}} | <!-- compiler integration -->{{na}} |- ! nowrap {{rh}} | [[Komodo IDE]] | <!-- syntax -->{{ya}} | <!-- function list -->{{ya}} | <!-- symbol db -->{{ya}} | <!-- bracket matching -->{{ya}} | <!-- auto indent -->{{ya}} | <!-- autocomplete -->{{ya}} | <!-- code folding -->{{ya}} | <!-- text folding --> {{ya}} | <!-- compiler integration -->{{ya}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}}<br />{{efn|''make'' can be launched from the LE text editor, but the output is not captured}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{Partial}}<br />{{efn|Evaluates expressions in some dynamic languages such as Clojure, Python and Javascript in realtime}} |- ! nowrap {{rh}} | [[Metapad]] | {{na}} | {{na}} | {{na}} | {{na}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{ya}}<br />{{efn|''mined'': Syntax highlighting: HTML/XML, Javascript, JSP.}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! ! Syntax highlighting ! Function list ! Symbol database <br />(ctags or equiv.) ! Bracket matching ! Auto indentation ! Auto completion ! Code folding ! Text folding ! Compiler integration |- ! nowrap {{rh}} | [[ne (text editor)|ne]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[NEdit]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{ya}}<br />{{efn|name=notepadPPFunctionList|Notepad++ comes with Function List support, and it can be enhanced via plugins.}} | {{ya}}<br /><ref name="notepadPPNppTags">{{Cite web|url=https://github.com/ffes/npptags|title=GitHub - ffes/npptags: Universal Ctags plug-in for Notepad++.|date=March 7, 2019|via=GitHub}}</ref><ref name="notepadPPNppConnections">{{Cite web|url=https://github.com/vladk1973/npp.connections|title=NotePad++ Plugin. Allows to connect to SQL Servers, execute SQL commands and views results: vladk1973/npp.connections|date=June 21, 2019|via=GitHub}}</ref> | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=notepadPPAutoComplete|Notepad++ installs with auto complete list for multiple programming languages. Has user option to add additional personalized auto complete list(s).}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[nvi]] | {{na}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | <!-- syntax -->{{na}} | <!-- function list -->{{na}} | <!-- symbol db -->{{na}} | <!-- bracket matching -->{{na}} | <!-- auto indent -->{{na}} | <!-- autocomplete -->{{na}} | <!-- code folding -->{{na}} | <!-- text folding --> {{na}} | <!-- compiler integration -->{{ya}}<br />external{{efn|name=samext}} |- ! nowrap {{rh}} | [[SciTE]] | {{ya}} | {{na}}<br />{{efn|name=SciTE_function_list|''Function list (and stuff) available in Ru-Board build, ver 1.79.66Ru and later''}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Smultron]] | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{na}} | {{dunno}} | {{dunno}} | {{na}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextEdit]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=textmateAutoComplete|''TextMate'': Auto complete: Supported language bundles}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[TextPad]] | {{ya}} | {{na}} | {{ya}}<br />Plug{{nbh}}in{{efn|name=TextpadCtagList|''Textpad'' uses an add-on ([http://www.textpad.com/add-ons/])}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in{{efn|name=TextWranglerCompilerIntgn|''TextWrangler'' can integrate with a compiler if you write a shell script that takes flag input of the code and compiles it. You place this in ~/Library/Application Support/TextWrangler/Unix Support/Unix Filters/. It should show in the #! menu.}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in<ref name="TseCtagList">{{Cite web|url=http://www.semware.com/html/tseprofiles.php|title=TSE-Pro Files|website=www.semware.com}}</ref> | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=theSemwareEditorAutoComplete|''The Semware Editor'': Auto complete: Supported via supplied/user-created lists.}} | {{Partial}}<br />{{efn|name=theSemwareEditorTextFolding|''The Semware Editor'': Text folding: Compressed view possible.}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|Not in the Linux version.}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br /><{{efn|name=veditAutoComplete|''Vedit'': Auto complete: Template editing, plus 3rd party macro for expanding symbols from tags database.}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{na}} | {{na}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in<ref name="vimFunctionList">''Vim'' has a popular [http://vim-taglist.sourceforge.net TagList] plug{{nbh}}in that provides a function list.</ref> | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{dunno}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{na}} | {{ya}} |-valign=top ! ! Syntax highlighting ! Function list ! Symbol database <br />(ctags or equiv.) ! Bracket matching ! Auto indentation ! Auto completion ! Code folding ! Text folding ! Compiler integration |- |} === 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 [[Indentation (typesetting)|indenting]] to the same level as the line above, or intelligent indenting that is language specific, e.g., ensuring a given [[indent style]]. * '''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== {{sticky header}}{{sort under}} {| class="wikitable sticky-header sortable" style="max-width: 30em; table-layout: fixed" |+ Text editor support for other programming features |-valign=bottom ! ! [[shell (computing)#Text (CLI) shells|Text shell]] integration ! [[shell (computing)#Graphical (GUI) shells|Graphical shell]] integration ! [[macro (computer science)|Macro language]] ! [[collaborative real-time editor|Collaborative editing]] ! [[#ref_lfs|Large file support]] ! Long line support ! Multi-line [[regular expression|regex]] support{{efn|name=multi_line_regex|''Multi-line regex support'' Support for expressions spanning several lines (e.g. "\n\n(.+)\n\n")}} ! Search in files |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{ya}} | {{ya}} | {{ya}}<br />Extensible | {{na}} | {{dunno}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | AkelPad | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{okay | memory}} | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=alphaMacro|''Alpha'' Macro support via [[AppleScript]], [[Tcl]] or text factories.}} | {{na}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] | {{na}}<br /><ref>{{Cite web|url=https://github.com/atom/atom/issues/14490|title=Feature Request: Integrated Shell/Terminal Access · Issue #14490 · atom/atom|website=GitHub}}</ref> | {{dunno}} | {{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://atom.io/packages/atom-macros|title=atom-macros|website=Atom|date=8 June 2022 }}</ref> | {{ya}} | {{na}} ~27{{nbsp}}MB | {{Maybe|[[Line wrap and word wrap#Soft and hard returns|Soft-wrapping]]}} | {{na}}<br /><ref>{{Cite web|url=https://github.com/atom/find-and-replace/issues/398|title=Multi-line find and replace in project · Issue #398 · atom/find-and-replace|website=GitHub}}</ref> | {{ya}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=bbeditMacro|''BBEdit'' Macro support via [[AppleScript]], [[Perl]], [[Python (programming language)|Python]], [[Lasso (programming language)|Lasso]], [[Unix shell|shell]] scripts or text factories.}} | {{na}} | {{okay | memory}}<br /><ref name="bbeditBigFile">"Handling large files presents no intrinsic problems for ''BBEdit'', though some specific operations may be limited when dealing with files over 2GB in size." [http://www.barebones.com/support/bbedit/faqs.html BBEdit FAQs] {{webarchive|url=https://web.archive.org/web/20190729151137/http://www.barebones.com/support/bbedit/faqs.html |date=2019-07-29 }}.</ref> | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | Bluefish | {{na}} | {{ya}} | {{dunno}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}} | {{ya}} | {{ya}}<br />Extensible | {{na}} | {{na}} | {{dunno}} | {{Partial}} | {{ya}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{na}} | {{ya}}<br />{{efn|name=codaMacroLanguage|''Coda'' offers macros via AppleScript, text "clips,"or plug{{nbh}}ins (Cocoa apps or any installed scripting language).}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{na}} | {{ya}} | {{ya}} | {{na}} | {{okay | memory}}<br />{{efn|name|contextBigFile|''ConTEXT'' claims Large File Support but load time is proportional to file size and a 1 GB file gave an Out of Memory error.{{original research inline|date=January 2021}} }} | {{dunno}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{na}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{na}} | {{dunno}} |- ! nowrap {{rh}} | CudaText | {{na}} | {{na}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{ya}} | {{na}} | {{ya}} | {{ya}}<br />via [[mkfifo]] | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} |- ! nowrap {{rh}} | [[Editra]] | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}}<br />2{{nbsp}}GB | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}}<br>16TB | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}} | {{dunno}} | {{ya}}<br />Plug{{nbh}}in | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=pythonMacro|''Cssed'' Macro support via [[Python (programming language)|Python]].}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{dunno}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://oliver.github.io/gedit-file-search/|title=Gedit File Search Plugin|website=oliver.github.io}}</ref> |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{yes|2.3 EB}}<ref>{{cite web |title=GNU Emacs 23.2 NEWS -- history of user-visible changes. |url=https://www.gnu.org/software/emacs/NEWS.23.2}}</ref><ref>{{cite web|url=https://www.gnu.org/software/emacs/manual/html_node/emacs/Buffers.html|title=Buffers|quote=A buffer's size cannot be larger than some maximum, which is defined by the largest buffer position representable by Emacs integers. This is because Emacs tracks buffer positions using that data type. For typical 64-bit machines, this maximum buffer size is 2^{61} - 2 bytes, or about 2 EiB. For typical 32-bit machines, the maximum is usually 2^{29} - 2 bytes, or about 512 MiB. Buffer sizes are also limited by the amount of memory in the system.}}</ref><ref>{{cite web |title=Does Emacs have problems with large files? |url=https://www.gnu.org/software/emacs/manual/html_node/efaq/Problems-with-very-large-files.html}}</ref><ref>{{cite web |title=GNU emacs manual - Narrowing |url=https://www.gnu.org/software/emacs/manual/html_node/emacs/Narrowing.html}}</ref> | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{na}} | {{ya}} | {{na}} | {{okay | memory}}<br /><ref>{{Cite web|url=http://www.fi.infn.it/info/jed/jed.pdf|title=The JED Editor|access-date=2009-12-08|archive-url=https://web.archive.org/web/20120105154439/http://www.fi.infn.it/info/jed/jed.pdf|archive-date=2012-01-05|url-status=dead}}</ref> | {{ya}} | {{na}} | {{ya}}<br />Plug{{nbh}}ins |- ! nowrap {{rh}} | [[jEdit]] | {{ya}} | {{na}} | {{ya}} | {{na}} | {{na}} (heap){{efn|jEdit: Limited by Java heap size.<ref>{{Cite web|url=https://marc.info/?l=jedit-users&m=113229204827690&w=2|title='Re: [ jEdit-users ] Big file take AGES' - MARC|website=marc.info}}</ref>}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{ya}} | {{na}} | {{ya}} | {{na}} | {{ya}}{{citation needed|date=April 2015}} | {{dunno}} | {{dunno}} | {{ya}}<br /><ref>{{cite web|url=https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/man.md#searching-for-text|title=JOE - Joe's Own Editor|website=JOE - Joe's own editor / Mercurial / [2e4f45] /docs/man.md|access-date=23 October 2015|quote=The search covers all loaded buffers.}}</ref> |- ! nowrap {{rh}} | [[JOVE]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{okay | memory}} | {{dunno}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{na}}<br /><ref name="kwrite_fs">kwrite-devel, [http://lists.kde.org/?l=kwrite-devel&m=123831792812001&w=2 Large Files open slowly due to futile Syntax-Highlighting]</ref> | {{Maybe}}<br />{{efn|name=kate_config|Kate: Line length is limited by default. The limit can be removed, but long lines may cause poor performance.<ref>{{Cite web|url=https://docs.kde.org/stable5/en/applications/katepart/config-dialog.html#pref-open-save|title=The Kate Handbook}}</ref>}} | {{ya}} | {{ya}}<br />Plug{{nbh}}in |- ! nowrap {{rh}} | [[KEDIT]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}}{{citation needed|date=October 2019}} | {{Maybe|10Kb}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Komodo Edit]] | {{dunno}} | {{dunno}} | {{ya}}<br /><ref name="Komodo_Macro">{{Cite web|url=http://docs.activestate.com/komodo/9.2/macros.html|title=Macros|website=docs.activestate.com}}</ref> | {{na}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo IDE]] | {{dunno}} | {{dunno}} | {{ya}}<br /><ref name="Komodo_Macro"/> | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KWrite]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}}<br /><ref name="kwrite_fs"/> | {{na}}<br /><ref>Lines longer than ~700 characters frequently cause crashes. [https://docs.kde.org/trunk5/en/applications/katepart/config-dialog.html#pref-open-save KatePart documentation] {{Webarchive|url=https://web.archive.org/web/20180107061054/https://docs.kde.org/trunk5/en/applications/katepart/config-dialog.html#pref-open-save |date=2018-01-07 }} (which is also the KWrite documentation, see [https://docs.kde.org/trunk5/en/applications/kwrite/index.html here] {{Webarchive|url=https://web.archive.org/web/20180107061309/https://docs.kde.org/trunk5/en/applications/kwrite/index.html |date=2018-01-07 }})</ref> | {{na}} | {{dunno}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{ya}} | {{na}} | {{na}} | {{na}}<br />{{efn|LE text editor locks the file and warns if someone else has changed the file}} | {{okay | memory}}<br />{{efn|LE text editor can view and edit large files or their parts in [[mmap]]-shared mode}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] | {{na}} | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{dunno}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Metapad]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{okay | memory}}<br /><ref>metapad FAQ, [http://liquidninja.com/metapad/faq.html#Q4 Loading Large Files]</ref> | {{dunno}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[MS-DOS Editor|EDIT (MS-DOS)]] | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} (64~300{{nbsp}}KB) | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[DR-DOS|EDIT (DR-DOS)]] | {{na}} | {{na}} | {{na}} | {{na}} | 2{{nbsp}}GB, for as long as there is disk swap space for two temporary files | {{ya}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! ! Text shell integration ! Graphical shell integration ! Macro language ! Collaborative editing ! Large file support ! Long line support ! Multi-line regex support ! Search in files |- ! nowrap {{rh}} | [[NEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{okay | memory}} | {{dunno}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br /><ref>{{Cite web|url=https://www.youtube.com/watch?v=iz-SVru1cKo |archive-url=https://ghostarchive.org/varchive/youtube/20211212/iz-SVru1cKo| archive-date=2021-12-12 |url-status=live|title=Notepad++ - How to Remotely work on the Same File in Real Time|date=11 January 2016 |via=www.youtube.com}}{{cbignore}}</ref> | {{ya}}<br />2GB<ref>{{Cite web|url=https://community.notepad-plus-plus.org/topic/16960/text-limit|title=Text limit|date=January 16, 2019|website=Community}}</ref> | {{ya}}<br /><ref>{{cite web|url=http://docs.notepad-plus-plus.org/index.php/Managing_Line_Lengths|title=Configurable through settings}}</ref> | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[nvi]] | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{dunno}} | {{dunno}} | {{dunno}} | {{na}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}}{{citation needed|date=October 2019}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{okay | memory}}<br /><ref>{{Cite web|url=http://forum.pspad.com/read.php?4,49191|title=PSPad forum / Bug report / Hlášení chyb / cannot open large file|website=forum.pspad.com}}</ref> | {{dunno}} | {{ya}}<br />with plug{{nbh}}in | {{ya}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{ya}} | {{na}} | {{ya}} | {{na}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}}<br />external{{efn|name=samext}} |- ! nowrap {{rh}} | [[SciTE]] | {{dunno}} | {{dunno}} | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}}<br />2{{nbsp}}TB | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Smultron]] | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{ya}} | {{na}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[TextEdit]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[TextPad]] | {{na}} | {{ya}} | {{ya}} | {{na}} | {{okay | memory}}<br /><ref name="MozillaZine">{{Cite web|url=http://kb.mozillazine.org/Edit_large_mbox_files|title=Edit large mbox files - MozillaZine Knowledge Base|website=kb.mozillazine.org}}</ref> | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{okay | memory}}<br /><ref name="textwranglerBigFile">"''TextWrangler'' is a RAM-based editor, and it uses system memory to hold open files. TextWrangler also represents open documents as Unicode, which uses two bytes for each character. Combined with an internal Mac OS X limitation, this means that you can open files up to 384 megabytes in size." [http://www.barebones.com/support/textwrangler/faqs.html TextWrangler FAQs] {{webarchive|url=https://web.archive.org/web/20191010173050/http://www.barebones.com/support/textwrangler/faqs.html |date=2019-10-10 }}.</ref> | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} Only in special DOS multi-user version | {{ya}}<br />2{{nbsp}}GB | {{ya}} | {{dunno}} | {{ya}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}}<br />{{efn|name=ultraEditBigFile|UltraEdit has no real limit on file size - and can easily open, edit, and save large text files in excess of 4 GB! [https://www.ultraedit.com/support/tutorials-power-tips/ultraedit/large-file-handling.html].}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{ya}}{{citation needed|date=October 2019}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{ya}} | {{na}} | {{ya}} | {{na}} | {{na}} ~65{{nbsp}}MB | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />with plug{{nbh}}in<ref>{{Cite web|url=https://github.com/FredKSchott/CoVim|title=GitHub - FredKSchott/CoVim: Collaborative Editing for Vim.|date=November 13, 2019|via=GitHub}}</ref> | {{okay | memory}}<br />{{efn|2GB with 32 Bits, on a 64 Bit system it depends on the available virtual memory.}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />with plug{{nbh}}in<ref>{{Cite web|url=https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare|title=Live Share - Visual Studio Marketplace|website=marketplace.visualstudio.com}}</ref> | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{okay | on 64-bit OS}}<br />{{efn|name=EmacsFSLimit|Emacs: 64-bit compilation on 64-bit OS can handle 2 GB files, otherwise the limit is 512 [[MiB]]. [https://www.gnu.org/software/emacs/NEWS.23.2]}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} | {{dunno}} |- |-valign=top ! ! Text shell integration ! Graphical shell integration ! Macro language ! Collaborative editing ! Large file support ! Long line support ! Multi-line regex support ! Search in files |} <span id="ref_lfs"></span> '''Large file support:''' {| cellpadding=1 style="margin-left:1em" |- | {{ya}} | = Larger than 4 GiB ([[Large file support|LFS]]) | {{ya}}2{{nbsp}}GB | = Larger than 1 GB, not limited by memory |- | {{okay | memory}} | = Limited by available memory | {{na}} (64 KB) | = Some limit less than available memory (give max size if known) |} 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.<ref name="large_text_editors">''Comparison of Windows Text Editors for Large Files'': [http://www.knudvaneeden.com/tinyurl.php?urlKey=url000400 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]]. ==Key bindings== Support for [[keyboard shortcut#Customization|custom key bindings]]. {| class="wikitable sortable" style="max-width: 30em; table-layout: fixed" |+ Text editor support for key bindings. |-valign=bottom ! ! Dynamically customizable ! [[IBM Common User Access|IBM CUA]] ! [[macOS]] ! [[Vi keys|Vi]] ! [[Emacs]] ! [[Pico (text editor)|Pico]] ! [[WordStar]] ! [[WordPerfect]] ! [[Brief (text editor)|Brief]] |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | AkelPad |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Alphatk]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[BBEdit]]<ref name="barebones.com/products/bbedit/comparison">{{Cite web|url=http://www.barebones.com/products/bbedit/comparison.html|title=Bare Bones Software {{pipe}} BBEdit Comparison Chart|website=www.barebones.com}}</ref><ref>{{Cite web|url=http://www.barebones.com/products/bbedit/features.html|title=Bare Bones Software {{pipe}} Features|website=www.barebones.com}}</ref> |{{ya}} |{{dunno}} |{{ya}} |{{dunno}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | Bluefish |{{ya}} |{{dunno}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] |{{ya}} |{{Partial}} |{{ya}} |{{ya}}<br />Plug{{nbh}}in |{{ya}}<br />Plug{{nbh}}in |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] |{{ya}} |{{dunno}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[ConTEXT]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Crimson Editor]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | CudaText |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[Editra]] |{{na}} |{{na}} |{{na}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[EmEditor]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[epsilon]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{ya}} |- ! nowrap {{rh}} | [[Geany]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[gedit]] |{{ya}}<br />{{efn|It is possible to customize all Gedit shortcuts because it is [[Gtk]] based.}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] |{{ya}} |{{ya}} |{{ya}} |{{ya}} |{{ya}} |{{Partial}}<br /><ref name="emacs_pico">pico uses most of Emacs's motion and deletion commands: ^F ^B ^P ^N ^D etc. See [http://homepages.math.uic.edu/~diochnos/ta/2008/mcs260/terminal/pico_tutorial.pdf ''Pico: A Unix text editor''] {{webarchive|url=https://web.archive.org/web/20120905115648/http://homepages.math.uic.edu/~diochnos/ta/2008/mcs260/terminal/pico_tutorial.pdf |date=2012{{nbh}}09{{nbh}}05 }} retrieved 2012{{nbh}}01{{nbh}}09.</ref> |{{ya}}<br /><ref name="ws-mode.el">GNU Emacs can have Wordstar emulation, with the command M-x wordstar-mode, as found from [http://web.mit.edu/Emacs/source/emacs/lisp/emulation/ws-mode.el ws-mode.el] retrieved 2017{{nbh}}03{{nbh}}14. See also the "Emulation" section of the previous [https://ftp.gnu.org/old-gnu/Manuals/emacs/html_node/emacs_467.html GNU Emacs manual]. The WordStar mode, however, has [https://github.com/emacs-mirror/emacs/blob/master/lisp/obsolete/ws-mode.el been obsolete] since GNU Emacs 24.5.</ref> |{{ya}}<br /><ref name="gnu.org">{{cite web |url=https://ftp.gnu.org/old-gnu/Manuals/emacs/html_node/emacs_467.html |title=AC.27 Emulation |work=GNU Emacs manual |access-date=2021-12-06 }}</ref> |{{ya}}<br /><ref name="gnu.org"/> |- ! nowrap {{rh}} | [[JED (text editor)|JED]] |{{ya}} |{{Partial}}<br />{{efn|name=JedCUAkeys|The JED base release comes with a basic CUA emulation, but it doesn't bother to bind lots of useful editor features. Also, like some other editors, 1 side of a region must be at the cursor. The main extension collections [http://jedmodes.sourceforge.net jedmodes]/[https://packages.debian.org/stretch/jed-extra jed-extra] and the [https://gitlab.com/dram/red "Red Project"] have improved versions, tackling the former problem in particular.}} |{{dunno}} |{{ya}} |{{ya}} |{{dunno}} |{{ya}} |{{dunno}} |{{ya}} |- ! nowrap {{rh}} | [[jEdit]] |{{ya}} |{{dunno}} |{{ya}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]]<ref>{{cite web|url=https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/man.md|title=JOE - Joe's Own Editor|website=JOE - Joe's own editor / Mercurial / [2e4f45] /docs/man.md|access-date=23 October 2015|quote=JOE also emulates several other editors. JSTAR is a close imitation of WordStar [...]. JPICO is a close imitation of the Pine mailing system's PICO editor [...]. JMACS is a GNU-EMACS imitation. [...] Key binding tables are defined. You can define as many as you like [...].}}</ref> |{{ya}} |{{na}} |{{na}} |{{na}} |{{ya}} |{{ya}} |{{ya}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[JOVE]] |{{ya}} |{{na}} |{{na}} |{{na}} |{{ya}} |{{na}} |{{ya}}<br /><ref>{{Cite web|url=http://www.megalextoria.com/usenet-archive/news046f1/b66/net/sources/00005623.html|title=Usenet|website=www.megalextoria.com}}</ref> |{{na}} |{{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] |{{ya}} |{{dunno}} |{{dunno}} |{{na}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Light Table (software)|Light Table]] |{{ya}} |{{Partial}} |{{dunno}} |{{ya}}<br />Plug{{nbh}}in |{{ya}}<br />Plug{{nbh}}in |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] |{{ya}} |{{na}} |{{na}} |{{ya}}<br /><ref name="kateVi">''Kate'' supports an optional [http://hamberg.no/erlend/2008/11/24/the-vi-input-mode-for-kate-is-done/ VI Input Mode] {{webarchive|url=https://web.archive.org/web/20090228202026/http://hamberg.no/erlend/2008/11/24/the-vi-input-mode-for-kate-is-done/ |date=2009{{nbh}}02{{nbh}}28 }}.</ref> |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[KEDIT]] |{{ya}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[Komodo Edit]] |{{ya}} |{{dunno}} |{{ya}} |{{ya}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Komodo IDE]] |{{ya}} |{{dunno}} |{{ya}} |{{ya}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[KWrite]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Metapad]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[mg (text editor)|mg]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |<!-- Emacs -->{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{ya}} |{{ya}} |<!-- WordStar -->{{ya}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] |{{ya}} |{{na}} |{{na}} |{{na}} |{{Partial}}<br /><ref name="pico_emacskey"/> |{{ya}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[NEdit]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] |{{na}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[Notepad++]] |{{Partial}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[nvi]] |{{dunno}} |{{dunno}} |{{dunno}} |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] |{{na}} |{{na}} |{{na}} |{{na}} |{{Partial}}<br /><ref name="pico_emacskey">pico (and nano) uses most of Emacs's motion and deletion commands: ^F ^B ^P ^N ^D etc. See [http://homepages.math.uic.edu/~diochnos/ta/2008/mcs260/terminal/pico_tutorial.pdf ''Pico: A Unix text editor''] {{webarchive|url=https://web.archive.org/web/20120905115648/http://homepages.math.uic.edu/~diochnos/ta/2008/mcs260/terminal/pico_tutorial.pdf |date=2012{{nbh}}09{{nbh}}05 }} retrieved 2012{{nbh}}01{{nbh}}09.</ref> |{{ya}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[PolyEdit]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[PSPad]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[RJ TextEd]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[SciTE]] |{{Partial}}<br />{{efn|In ''SciTE'', custom keystrokes may be assigned to Lua scripts, external programs or lexers (highlighters).}} |{{dunno}} |{{dunno}} |{{na}} |{{na}} |{{na}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[SlickEdit]] |{{ya}}<br />{{efn|name=vsbind|''SlickEdit'' provides emulation of Visual Studio, Visual C++ 6, CodeWright, Epsilon and ISPF key bindings in addition to those given in the table.}} |{{ya}} |{{ya}}<br />{{efn|name=vsosxbind|''SlickEdit'' supports CodeWarrior, Xcode and BBEdit key binding emulation.}} |{{partial}}<br />{{efn|name=vsvimbind|''SlickEdit'' includes support of vi key bindings, the ex command line and some, but not all Vim extensions.}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{ya}} |- ! nowrap {{rh}} | [[Smultron]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[SubEthaEdit]] |{{na}} |{{na}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[TED Notepad]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[TextEdit]] |{{na}} |{{na}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[TextMate]] |{{na}} |{{na}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[TextPad]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[TextWrangler]]<ref name="barebones.com/products/bbedit/comparison"/><ref>{{Cite web|url=http://www.barebones.com/products/textwrangler/features.html|title=Bare Bones Software {{pipe}} TextWrangler Features|website=www.barebones.com|access-date=2009-06-05|archive-url=https://web.archive.org/web/20170811014917/http://www.barebones.com/products/textwrangler/features.html|archive-date=2017-08-11|url-status=dead}}</ref> |{{ya}} |{{dunno}} |{{ya}} |{{na}} |{{ya}} |{{na}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[The SemWare Editor]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[UltraEdit]] |{{ya}} |{{dunno}} |{{na}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[VEDIT]] |{{ya}} |{{ya}} |{{na}} |{{na}}<br /><ref name="veditViKeyBindins">''Vedit'': Old Unix and QNX versions could emulate Vi 100%. Windows version doesn't come with vi emulation.</ref> |{{na}} |{{na}} |{{ya}} |{{ya}} |{{ya}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] |{{ya}} |{{na}} |{{na}} |{{ya}} |{{na}} |{{na}} |{{na}} |{{na}} |{{na}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] |{{Partial}} |{{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://github.com/fabi1cazenave/cua-mode.vim|title=GitHub - fabi1cazenave/cua-mode.vim: Make CTRL-ZXCV behave like in Notepad.|date=February 26, 2019|via=GitHub}}</ref> |{{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://github.com/likaci/ViFinder|title=GitHub - likaci/ViFinder: Vim like Keybinding FileManager for OS X.|date=October 13, 2019|via=GitHub}}</ref> |{{ya}}<br />{{efn|name="vimvibind|''Vim'' emulates vi keys fully when in 'compatible' mode}} |{{ya}}<br />Plug{{nbh}}in{{efn|name=vimemacsbind|''Vim'' With a script<ref>{{Cite web|url=https://www.vim.org/scripts/script.php?script_id=300|title=Vimacs - Vim-Improved eMACS: Emacs emulation for Vim : vim online|website=www.vim.org}}</ref>}} |{{dunno}} |{{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://github.com/sez11a/VimStar|title=Vim distribution optimized for writing|date=Sep 16, 2021|via=GitHub}}</ref> |{{na}} |{{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://www.vim.org/scripts/script.php?script_id=265|title=brief.vim - Brief editor key binding emulation in Vim : vim online|website=www.vim.org}}</ref> |- ! nowrap {{rh}} | [[Visual Studio Code]] |{{ya}} |{{na}} |{{ya}} |{{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://marketplace.visualstudio.com/items?itemName=vscodevim.vim|title=Vim - Visual Studio Marketplace|website=marketplace.visualstudio.com}}</ref> |{{ya}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://marketplace.visualstudio.com/items?itemName=nisheetjain.emacs|title=Emacs - Visual Studio Marketplace|website=marketplace.visualstudio.com}}</ref> |{{na}} |{{na}} |{{na}} |{{Partial}}<br />Plug{{nbh}}in<ref>{{Cite web|url=https://marketplace.visualstudio.com/items?itemName=rkdawenterprises.brief4vscode|title=Brief Editor Keymap Emulation - Visual Studio Marketplace|website=marketplace.visualstudio.com}}</ref> |- ! nowrap {{rh}} | [[XEmacs]] |{{ya}} |{{ya}} |{{ya}} |{{ya}} |{{ya}} |{{Partial}}<br /><ref name="emacs_pico"/> |{{ya}}<br /><ref name="ws-mode.el"/> |{{ya}}<br /><ref name="gnu.org"/> |{{ya}}<br /><ref name="gnu.org"/> |- ! nowrap {{rh}} | [[NEdit|XNEdit]] |{{ya}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |-valign=top ! ! Dynamically customizable ! IBM CUA ! macOS ! Vi ! Emacs ! Pico ! WordStar ! WordPerfect ! Brief |} === Notes, bugs === * Vim: custom maps of Ctrl-1 .. Ctrl-9, Ctrl-0 cannot be set, nor is Control-Shift-<char> distinguished from Ctrl-<char>.<ref>{{Cite web|url=http://vim.1045645.n5.nabble.com/unable-to-map-ctrl-1-td1186261.html|title=Vim - General - unable to map ctrl-1|website=vim.1045645.n5.nabble.com|access-date=2017-11-30|archive-date=2017-12-01|archive-url=https://web.archive.org/web/20171201044447/http://vim.1045645.n5.nabble.com/unable-to-map-ctrl-1-td1186261.html|url-status=dead}}</ref><ref>{{Cite web|url=http://vim.1045645.n5.nabble.com/How-to-map-say-Ctrl-Shift-B-td1183582.html|title=Vim - General - How to map (say) Ctrl-Shift-B|website=vim.1045645.n5.nabble.com|access-date=2017-11-30|archive-date=2017-12-01|archive-url=https://web.archive.org/web/20171201044609/http://vim.1045645.n5.nabble.com/How-to-map-say-Ctrl-Shift-B-td1183582.html|url-status=dead}}</ref> * 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. {| class="wikitable sortable" style="max-width: 30em; table-layout: fixed" |+ Text editor support for remote file editing over [[Lists of network protocols|network protocols]] |-valign=bottom ! ! [[File Transfer Protocol|FTP]] ! [[Hypertext Transfer Protocol|HTTP]] ! [[Secure Shell|SSH]] ! [[WebDAV]] |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | <!-- FTP -->{{na}} | <!-- HTTP -->{{na}} | <!-- SSH -->{{na}} | <!-- WebDAV -->{{na}} |- ! nowrap {{rh}} | AkelPad | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{na}} | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{na}}<br /><ref name="context.cx">[http://www.context.cx Text Editor Features] {{Webarchive|url=https://archive.today/20071218233757/http://www.context.cx/ |date=2007-12-18 }} at ConTEXT.cx</ref> | {{dunno}} | {{na}}<br /><ref name="context.cx"/> | {{dunno}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | CudaText | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Editra]] | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Geany]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}}<br />plug{{nbh}}in<ref name="ReferenceA">''jEdit'' FTP and [[SSH file transfer protocol|SFTP]] are supported via the FTP plug{{nbh}}in.</ref> | {{ya}}<br /><ref>''jEdit'': "[http://www.jedit.org/FAQ/plugins.html#id2554545 HTTP is supported natively]"</ref> | {{ya}}<br />plug{{nbh}}in<ref name="ReferenceA"/> | {{ya}}<br />[http://www.cycom.co.uk/howto/webdav.html plug{{nbh}}in]. |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[JOVE]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KEDIT]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Komodo IDE]] | <!-- FTP -->{{ya}}<br />FTP, FTPS, SFTP | <!-- HTTP -->{{na}} | <!-- SSH -->{{ya}} | <!-- WebDADV -->{{na}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Metapad]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{dunno}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{na}} | {{na}} | {{ya}} | {{na}} |- ! ! [[File Transfer Protocol|FTP]] ! [[Hypertext Transfer Protocol|HTTP]] ! [[Secure Shell|SSH]] ! [[WebDAV]] |- ! nowrap {{rh}} | [[NEdit]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}}<br />Plug{{nbh}}in for FTP, FTPS, FTPES, SFTP | {{na}} | {{ya}}<br />Plug{{nbh}}in | {{na}} |- ! nowrap {{rh}} | [[nvi]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}}<br />FTP, SFTP | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[SciTE]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Smultron]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{na}} | {{na}} | {{na}} |- |- ! nowrap {{rh}} | [[TED Notepad]] | {{na}}<br /><ref name="jsimlo.sk">{{Cite web|url=http://jsimlo.sk/notepad/manual/wiki/index.php/TED_Notepad_Manual|title=TED Notepad|website=jsimlo.sk}}</ref> | {{dunno}} | {{na}}<br /><ref name="jsimlo.sk"/> | {{dunno}} |- ! nowrap {{rh}} | [[TextEdit]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextPad]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}}<br />FTP, SFTP<ref>{{Cite web|url=http://www.barebones.com/products/textwrangler/featuresutility.html|title=Bare Bones Software {{pipe}} TextWrangler Tour|website=www.barebones.com|access-date=2019-11-16|archive-date=2019-11-29|archive-url=https://web.archive.org/web/20191129002115/http://www.barebones.com/products/textwrangler/featuresutility.html|url-status=dead}}</ref> | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}}<br /><ref name="netrw">''Vim'' Supported via [http://www.vim.org/scripts/script.php?script_id=1075 netrw] plug{{nbh}}in distributed in the standard Vim installation.</ref> | {{ya}}<br /><ref name="netrw"/> | {{ya}}<br /><ref name="netrw"/> | {{ya}}<br /><ref name="netrw"/> |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{ya}}<br />Plug{{nbh}}in<ref name="vscodeRemote">{{Cite web|url=https://marketplace.visualstudio.com/items?itemName=mkloubert.vscode-remote-workspace|title=Remote Workspace - Visual Studio Marketplace|website=marketplace.visualstudio.com|access-date=2019-05-09|archive-date=2019-05-10|archive-url=https://web.archive.org/web/20190510121323/https://marketplace.visualstudio.com/items?itemName=mkloubert.vscode-remote-workspace|url-status=dead}}</ref> | {{ya}}<br />Plug{{nbh}}in (limited?)<ref name="vscodeRemote"/> | {{ya}}<br />Plug{{nbh}}in<ref name="vscodeRemote"/> | {{ya}}<br />Plug{{nbh}}in<ref name="vscodeRemote"/> |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{na}} | {{na}} | {{na}} | {{na}} |-valign=top ! ! [[File Transfer Protocol|FTP]] ! [[Hypertext Transfer Protocol|HTTP]] ! [[Secure Shell|SSH]] ! [[WebDAV]] |- |} ==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. {{static row numbers}}{{sticky header}} {| class="wikitable sortable static-row-numbers sticky-header" style="max-width: 30em;" |+ Text editor support for some of the most common [[character encoding]]s |-valign=bottom ! ! [[ASCII]] ! [[ISO/IEC 8859|ISO-8859]] ! [[Code page 437|DOS (OEM)]] ! [[EBCDIC]] ! [[UTF-8]] ! [[UTF-16]] |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | AkelPad | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |{{dunno}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|name=DosOemFont|when choosing e.g. Terminal font}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|name=DosOemFont}} | {{na}} | {{Partial}} | {{na}} |- ! nowrap {{rh}} | CudaText | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Editra]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}}<br />{{efn|name=gnuEmacsUTF8|''GNU Emacs'': While GNU Emacs supports the UTF-8 encoding, it doesn't fully support the Unicode standard, since it doesn't fully support the Unicode Bidirectional Algorithm (see comment in the 'Right-to-left and bidirectional text' section below).}} | {{ya}}<br />{{efn|name=gnuEmacsUTF16|''GNU Emacs'': While GNU Emacs supports the UTF-16 encoding, it doesn't fully support the Unicode standard, since it doesn't fully support the Unicode Bidirectional Algorithm (see comment in the 'Right-to-left and bidirectional text' section below).}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{Partial}}<br />{{efn|name=Jed_UTF16|''JED''s [http://www.paneura.com/~dino/wjed.html Windows version] comes with a pair of scripts that can convert UTF-16 text files (actually anything iconv can convert) to and from JED's internal UTF-8. The [https://gitlab.com/dram/red Red Project] releases include an enhanced version of these scripts.}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[JOVE]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KEDIT]] | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|name=DosOemFont}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Komodo Edit]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo IDE]] | {{ya}} | {{ya}} | {{na}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Metapad]] | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|name=DosOemFont}} | {{na}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{ya}} | {{dunno}} | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[NEdit]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|name=DosOemFont}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{ya}} | {{ya}} | {{dunno|plug{{nbh}}in?}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[nvi]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}}<br />{{efn|name=nviUTF8Gentoo|''nvi'' Gentoo <!-- Unofficial patch? -->}} | {{na}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{ya}} | {{na}} | {{na}} | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{ya}} | {{ya}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[SciTE]]{{efn|SciTE can open files in UTF or one single-byte encoding specified in a configuration file.}} | {{ya}} | {{na}} | {{na}} | {{na}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Smultron]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextEdit]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextPad]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{Partial}}<br />{{efn|name=TextPad_Unicode|''TextPad'' can load and save UTF-8 and UTF-16 text files, but cannot use or even preserve characters outside of the system encoding.<ref>{{Cite web|url=https://forums.textpad.com/viewtopic.php?t=4777|title=Community :: View topic - Unicode Conformance|website=forums.textpad.com}}</ref>}} | {{Partial}}<br />{{efn|name=TextPad_Unicode}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{ya}}<br />{{efn|name=TseIso_8859_1|when choosing e.g. New Courier font}} | {{Partial}}<br />{{efn|name=DosOemFont}} | {{ya}}<br />Plug{{nbh}}in | {{na}} | {{na}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}} | {{ya}} | {{ya}} | {{ya}} | {{Partial}}<br />{{efn|name=Vedit_Unicode|''Vedit'' can convert UTF-8 and UTF-16 files to Windows character set and back. Characters not included in Windows charset can be preserved.}} | {{Partial}}<br />{{efn|name=Vedit_Unicode}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{ya}} | {{dunno}} | {{dunno}} | {{dunno}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}} | {{ya}} | {{partial}}<br />{{efn|name=vim_ebcdic|''Vim'' supports EBCDIC when compiled on a system that uses the EBCDIC character set.}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{ya}} | {{ya}} | {{ya}} | {{na}}<br /><ref>{{Cite web|url=https://github.com/microsoft/vscode/issues/49891|title=Support EBCDIC encodings · Issue #49891 · microsoft/vscode|website=GitHub}}</ref> | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}}<br />{{efn|name=XEmacs_Unicode|from version 21.5.29}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{ya}} | {{ya}} | {{dunno}} | {{dunno}} | {{ya}} | {{ya}} |} == Right-to-left and bidirectional text == Support for [[Right-To-Left]] (RTL) texts is necessary for editing some languages like [[Arabic]], [[Persian language|Persian]], [[Hebrew]], and [[Yiddish language|Yiddish]] and the mixture of left to right (LTR) and RTL known as bi-directional ([[Bidirectional text|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.) {| class="wikitable sortable" style="max-width: 30em; table-layout: fixed" |+ Right to left (RTL) & bidirectional (bidi) support |-valign=bottom ! ! Right-to-left (RTL) ! Bi-directional (Bidi) |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{na}} | {{na}} |- ! nowrap {{rh}} | AkelPad | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Alphatk]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Atom (text editor)|Atom]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Editra]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[EmEditor]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Geany]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]] | {{ya}} | {{ya}}<br />{{efn|name=gnuEmacsBidi|''GNU Emacs''<br /><br /> (1) According to a comment in the source file where the bidi support is implemented (http://git.savannah.gnu.org/cgit/emacs.git/tree/src/bidi.c accessed August 15, 2017), GNU Emacs doesn't fully conform to the Unicode Bidirectional Algorithm (Unicode Annex #9, a.k.a. UAX #9) in the way it wraps the lines of a bidi paragraph: "we are violating paragraph 3.4 of UAX#9. which mandates that line breaking shall be done before reordering each screen line separately."<br /><br />(2) According to the online GNU Emacs manual ([https://www.gnu.org/software/emacs/manual/html_node/emacs/Bidirectional-Editing.html#Bidirectional-Editing section 22.19 Bidirectional Editing], accessed August 15, 2017), for the purpose of changing paragraph direction, "Paragraph boundaries are empty lines, i.e., lines consisting entirely of whitespace character". This contrasts with the otherwise ubiquitous convention of regarding the newline marker (LF on Unix derivatives, including macOS, and CR+LF on Windows) as the paragraph separator in plain text documents. However starting with version 26.0.50, the bidi paragraph separator can be customized.}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[jEdit]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[JOVE]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KEDIT]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Komodo Edit]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Komodo IDE]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[KWrite]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Metapad]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{ya}}<br />{{efn|name=minedBidi|''mined'': supports bidi in cooperation with bidi terminal (mlterm, mintty); also supports "poor man's bidi mode"(automatic visual text order right-to-left input) in normal terminal}} | {{ya}}<br />{{efn|name=minedBidi}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{dunno}} | {{dunno}} |- ! ! RTL ! Bidi |- ! nowrap {{rh}} | [[NEdit]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{Partial}}<br />{{efn|name="NotepadppBidi"|''Notepadpp'': Scintilla (Notepad++'s Engine) does not really support bidirectional editing ... Some bidirectional text support added in 4.1.0. https://sourceforge.net/p/scintilla/bugs/757/#01c9}} |- ! nowrap {{rh}} | [[nvi]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[PSPad]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[SciTE]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Smultron]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[TextEdit]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextMate]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[TextPad]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{na}} | {{na}} |- ! nowrap {{rh}} | [[VEDIT]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}}<br />through terminal support |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{na}} | {{ya}} |- ! nowrap {{rh}} | [[XEmacs]] | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{na}} | {{na}} |- |-valign=top ! ! RTL ! Bidi |- |} ==Newline support== {| class="wikitable sortable" style="max-width: 30em; table-layout: fixed" |+ Support for [[newline]] characters in line endings |-valign=bottom ! ! [[Microsoft Windows|Windows]] (CR/LF) ! [[Unix-like]] systems (including [[macOS]])<ref>{{Cite web|url=https://superuser.com/questions/439440/did-mac-os-lion-switch-to-using-line-feeds-lf-n-for-line-breaks-instead-of|title=Did Mac OS Lion switch to using line feeds (LF '\n') for line breaks instead of carriage returns (CR '\r')?|website=Super User}}</ref> (LF) ! [[Classic Mac OS]] (CR) |- ! nowrap {{rh}} | [[Acme (text editor)|Acme]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | AkelPad | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Alphatk]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Atom]] | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[BBEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | Bluefish | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Brackets (text editor)|Brackets]] | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Coda (web development software)|Coda]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ConTEXT]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Crimson Editor]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | CudaText | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[ed (text editor)|ed]] | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Editra]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[EmEditor]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Geany]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[gedit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Emacs#GNU Emacs|GNU Emacs]]{{efn|name=gnuEmacsNewline|''GNU Emacs'': GNU Emacs doesn't regard the newline marker as a paragraph separator in bidi texts. See comment in the 'Right-to-left and bidirectional text' section.}} | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[JED (text editor)|JED]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[jEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Joe's Own Editor|JOE]]<ref>{{cite web|url=https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/man.md#character-sets-and-utf-8|title=JOE - Joe's Own Editor|website=JOE - Joe's own editor / Mercurial / [2e4f45] /docs/man.md|access-date=23 October 2015|quote=character sets must use LF (0x0A) or CR-LF (0x0D - 0x0A) as line terminators [...]. [...] character sets which use CR terminated lines (MACs) will not yet work.}}</ref> | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[JOVE]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Kate (text editor)|Kate]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KEDIT]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo Edit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Komodo IDE]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[KWrite]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[LE (text editor)|LE]] | {{ya}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Metapad]] | {{ya}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[MS-DOS Editor]] | {{ya}} | {{na}} <!-- view only --> | {{na}} |- ! nowrap {{rh}} | [[mined (text editor)|mined]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Nano (text editor)|Nano]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Microsoft Notepad|Notepad]] | {{ya}} | {{na}} | {{na}} |- ! nowrap {{rh}} | [[Notepad++]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[nvi]] | {{dunno}} | {{ya}} | {{dunno}} |- ! nowrap {{rh}} | [[Pico (text editor)|Pico]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[PolyEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[PSPad]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[RJ TextEd]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Sam (text editor)|Sam]] | {{dunno}} | {{dunno}} | {{dunno}} |- ! nowrap {{rh}} | [[SciTE]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[SlickEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Smultron]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[SubEthaEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Sublime Text]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TED Notepad]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextMate]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextPad]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[TextWrangler]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[The SemWare Editor]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[UltraEdit]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[VEDIT]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Vi (text editor)|vi]] | {{na}} | {{ya}} | {{na}} |- ! nowrap {{rh}} | [[Vim (text editor)|Vim]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[Visual Studio Code]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[XEmacs]] | {{ya}} | {{ya}} | {{ya}} |- ! nowrap {{rh}} | [[NEdit|XNEdit]] | {{ya}} | {{ya}} | {{ya}} |- |-valign=top ! ! Windows (CR/LF) ! Unix-like systems (including macOS) (LF) ! Classic Mac OS (CR) |- |} ==See also== *[[Editor war]] *Comparison of **[[Comparison of word processors|word processors]] **[[Comparison of integrated development environments|integrated development environments]] **[[Comparison of HTML editors|HTML editors]] **[[Comparison of TeX editors|TeX editors]] **[[Comparison of hex editors|hex editors]] **[[Comparison of notetaking software|notetaking software]] **[[Comparison of wiki software|wiki software]] *Lists of **[[List of text editors|text editors]] **[[List of wiki software|wiki software]] **[[List of personal information managers|personal information managers]] **outliners for ***[[Outliner#Desktop outliners|desktops]] ***[[Outliner#Mobile Device outliners|mobile devices]] ***[[Outliner#Online outliners|web-based]] ==Notes== {{notelist}} ==References== {{Reflist}} [[Category:Text editor comparisons|Text editors]] [[Category:Text editors| ]] [[Category:Software comparisons]]
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)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Abbr
(
edit
)
Template:Cbignore
(
edit
)
Template:Citation needed
(
edit
)
Template:Cite web
(
edit
)
Template:Cn
(
edit
)
Template:Dubious
(
edit
)
Template:Dunno
(
edit
)
Template:Efn
(
edit
)
Template:Fix
(
edit
)
Template:Free
(
edit
)
Template:Maybe
(
edit
)
Template:Mw-datatable
(
edit
)
Template:Na
(
edit
)
Template:Nbh
(
edit
)
Template:Nbsp
(
edit
)
Template:No
(
edit
)
Template:Nonfree
(
edit
)
Template:Notelist
(
edit
)
Template:Okay
(
edit
)
Template:Open source
(
edit
)
Template:Partial
(
edit
)
Template:Proprietary
(
edit
)
Template:Reflist
(
edit
)
Template:Rh
(
edit
)
Template:Short description
(
edit
)
Template:Shy
(
edit
)
Template:Sort under
(
edit
)
Template:Static row numbers
(
edit
)
Template:Sticky header
(
edit
)
Template:Sticky table end
(
edit
)
Template:Sticky table start
(
edit
)
Template:Webarchive
(
edit
)
Template:Wikidata
(
edit
)
Template:Ya
(
edit
)
Template:Yes
(
edit
)
Template:Yes2
(
edit
)