View text source at Wikipedia
This article provides basic comparisons for notable text editors. More feature details for text editors are available from the Category of text editor features and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive.
Feature comparisons are made between stable versions of software, not the upcoming versions or beta releases – and are exclusive of any add-ons, extensions or external programs (unless specified in footnotes).
Name | Developer | Initial release | Latest release | Programming language | Cost (US$) | License | GUI | TUI or CLI | |
---|---|---|---|---|---|---|---|---|---|
Version | Date | ||||||||
Acme | Rob Pike | 1993 | Plan 9 and Inferno | C | No cost | MIT GPL-2.0-only LPL-1.02 |
![]() |
![]() | |
AkelPad | Alexey Kuznetsov Alexander Shengalts |
2003 | 4.9.9[1] ![]() |
2024-10-16 | C | No cost | BSD-2-Clause | ![]() |
![]() |
Alphatk | Vince Darley | 1999 | 8.3.3[2] ![]() |
2004-12-10 | $40 | Proprietary, with BSD components | ![]() |
![]() | |
Atom | GitHub | 2014 | 1.63.1[3] ![]() |
2022-11-23 | HTML, CSS, JavaScript, C++ | No cost | MIT | ![]() |
![]() |
BBEdit | Rich Siegel | 1992 | 15.0.3[4] ![]() |
2024-04-08 | Objective-C, Objective-C++ | No cost for most features, $49.99 for full version | Proprietary | ![]() |
![]() |
Bluefish | Bluefish Development Team | 1999 | 2.2.16[5] ![]() |
2024-09-22 | C | No cost | GPL-3.0-or-later | ![]() |
![]() |
Brackets | Adobe Systems | 2012 | 2.2.1[6] ![]() |
2023-03-22 | HTML, CSS, JavaScript, C++ | No cost | MIT | ![]() |
![]() |
Coda | Panic | 2007 | 2.7.7[7] ![]() |
2020-11-05 | Objective-C | $99 | Proprietary | ![]() |
|
ConTEXT | ConTEXT Project Ltd | 1999 | Object Pascal (Delphi) | No cost | BSD-3-Clause | ![]() |
|||
Crimson Editor | Ingyu Kang | 1999 | 3.72-r286m[8] ![]() |
2011-10-01 | C++ | No cost | Proprietary | ![]() |
|
CudaText | UVViewSoft[a] | 2015 | 1.217.5.1[9] ![]() |
2024-09-05 | Object Pascal (Lazarus) | No cost | MPL-2.0 | ![]() |
![]() |
ed | Ken Thompson | 1970 | unchanged from original | C | No cost | ? | ![]() |
![]() | |
Editra | Cody Precord | 2007 | 0.7.20 | 2013-01-05 | Python | No cost | wxWindows license | ![]() |
![]() |
EmEditor | Emurasoft, Inc. | 1997 | 21.3.0 | 2021-11-24 | C++ | $39.99 | Shareware | ![]() |
![]() |
epsilon | Lugaru Software | 1984 | 14.00[10] | 2020-10-20 | C | $250 | Proprietary | ||
FeatherPad | Pedram Pourang | 2016 | 1.4.1[11] ![]() |
2023-06-12 | C++, Qt | No cost | GPL-3.0-or-later | ![]() |
![]() |
FocusWriter | Graeme Gott | 2008 | 1.8.9[12] ![]() |
2024-10-11 | C++, Qt | No cost | GPL-3.0-or-later | ![]() |
![]() |
gedit | GNU Project | 2000 | 48.0[13] ![]() |
2024-09-14 | C | No cost | GPL-3.0 | ![]() |
![]() |
Geany | Enrico Tröger | 2005 | 2.0.0[14] ![]() |
2023-10-19 | C, GTK+ | No cost | GPL-2.0-or-later | ![]() |
![]() |
GNU Emacs | Richard Stallman | 1984 | 29.4[15] ![]() |
2024-06-22 | C, Emacs Lisp | No cost | GPL-3.0-or-later | ![]() |
![]() |
GNU nano | Chris Allegretta | 1999 | 8.3[16] ![]() |
2024-12-21 | C | No cost | GPL-3.0-or-later | ![]() |
![]() |
IA Writer | Information Architects | 2010.09.22 | 5.6 | 2020-12-07 | Objective-C (iOS), Objective-C (macOS), C# (Windows), Java (Android) | $29.99 | Proprietary | ![]() |
![]() |
JED | John E. Davis | 1992 | 0.99-19 ![]() |
2009-12-13 | C, S-Lang | No cost | GPL-2.0-or-later | ![]() |
![]() |
jEdit | Slava Pestov | 1998 | 5.7.0[17] ![]() |
2024-08-03 | Java | No cost | GPL-2.0-or-later | ![]() |
![]() |
JOE | Joseph Allen | 1988 | C | No cost | GPL | ![]() |
![]() | ||
JOVE | Johnathon Payne | 1983 | 4.17.5.3[18] ![]() |
2023-03-21 | C | No cost | JOVE license | ![]() |
![]() |
Kate | KDE Project | 2000-12 | 24.12.1[19] ![]() |
2025-01-09 | C++ | No cost | GPL | ![]() |
![]() |
KEDIT | Mansfield Software Group, Inc. | 1983 | 1.6.1 | 2016-12-05 | C | $129 | Proprietary | ![]() |
![]() |
Komodo Edit | Activestate | 2007 | 12.0.1[20] ![]() |
2020-02-10 | Python, JavaScript, Perl, Tcl, PHP, Ruby | No cost | MPL, GPL, LGPL | ![]() |
![]() |
Komodo IDE | Activestate | 2001 | Python, JavaScript, Perl, Tcl, PHP, Ruby | $295 | Proprietary | ![]() |
![]() | ||
KWrite | KDE Project | 2000 | R14.1.1[21] ![]() |
2023-10-19 | C++ | No cost | GPL | ![]() |
![]() |
LE | Alexander V. Lukyanov | 1997 | 1.16.8[22] ![]() |
2021-02-05 | C++ | No cost | GPL-3.0-or-later | ![]() |
![]() |
Leo | Edward K. Ream | 1996 | 6.7.6[23] ![]() |
2023-12-19 | Python | No cost | MIT | ![]() |
![]() |
Light Table | Chris Granger | 2012 | 0.8.1[24] ![]() |
2016-01-22 | ClojureScript | No cost | MIT | ![]() |
![]() |
mcedit | Miguel de Icaza | 1994 | 4.8.33[25] ![]() |
2025-01-23 | C, Python, PHP, Javascript, Perl, Tcl, Ruby | No cost | GPL-3.0-or-later | ![]() |
![]() |
Metapad | Alexander Davidson | 1999 | 3.6[26][27] ![]() |
2011-05-28 | C | No cost | GPL-3.0-or-later | ![]() |
![]() |
mg | Dave Conroy | 1986 | current[b] | 2020-07-22 | C | No cost | Public domain | ![]() |
![]() |
MinEd | Thomas Wolff | 1992 | 2022.27 | 2022-12-23 | C | No cost | GPL | ![]() |
![]() |
MS-DOS Editor | Microsoft | 1991 | 2.0.026 | Bundled with MS-DOS, Microsoft Windows | Proprietary | ![]() |
![]() | ||
ne | Sebastiano Vigna Todd Lewis Daniele Filaretti |
1993 | 3.3.3[29] ![]() |
2023-10-19 | C | No cost | GPL-3.0-or-later | ![]() |
![]() |
NEdit | Mark Edel | 1991 | 5.7[30] ![]() |
2017-02-08 | C | No cost | GPL-2.0-or-later | ![]() |
![]() |
Notepad | Microsoft | 1985 | 11.2302.16.0 | MASM (originally) | Bundled with Microsoft Windows | Proprietary | ![]() |
![]() | |
Notepad++ | Don Ho | 2003-11-25 | 8.7.7[31] ![]() |
2025-02-07 | C++ | No cost | GPL-3.0-or-later | ![]() |
![]() |
nvi | Keith Bostic | 1994 | 1.81.6[32] ![]() |
2007-11-18 | C | No cost | BSD-3-Clause | ![]() |
![]() |
Pico | University of Washington | 1992 | 4.64 | C | No cost | Apache-2.0 | ![]() |
![]() | |
PimNote | Pimtel | 2023 | 1.2.0[33] | 2023-04-22 | C# | No cost | Proprietary | ![]() |
![]() |
PolyEdit | PolySoft Solutions | 1998 | 5.4 | 2010‑04‑07 | $27.95 | Shareware | ![]() |
![]() | |
PSPad | Jan Fiala | 2002 | 5.0.7[34] ![]() |
2023-03-10 | Object Pascal (Delphi) | No cost | Proprietary | ![]() |
![]() |
RJ TextEd | Rickard Johansson | 2004 | 15.63[35] ![]() |
2022-09-29 | Object Pascal (Delphi) | No cost | Proprietary | ![]() |
![]() |
Sam | Rob Pike | 1980s (early) | stable | C | No cost | LPL (OSI approved) | ![]() |
![]() | |
SciTE | Neil Hodgson | 1999 | 5.5.4[36] ![]() |
2024-12-18 | C++ | $41.99 for macOS. No cost for others | HPND | ![]() |
![]() |
SlickEdit | SlickEdit, Inc. | 1988 | 28.0.1 | 2024-01-21 | C, Slick-C | $299 | Proprietary | ![]() |
![]() |
Smultron | Peter Borg | 2004 | 12.0.6 ![]() |
2020-01-03 | Objective-C | $7.99 | Proprietary | ![]() |
![]() |
SubEthaEdit | TheCodingMonkeys | 2003 | 5.2.4[37] ![]() |
2022-01-08 | No cost | MIT | ![]() |
||
Sublime Text | Jon Skinner, Sublime HQ | 2008 | 4 (Build 4192)[38] ![]() |
2025-01-20 | C++, Python | $99 | Shareware | ![]() |
![]() |
TED Notepad | Juraj Simlovic | 2001 | 6.3.1[39] ![]() |
2021-12-01 | C | No cost | Proprietary | ![]() |
![]() |
Textadept | Mitchell | 2007 | 12.5[40] ![]() |
2024-12-01 | C, Lua | No cost | MIT | ![]() |
![]() |
TextEdit | Apple Inc. | 2001 | 1.18 ![]() |
2022-10-24 | No cost (also bundled with macOS) | BSD-3-Clause | ![]() |
![]() | |
TextMate | MacroMates | 2004-10-10 | 2.0.23[41] ![]() |
2021-10-12 | Objective-C++ | No cost | GPL-3.0-or-later | ![]() |
![]() |
TextPad | Helios Software Solutions | 1992 | 9.3.0[42] ![]() |
2023-08-01 | $30.00 (£16.50) | Shareware | ![]() |
![]() | |
TextWrangler | Bare Bones Software | 2003 | 5.5.2 | 2016-09-20 | No cost | Proprietary | ![]() |
||
The SemWare Editor | Sammy Mitchell | 1985-11 | 4.49[43] ![]() |
2023-01 | C, SAL | No cost | BSD-2-Clause | ||
UltraEdit | IDM Computer Solutions | 1994 | 25.0 | 2018-03-12 | C++ | $99.95 | Proprietary | ![]() |
![]() |
VEDIT | Ted Green, Greenview Data | 1980 | 6.24.2 | 2015-01-12 | Assembly, C | $89 standard, $239 Pro64 | Proprietary | ![]() |
![]() |
vi | Bill Joy | 1976 | 3.7 | C | No cost | BSD-4-Clause or CDDL | ![]() |
![]() | |
Vim | Bram Moolenaar | 1991 | 9.1[44][45] ![]() |
2024-01-02 | C, Vim script | No cost | Vim | ![]() |
![]() |
Visual Studio Code | Microsoft | 2015 | 1.97.2[46] ![]() |
2025-02-14 | JavaScript, TypeScript | No cost | Source code: MIT[47] Binaries built by Microsoft: Proprietary[48][49] |
![]() |
![]() |
XEmacs | Lucid Inc. | 1991 | 21.4.22[50] ![]() |
2009-01-30 | C, Emacs Lisp | No cost | GPL-2.0-or-later | ![]() |
![]() |
XNEdit | Olaf Wintermann | 2018 | 1.5.2 | 2023-10-05 | C | No cost | GPL-2.0-or-later | ![]() |
![]() |
This section lists the operating systems that different editors can run on. Some editors run on additional operating systems that are not listed.
Microsoft Windows | macOS | Linux | BSD | Unix | OpenVMS | |
---|---|---|---|---|---|---|
Acme | Partial [c] |
![]() |
![]() |
![]() |
![]() |
![]() |
AkelPad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Alphatk | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Atom | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Arachnophilia | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
BBEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Brackets | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Coda | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
ConTEXT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Crimson Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
CudaText | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
ed | Partial [d] |
![]() |
![]() |
![]() |
![]() |
![]() |
Editra | ![]() |
![]() |
![]() |
? | ? | ? |
EmEditor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
epsilon | ![]() |
![]() [51] |
![]() |
![]() |
![]() |
![]() |
Geany | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
gedit | ![]() |
![]() [e] |
![]() |
![]() |
![]() |
![]() |
GNU Emacs | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JED | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
jEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JOE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JOVE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Kate | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
KEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Komodo Edit | ![]() |
![]() |
![]() |
![]() |
? | ? |
Komodo IDE | ![]() |
![]() |
![]() |
![]() |
? | ? |
KWrite | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
LE | Partial [d] |
![]() |
![]() |
![]() |
![]() |
![]() |
Light Table | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Metapad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
mg | ![]() |
![]() |
![]() |
![]() |
![]() |
? |
MinEd | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
GNU nano | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
ne | Partial [d] |
![]() |
![]() |
![]() |
![]() |
![]() |
NEdit | Partial [d] |
![]() [f] |
![]() |
![]() |
![]() |
![]() |
Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Notepad++ | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
nvi | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Pico | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
PSPad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
RJ TextEd | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Sam | Partial [c] |
![]() |
![]() |
![]() |
![]() |
![]() |
SciTE | ![]() |
![]() [f] |
![]() |
![]() |
![]() |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Smultron | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Sublime Text | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TED Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Textadept | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextMate | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextPad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextWrangler | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The SemWare Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
UltraEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Ulysses (text editor) | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Vim | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Visual Studio Code | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
XEmacs | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
XNEdit | Partial [d][g] |
![]() [f] |
![]() |
![]() |
![]() |
![]() |
Languages supported | |
---|---|
Acme | English |
AkelPad | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish |
Alphatk | English |
Atom | English |
BBEdit | English |
Brackets | English, German, French, Polish(Outdated), Korean, Japanese, Italian, Czech, Dutch, Portuguese, Spanish, Swedish(Outdated) |
Coda | English, German, French, Spanish |
ConTEXT | English, German, French, Polish, Italian, Dutch, Portuguese, Spanish |
Crimson Editor | English |
CudaText | Main: English. Addons: Japanese, French, Polish, Korean, Hungarian (2018), Greek, German (2017), and 9 others |
ed | |
Editra | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |
EmEditor | English, German, French, Korean, Japanese, Italian, Dutch, Spanish |
epsilon | English |
Geany | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |
gedit | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |
GNU Emacs | English |
JED | English |
jEdit | English |
JOE[52] | English, German, French |
JOVE | English |
Kate[53] | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |
KEDIT | English |
Komodo Edit | English |
KWrite | English, German, Italian, Spanish, Swedish |
Metapad[54] | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |
mined | English |
MS-DOS Editor | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |
Nano | English, German, French, Italian, Portuguese |
NEdit | English |
Notepad | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |
Notepad++ | English, German, French, Polish, Korean, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish, Hindi |
nvi | English |
Pico | English, Italian |
PolyEdit | English |
PSPad | English, German, French, Polish, Japanese, Italian, Czech, Dutch, Portuguese, Spanish, Swedish |
RJ TextEd | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |
Sam | English |
SciTE[55] | English, German, French (Outdated (1.72)), Polish, Japanese (Outdated (1.62)), Italian, Dutch (Outdated (1.67)), Portuguese (Outdated (1.63)), Spanish, Swedish |
SlickEdit | English |
Smultron | English, German, French, Japanese, Italian, Dutch, Spanish, Swedish |
SubEthaEdit | English |
TED Notepad | English |
TextEdit | English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish |
TextMate | English |
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)) |
TextWrangler | English |
The SemWare Editor | English |
UltraEdit | English, German, French, Korean, Italian, Spanish, Portuguese, Japanese, Chinese |
VEDIT | English |
vi | English |
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 |
Visual Studio Code | English, Bulgarian, Chinese, French, German, Hungarian, Italian, Japanese, Korean, Portuguese, Russian, Spanish, Turkish |
XEmacs | English |
XNEdit | English |
Multiple instances | Single document window splitting | MDI: overlappable windows | MDI: tabbed document interface | MDI: window splitting | |
---|---|---|---|---|---|
Acme | ![]() |
![]() |
![]() |
![]() |
![]() |
AkelPad | ![]() |
![]() |
![]() |
![]() |
![]() |
Alphatk | ![]() |
![]() |
![]() |
![]() |
![]() |
Atom | ![]() |
![]() |
![]() |
![]() |
![]() |
BBEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
![]() |
![]() |
![]() |
Brackets | ![]() |
![]() |
![]() |
![]() |
![]() |
Coda | ![]() |
![]() |
![]() |
![]() |
![]() |
ConTEXT | ![]() |
![]() |
![]() |
![]() |
![]() |
Crimson Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
CudaText | ![]() |
![]() |
![]() |
![]() |
![]() |
ed | ![]() |
![]() |
![]() |
![]() |
![]() |
Editra | ![]() |
![]() |
? | ![]() |
? |
EmEditor | ![]() |
![]() |
![]() |
![]() |
![]() |
Geany | ![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
gedit | ![]() |
![]() Plug‑in[h] |
![]() |
![]() |
![]() Plug‑in[i] |
GNU Emacs | ![]() |
![]() |
![]() |
![]() [j][k] |
![]() |
JED | ![]() |
![]() |
![]() |
![]() |
![]() |
jEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
JOE | ![]() |
![]() |
![]() |
![]() [l] |
![]() |
JOVE | ![]() |
![]() |
![]() |
![]() |
![]() |
Kate | ![]() |
![]() |
![]() |
![]() |
![]() |
KEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
Komodo Edit | ![]() |
![]() |
![]() |
![]() |
![]() |
Komodo IDE | ![]() |
![]() |
![]() |
![]() |
![]() |
KWrite | ![]() |
![]() |
![]() |
![]() |
![]() |
LE | ![]() |
![]() |
![]() |
![]() |
![]() |
Light Table | ![]() |
![]() |
![]() |
![]() |
![]() |
Metapad | ![]() |
![]() |
![]() |
![]() |
![]() |
mined | ![]() |
![]() |
![]() [m] |
![]() |
![]() |
MS-DOS Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
![]() |
![]() |
NEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
Notepad++ | ![]() |
![]() |
![]() |
![]() |
![]() 2 windows |
nvi | ![]() |
![]() |
![]() |
![]() |
![]() |
Pico | ![]() |
![]() |
![]() |
![]() |
![]() |
PolyEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
PSPad | ![]() |
![]() |
![]() |
![]() |
![]() |
RJ TextEd | ![]() |
![]() |
![]() |
![]() |
![]() |
Sam | ![]() |
![]() |
![]() |
![]() |
![]() |
SciTE | ![]() |
![]() |
![]() |
![]() [n] |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
Smultron | ![]() |
![]() |
![]() |
![]() |
![]() |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
TED Notepad | ? | ? | ? | ![]() |
? |
TextEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
TextMate | ![]() |
![]() |
![]() |
![]() |
![]() |
TextPad | ![]() |
![]() |
![]() |
![]() |
![]() |
TextWrangler | ![]() |
![]() |
![]() |
![]() |
![]() |
The SemWare Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
UltraEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
VEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
![]() |
![]() |
Vim | ![]() |
![]() |
![]() [o] |
![]() [p] |
![]() |
Visual Studio Code | ![]() |
![]() |
![]() |
![]() |
![]() |
XEmacs | ![]() |
![]() |
![]() |
![]() |
![]() |
XNEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
Multiple instances | Single document window splitting | MDI: overlappable windows | MDI: tabbed document interface | MDI: window splitting |
Spell checking | Regex-based find & replace | Encoding conversion | Newline conversion | Multiple undo/redo | Rectangular block selection | Virtual space support | |
---|---|---|---|---|---|---|---|
Acme | ![]() external[q] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
AkelPad | ![]() Plug‑in |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Alphatk | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Atom | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() Plug‑in |
![]() |
BBEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Bluefish | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Brackets | ![]() Plug‑in |
![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
? |
Coda | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
ConTEXT | ![]() |
Partial [r] |
Partial [s] |
![]() |
![]() |
![]() |
? |
Crimson Editor | ![]() Instant/live (like Firefox) |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
CudaText | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
ed | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Editra | ![]() |
![]() |
? | ? | ? | ![]() |
? |
EmEditor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Geany | ![]() Plug‑in[t] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
gedit | ![]() [u] |
![]() Plug‑in[v] |
![]() |
![]() |
![]() |
plug‑in [58] |
? |
GNU Emacs | ![]() Plug‑in[w] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JED | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
jEdit | ![]() Plug‑in[x] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JOE | ![]() Plug‑in[y] |
Partial [z] |
![]() [aa] |
![]() |
![]() |
![]() |
? |
JOVE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Kate | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
KEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Komodo Edit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
?[ab] |
Komodo IDE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
?[ac] |
KWrite | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
LE | ![]() |
![]() |
![]() [ad] |
![]() |
![]() |
![]() |
? |
Light Table | ![]() Plug‑in[61] |
? | ![]() |
![]() |
![]() |
? | ? |
Metapad | Partial [ae] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
mg | ![]() |
![]() [62] |
![]() |
Partial | ![]() [62] |
![]() |
? |
MinEd | ![]() |
![]() [af] |
![]() [ag] |
![]() [ah] |
![]() |
![]() |
? |
MS-DOS Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Spell checking | Regex-based find & replace | Encoding conversion | Newline conversion | Multiple undo/redo | Rectangular block selection | Virtual Space Support | |
ne | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
NEdit | ![]() Plug‑in[63] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Notepad | ![]() |
![]() |
Partial | Partial | ![]() |
![]() |
? |
Notepad++ | ![]() [64] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
nvi | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ? |
Pico | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
PolyEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
PSPad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
RJ TextEd | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Sam | ![]() external[ai] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
SciTE | ![]() |
Limited [aj] |
![]() |
![]() |
![]() |
![]() |
? |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Smultron | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() [66] |
? |
Sublime Text | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TED Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
TextEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
TextMate | ![]() |
![]() |
Partial | ![]() |
![]() |
![]() |
? |
TextPad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
TextWrangler | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
The SemWare Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
UltraEdit | ![]() |
Limited [ak] |
![]() |
![]() |
![]() |
![]() |
? |
VEDIT | ![]() [al] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
vi | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Vim | ![]() [am] |
![]() |
![]() |
![]() |
![]() |
![]() |
No[69] |
Visual Studio Code | ![]() Plug‑in |
![]() |
![]() |
![]() |
![]() |
Limited [an] |
![]() |
XEmacs | ![]() Plug‑in[w] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
XNedit | ![]() Plug‑in[63] |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Spell checking | Regex-based find & replace | Encoding conversion | Newline conversion | Multiple undo/redo | Rectangular block selection | Virtual Space Support |
Syntax highlighting | Function list | Symbol database (ctags or equiv.) |
Brace matching | Auto indentation | Auto completion | Code folding | Text folding | Compiler integration | |
---|---|---|---|---|---|---|---|---|---|
Acme | ![]() |
![]() external[q] |
![]() external[q] |
![]() |
![]() |
Partial [ao] |
![]() |
![]() |
![]() external[q] |
AkelPad | ![]() Plug‑in |
![]() Plug‑in |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() Plug‑in |
Alphatk | ![]() |
? | ? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Atom | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() Plug‑in |
BBEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() [ap] |
Brackets | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() Plug‑in |
Coda | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
ConTEXT | ![]() |
? | ? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Crimson Editor | ![]() |
![]() |
Partial [aq] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
CudaText | ![]() |
![]() |
![]() |
![]() Plug‑in |
![]() |
![]() Plug‑in |
![]() |
![]() |
![]() Plug‑in |
ed | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() external[ar] |
Editra | ![]() |
? | ? | ![]() |
![]() |
? | ![]() |
? | ? |
EmEditor | ![]() |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() |
![]() Plug‑in[as] |
![]() |
![]() |
![]() |
Geany | ![]() |
![]() |
![]() [at] |
![]() |
![]() |
![]() |
Partial | ![]() |
![]() |
gedit | ![]() |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() |
![]() Plug‑in |
![]() |
![]() Plug‑in[au] |
![]() [av] |
GNU Emacs | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JED | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
jEdit | ![]() |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() Plug‑in |
JOE | ![]() |
? | ![]() |
![]() |
![]() |
? | ![]() |
![]() |
![]() |
JOVE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Kate | ![]() |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() Plug‑in |
KEDIT | ![]() |
![]() |
![]() Macro |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Komodo Edit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Komodo IDE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
KWrite | ![]() |
? | ? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
LE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() [aw] |
Light Table | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Partial [ax] |
Metapad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
mined | ![]() [ay] |
? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
MS-DOS Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Syntax highlighting | Function list | Symbol database (ctags or equiv.) |
Bracket matching | Auto indentation | Auto completion | Code folding | Text folding | Compiler integration | |
ne | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
NEdit | ![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Notepad++ | ![]() |
![]() [az] |
![]() [71][72] |
![]() |
![]() |
![]() [ba] |
![]() |
![]() |
![]() |
nvi | ![]() |
? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Pico | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
PolyEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
PSPad | ![]() |
![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
RJ TextEd | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Sam | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() external[ai] |
SciTE | ![]() |
![]() [bb] |
? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Smultron | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? | ? | ? |
SubEthaEdit | ![]() |
? | ? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TED Notepad | ![]() |
? | ? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextMate | ![]() |
![]() |
![]() Plug‑in |
![]() |
![]() |
![]() [bc] |
![]() |
![]() |
![]() |
TextPad | ![]() |
![]() |
![]() Plug‑in[bd] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextWrangler | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() Plug‑in[be] |
The SemWare Editor | ![]() |
![]() |
![]() Plug‑in[73] |
![]() |
![]() |
![]() [bf] |
Partial [bg] |
![]() |
![]() |
UltraEdit | ![]() |
![]() |
Partial [bh] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
VEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() <[bi] |
![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Vim | ![]() |
![]() Plug‑in[74] |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Visual Studio Code | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
XEmacs | ![]() |
? | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
XNEdit | ![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
![]() Plug‑in |
![]() |
![]() |
![]() |
Syntax highlighting | Function list | Symbol database (ctags or equiv.) |
Bracket matching | Auto indentation | Auto completion | Code folding | Text folding | Compiler integration |
Text shell integration | Graphical shell integration | Macro language | Collaborative editing | Large file support | Long line support | Multi-line regex support[bj] | Search in files | |
---|---|---|---|---|---|---|---|---|
Acme | ![]() |
![]() |
![]() Extensible |
![]() |
? | ? | ![]() |
? |
AkelPad | ![]() |
![]() |
![]() |
![]() |
memory | ![]() |
![]() |
![]() Plug‑in |
Alphatk | ![]() |
![]() |
![]() [bk] |
![]() |
? | ? | ? | ? |
Atom | ![]() [75] |
? | ![]() Plug‑in[76] |
![]() |
![]() |
Soft-wrapping | ![]() [77] |
![]() |
BBEdit | ![]() |
![]() |
![]() [bl] |
![]() |
memory [78] |
![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
? | ![]() |
? | ? | ![]() |
? |
Brackets | ![]() |
![]() |
![]() Extensible |
![]() |
![]() |
? | Partial | ![]() |
Coda | ![]() |
![]() |
![]() [bm] |
![]() |
? | ? | ![]() |
![]() |
ConTEXT | ![]() |
![]() |
![]() |
![]() |
memory [bn] |
? | ![]() |
? |
Crimson Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ![]() |
? |
CudaText | ![]() |
![]() |
![]() Plug‑in |
![]() |
? | ? | ![]() |
![]() Plug‑in |
ed | ![]() |
![]() |
![]() |
![]() via mkfifo |
? | ? | ? | ![]() |
Editra | ? | ? | ? | ? | ![]() 2 GB |
? | ? | ? |
EmEditor | ![]() |
![]() |
![]() |
![]() |
![]() 16TB |
? | ![]() |
![]() |
Geany | ![]() |
? | ![]() Plug‑in |
? | ? | ? | ![]() |
![]() |
gedit | ![]() |
![]() |
![]() [bo] |
![]() Plug‑in |
![]() |
? | ![]() |
![]() Plug‑in[79] |
GNU Emacs | ![]() |
![]() |
![]() |
![]() |
2.3 EB[80][81][82][83] | ![]() |
![]() |
![]() |
JED | ![]() |
![]() |
![]() |
![]() |
memory [84] |
![]() |
![]() |
![]() Plug‑ins |
jEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ![]() |
![]() |
JOE | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ? | ![]() [86] |
JOVE | ![]() |
![]() |
![]() |
![]() |
memory | ? | ![]() |
![]() |
Kate | ![]() |
![]() |
![]() Plug‑in |
![]() |
![]() [87] |
Maybe [bq] |
![]() |
![]() Plug‑in |
KEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
10Kb | ![]() |
![]() |
Komodo Edit | ? | ? | ![]() [89] |
![]() |
? | ? | ![]() |
![]() |
Komodo IDE | ? | ? | ![]() [89] |
![]() |
? | ? | ![]() |
![]() |
KWrite | ![]() |
![]() |
![]() |
![]() |
![]() [87] |
![]() [90] |
![]() |
? |
LE | ![]() |
![]() |
![]() |
![]() [br] |
memory [bs] |
? | ![]() |
? |
Light Table | ![]() |
![]() |
![]() |
![]() |
? | ? | ![]() |
![]() |
Metapad | ![]() |
![]() |
![]() |
![]() |
memory [91] |
? | ![]() |
![]() |
mined | ? | ? | ? | ? | ? | ? | ![]() |
? |
EDIT (MS-DOS) | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
EDIT (DR-DOS) | ![]() |
![]() |
![]() |
![]() |
2 GB, for as long as there is disk swap space for two temporary files | ![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
![]() |
? | ? | ? | ? |
Text shell integration | Graphical shell integration | Macro language | Collaborative editing | Large file support | Long line support | Multi-line regex support | Search in files | |
NEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Notepad | ![]() |
![]() |
![]() |
![]() |
memory | ? | ![]() |
![]() |
Notepad++ | ![]() |
![]() |
![]() |
![]() [92] |
![]() 2GB[93] |
![]() [94] |
![]() |
![]() |
nvi | ![]() |
![]() |
![]() |
? | ? | ? | ? | ? |
Pico | ? | ? | ? | ![]() |
? | ? | ? | ? |
PolyEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ![]() |
? |
PSPad | ![]() |
![]() |
![]() |
![]() |
memory [95] |
? | ![]() with plug‑in |
![]() |
RJ TextEd | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ![]() |
? |
Sam | ![]() |
![]() |
![]() |
![]() |
? | ? | ![]() |
![]() external[ai] |
SciTE | ? | ? | ![]() |
![]() |
![]() |
? | ![]() |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
![]() 2 TB |
![]() |
![]() |
![]() |
Smultron | ? | ? | ? | ? | ? | ? | ? | ? |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
? | ? | ![]() |
? |
TED Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ? | ? |
TextEdit | ![]() |
![]() |
![]() |
![]() |
? | ? | ? | ? |
TextMate | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ![]() |
? |
TextPad | ![]() |
![]() |
![]() |
![]() |
memory [96] |
? | ![]() |
![]() |
TextWrangler | ![]() |
![]() |
![]() |
![]() |
memory [97] |
![]() |
![]() |
? |
The SemWare Editor | ![]() |
![]() |
![]() |
![]() |
![]() 2 GB |
![]() |
? | ![]() |
UltraEdit | ![]() |
![]() |
![]() |
![]() |
![]() [bt] |
![]() |
![]() |
![]() |
VEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
![]() |
![]() |
? | ![]() |
![]() |
Vim | ![]() |
![]() |
![]() |
![]() with plug‑in[98] |
memory [bu] |
![]() |
![]() |
![]() |
Visual Studio Code | ![]() |
![]() |
![]() |
![]() with plug‑in[99] |
? | ? | ![]() |
![]() |
XEmacs | ![]() |
![]() |
![]() |
![]() |
on 64-bit OS [bv] |
? | ![]() |
![]() |
XNEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
? |
Text shell integration | Graphical shell integration | Macro language | Collaborative editing | Large file support | Long line support | Multi-line regex support | Search in files |
Large file support:
![]() |
= Larger than 4 GiB (LFS) | ![]() |
= Larger than 1 GB, not limited by memory |
memory | = Limited by available memory | ![]() |
= 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.[100]
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.
Support for custom key bindings.
Dynamically customizable | IBM CUA | macOS | Vi | Emacs | Pico | WordStar | WordPerfect | Brief | |
---|---|---|---|---|---|---|---|---|---|
Acme | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
AkelPad | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
Alphatk | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Atom | ? | ? | ? | ? | ? | ? | ? | ? | ? |
BBEdit[101][102] | ![]() |
? | ![]() |
? | ![]() |
? | ? | ? | ? |
Bluefish | ![]() |
? | ![]() |
? | ? | ? | ? | ? | ? |
Brackets | ![]() |
Partial | ![]() |
![]() Plug‑in |
![]() Plug‑in |
![]() |
![]() |
![]() |
![]() |
Coda | ![]() |
? | ![]() |
? | ? | ? | ? | ? | ? |
ConTEXT | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Crimson Editor | ? | ? | ? | ? | ? | ? | ? | ? | ? |
CudaText | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
ed | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Editra | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
EmEditor | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
epsilon | ![]() |
? | ? | ? | ![]() |
? | ? | ? | ![]() |
Geany | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
gedit | ![]() [bw] |
? | ? | ? | ? | ? | ? | ? | ? |
GNU Emacs | ![]() |
![]() |
![]() |
![]() |
![]() |
Partial [103] |
![]() [104] |
![]() [105] |
![]() [105] |
JED | ![]() |
Partial [bx] |
? | ![]() |
![]() |
? | ![]() |
? | ![]() |
jEdit | ![]() |
? | ![]() |
![]() |
? | ? | ? | ? | ? |
JOE[106] | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JOVE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() [107] |
![]() |
![]() |
LE | ![]() |
? | ? | ![]() |
? | ? | ? | ? | ? |
Light Table | ![]() |
Partial | ? | ![]() Plug‑in |
![]() Plug‑in |
? | ? | ? | ? |
Kate | ![]() |
![]() |
![]() |
![]() [108] |
![]() |
![]() |
![]() |
![]() |
![]() |
KEDIT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Komodo Edit | ![]() |
? | ![]() |
![]() |
![]() |
? | ? | ? | ? |
Komodo IDE | ![]() |
? | ![]() |
![]() |
![]() |
? | ? | ? | ? |
KWrite | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
Metapad | ? | ? | ? | ? | ? | ? | ? | ? | ? |
mg | ![]() |
? | ? | ? | ![]() |
? | ? | ? | ? |
mined | ? | ? | ? | ? | ![]() |
![]() |
![]() |
? | ? |
MS-DOS Editor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
![]() |
Partial [109] |
![]() |
![]() |
![]() |
![]() |
NEdit | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
Notepad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Notepad++ | Partial | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
nvi | ? | ? | ? | ![]() |
? | ? | ? | ? | ? |
Pico | ![]() |
![]() |
![]() |
![]() |
Partial [109] |
![]() |
![]() |
![]() |
![]() |
PolyEdit | ? | ? | ? | ? | ? | ? | ? | ? | ? |
PSPad | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
RJ TextEd | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
Sam | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
SciTE | Partial [by] |
? | ? | ![]() |
![]() |
![]() |
? | ? | ? |
SlickEdit | ![]() [bz] |
![]() |
![]() [ca] |
Partial [cb] |
![]() |
![]() |
![]() |
![]() |
![]() |
Smultron | ? | ? | ? | ? | ? | ? | ? | ? | ? |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TED Notepad | ? | ? | ? | ? | ? | ? | ? | ? | ? |
TextEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextMate | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TextPad | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
TextWrangler[101][110] | ![]() |
? | ![]() |
![]() |
![]() |
![]() |
? | ? | ? |
The SemWare Editor | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
UltraEdit | ![]() |
? | ![]() |
? | ? | ? | ? | ? | ? |
VEDIT | ![]() |
![]() |
![]() |
![]() [111] |
![]() |
![]() |
![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Vim | Partial | ![]() Plug‑in[112] |
![]() Plug‑in[113] |
![]() [cc] |
![]() Plug‑in[cd] |
? | ![]() Plug‑in[115] |
![]() |
![]() Plug‑in[116] |
Visual Studio Code | ![]() |
![]() |
![]() |
![]() Plug‑in[117] |
![]() Plug‑in[118] |
![]() |
![]() |
![]() |
Partial Plug‑in[119] |
XEmacs | ![]() |
![]() |
![]() |
![]() |
![]() |
Partial [103] |
![]() [104] |
![]() [105] |
![]() [105] |
XNEdit | ![]() |
? | ? | ? | ? | ? | ? | ? | ? |
Dynamically customizable | IBM CUA | macOS | Vi | Emacs | Pico | WordStar | WordPerfect | Brief |
Support for editing files over a network or the Internet.
FTP | HTTP | SSH | WebDAV | |
---|---|---|---|---|
Acme | ![]() |
![]() |
![]() |
![]() |
AkelPad | ![]() |
![]() |
![]() |
![]() |
Alphatk | ![]() |
![]() |
![]() |
![]() |
Atom | ? | ? | ? | ? |
BBEdit | ![]() |
![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
![]() |
![]() |
Brackets | ![]() Plug‑in |
![]() |
![]() |
![]() |
Coda | ![]() |
![]() |
![]() |
![]() |
ConTEXT | ![]() [122] |
? | ![]() [122] |
? |
Crimson Editor | ![]() |
![]() |
![]() |
![]() |
CudaText | ![]() |
![]() |
![]() |
![]() |
ed | ![]() |
![]() |
![]() |
![]() |
Editra | ? | ? | ? | ? |
EmEditor | ![]() |
![]() |
![]() |
![]() |
Geany | ![]() |
![]() |
![]() |
![]() |
gedit | ![]() |
![]() |
![]() |
![]() |
GNU Emacs | ![]() |
![]() |
![]() |
![]() |
JED | ![]() |
![]() |
![]() |
![]() |
jEdit | ![]() plug‑in[123] |
![]() [124] |
![]() plug‑in[123] |
![]() plug‑in. |
JOE | ![]() |
![]() |
![]() |
![]() |
JOVE | ![]() |
![]() |
![]() |
![]() |
LE | ![]() |
![]() |
![]() |
![]() |
Kate | ![]() |
![]() |
![]() |
![]() |
KEDIT | ![]() |
![]() |
![]() |
![]() |
Komodo IDE | ![]() FTP, FTPS, SFTP |
![]() |
![]() |
![]() |
KWrite | ![]() |
![]() |
![]() |
![]() |
Metapad | ![]() |
![]() |
![]() |
![]() |
mined | ? | ? | ? | ? |
MS-DOS Editor | ![]() |
![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
![]() |
FTP | HTTP | SSH | WebDAV | |
NEdit | ![]() |
![]() |
![]() |
![]() |
Notepad | ![]() |
![]() |
![]() |
![]() |
Notepad++ | ![]() Plug‑in for FTP, FTPS, FTPES, SFTP |
![]() |
![]() Plug‑in |
![]() |
nvi | ![]() |
![]() |
![]() |
![]() |
Pico | ![]() |
![]() |
![]() |
![]() |
PolyEdit | ![]() |
![]() |
![]() |
![]() |
PSPad | ![]() |
![]() |
![]() |
![]() |
RJ TextEd | ![]() FTP, SFTP |
![]() |
![]() |
![]() |
Sam | ![]() |
![]() |
![]() |
![]() |
SciTE | ![]() |
![]() |
![]() |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
Smultron | ![]() |
? | ? | ? |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
TED Notepad | ![]() [125] |
? | ![]() [125] |
? |
TextEdit | ![]() |
![]() |
![]() |
![]() |
TextMate | ![]() |
![]() |
![]() |
![]() |
TextPad | ![]() |
![]() |
![]() |
![]() |
TextWrangler | ![]() FTP, SFTP[126] |
![]() |
![]() |
![]() |
The SemWare Editor | ![]() |
![]() |
![]() |
![]() |
UltraEdit | ![]() |
![]() |
![]() |
![]() |
VEDIT | ![]() |
![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
![]() |
Vim | ![]() [127] |
![]() [127] |
![]() [127] |
![]() [127] |
Visual Studio Code | ![]() Plug‑in[128] |
![]() Plug‑in (limited?)[128] |
![]() Plug‑in[128] |
![]() Plug‑in[128] |
XEmacs | ![]() |
![]() |
![]() |
? |
XNEdit | ![]() |
![]() |
![]() |
![]() |
FTP | HTTP | SSH | WebDAV |
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.
ASCII | ISO-8859 | DOS (OEM) | EBCDIC | UTF-8 | UTF-16 | |
---|---|---|---|---|---|---|
Acme | ![]() |
? | ? | ? | ![]() |
? |
AkelPad | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Alphatk | ![]() |
? | ? | ? | ![]() |
![]() |
Atom | ? | ? | ? | ? | ? | ? |
BBEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Brackets | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Coda | ![]() |
![]() |
![]() |
? | ![]() |
![]() |
ConTEXT | ![]() |
![]() |
Partial [ce] |
![]() |
![]() |
![]() |
Crimson Editor | ![]() |
![]() |
Partial [ce] |
![]() |
Partial | ![]() |
CudaText | ![]() |
![]() |
![]() |
? | ![]() |
![]() |
ed | ![]() |
? | ? | ? | ![]() |
![]() |
Editra | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
EmEditor | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Geany | ![]() |
![]() |
![]() |
? | ![]() |
![]() |
gedit | ![]() |
![]() |
? | ? | ![]() |
![]() |
GNU Emacs | ![]() |
![]() |
![]() |
![]() |
![]() [cf] |
![]() [cg] |
JED | ![]() |
![]() |
![]() |
? | ![]() |
Partial [ch] |
jEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
JOE | ![]() |
? | ? | ? | ![]() |
![]() |
JOVE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
LE | ![]() |
? | ? | ? | ![]() |
![]() |
Kate | ![]() |
![]() |
? | ? | ![]() |
![]() |
KEDIT | ![]() |
![]() |
Partial [ce] |
![]() |
![]() |
![]() |
Komodo Edit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Komodo IDE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
KWrite | ![]() |
? | ? | ? | ![]() |
![]() |
Metapad | ![]() |
![]() |
Partial [ce] |
![]() |
![]() |
![]() |
mined | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
MS-DOS Editor | ![]() |
? | ![]() |
? | ? | ? |
Nano | ![]() |
![]() |
? | ? | ![]() |
![]() |
NEdit | ![]() |
? | ? | ? | ![]() |
![]() |
Notepad | ![]() |
![]() |
Partial [ce] |
![]() |
![]() |
![]() |
Notepad++ | ![]() |
![]() |
![]() |
plug‑in? | ![]() |
![]() |
nvi | ![]() |
? | ? | ? | ![]() [ci] |
![]() |
Pico | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
PolyEdit | ![]() |
? | ? | ? | ![]() |
![]() |
PSPad | ![]() |
![]() |
![]() |
? | ![]() |
![]() |
RJ TextEd | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Sam | ![]() |
? | ? | ? | ![]() |
![]() |
SciTE[cj] | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Smultron | ![]() |
? | ? | ? | ![]() |
![]() |
SubEthaEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TED Notepad | ![]() |
? | ? | ? | ![]() |
![]() |
TextEdit | ![]() |
![]() |
? | ? | ![]() |
![]() |
TextMate | ![]() |
![]() |
? | ? | ![]() |
![]() |
TextPad | ![]() |
? | ? | ? | Partial [ck] |
Partial [ck] |
TextWrangler | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The SemWare Editor | ![]() |
![]() [cl] |
Partial [ce] |
![]() Plug‑in |
![]() |
![]() |
UltraEdit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
VEDIT | ![]() |
![]() |
![]() |
![]() |
Partial [cm] |
Partial [cm] |
vi | ![]() |
? | ? | ? | ![]() |
![]() |
Vim | ![]() |
![]() |
![]() |
Partial [cn] |
![]() |
![]() |
Visual Studio Code | ![]() |
![]() |
![]() |
![]() [130] |
![]() |
![]() |
XEmacs | ![]() |
![]() |
? | ? | ![]() [co] |
![]() |
XNEdit | ![]() |
![]() |
? | ? | ![]() |
![]() |
Support for Right-To-Left (RTL) texts is necessary for editing some languages like Arabic, Persian, Hebrew, and Yiddish and the mixture of left to right (LTR) and RTL known as bi-directional (BiDi) support.
Depending on the algorithm used in the programs it might only render the bidirectional text correctly but may not be able to edit them. (e.g. Notepad++ 5.1.3 shows bidirectional texts correctly but cannot edit it and user should change the text direction to RTL to be able to edit RTL texts correctly.)
Right-to-left (RTL) | Bi-directional (Bidi) | |
---|---|---|
Acme | ![]() |
![]() |
AkelPad | ![]() |
![]() |
Alphatk | ? | ? |
Atom | ![]() |
![]() |
BBEdit | ![]() |
![]() |
Bluefish | ![]() |
![]() |
Brackets | ? | ? |
Coda | ? | ? |
ConTEXT | ? | ? |
Crimson Editor | ? | ? |
ed | ? | ? |
Editra | ? | ? |
EmEditor | ![]() |
![]() |
Geany | ? | ? |
gedit | ![]() |
![]() |
GNU Emacs | ![]() |
![]() [cp] |
JED | ? | ? |
jEdit | ![]() |
![]() |
JOE | ? | ? |
JOVE | ![]() |
![]() |
LE | ? | ? |
Kate | ![]() |
![]() |
KEDIT | ![]() |
![]() |
Komodo Edit | ![]() |
![]() |
Komodo IDE | ![]() |
![]() |
KWrite | ? | ? |
Metapad | ? | ? |
MS-DOS Editor | ? | ? |
mined | ![]() [cq] |
![]() [cq] |
Nano | ? | ? |
RTL | Bidi | |
NEdit | ![]() |
![]() |
Notepad | ![]() |
![]() |
Notepad++ | ![]() |
Partial [cr] |
nvi | ? | ? |
Pico | ? | ? |
PolyEdit | ? | ? |
PSPad | ? | ? |
RJ TextEd | ![]() |
![]() |
Sam | ![]() |
![]() |
SciTE | ![]() |
![]() |
SlickEdit | ? | ? |
Smultron | ? | ? |
SubEthaEdit | ![]() |
![]() |
TED Notepad | ? | ? |
TextEdit | ![]() |
![]() |
TextMate | ![]() |
![]() |
TextPad | ? | ? |
TextWrangler | ![]() |
![]() |
The SemWare Editor | ![]() |
![]() |
UltraEdit | ![]() |
![]() |
VEDIT | ? | ? |
vi | ? | ? |
Vim | ![]() |
![]() through terminal support |
Visual Studio Code | ![]() |
![]() |
XEmacs | ? | ? |
XNEdit | ![]() |
![]() |
RTL | Bidi |
Windows (CR/LF) | Unix-like systems (including macOS)[131] (LF) | Classic Mac OS (CR) | |
---|---|---|---|
Acme | ![]() |
![]() |
![]() |
AkelPad | ![]() |
![]() |
![]() |
Alphatk | ![]() |
![]() |
![]() |
Atom | ![]() |
![]() |
![]() |
BBEdit | ![]() |
![]() |
![]() |
Bluefish | ![]() |
![]() |
![]() |
Brackets | ![]() |
![]() |
![]() |
Coda | ![]() |
![]() |
![]() |
ConTEXT | ![]() |
![]() |
![]() |
Crimson Editor | ![]() |
![]() |
![]() |
CudaText | ![]() |
![]() |
![]() |
ed | ![]() |
![]() |
![]() |
Editra | ![]() |
![]() |
![]() |
EmEditor | ![]() |
![]() |
![]() |
Geany | ![]() |
![]() |
![]() |
gedit | ![]() |
![]() |
![]() |
GNU Emacs[cs] | ![]() |
![]() |
![]() |
JED | ![]() |
![]() |
![]() |
jEdit | ![]() |
![]() |
![]() |
JOE[132] | ![]() |
![]() |
![]() |
JOVE | ![]() |
![]() |
![]() |
Kate | ![]() |
![]() |
![]() |
KEDIT | ![]() |
![]() |
![]() |
Komodo Edit | ![]() |
![]() |
![]() |
Komodo IDE | ![]() |
![]() |
![]() |
KWrite | ![]() |
![]() |
![]() |
LE | ![]() |
![]() |
![]() |
Metapad | ![]() |
![]() |
? |
MS-DOS Editor | ![]() |
![]() |
![]() |
mined | ![]() |
![]() |
![]() |
Nano | ![]() |
![]() |
![]() |
NEdit | ![]() |
![]() |
![]() |
Notepad | ![]() |
![]() |
![]() |
Notepad++ | ![]() |
![]() |
![]() |
nvi | ? | ![]() |
? |
Pico | ![]() |
![]() |
![]() |
PolyEdit | ![]() |
![]() |
![]() |
PSPad | ![]() |
![]() |
![]() |
RJ TextEd | ![]() |
![]() |
![]() |
Sam | ? | ? | ? |
SciTE | ![]() |
![]() |
![]() |
SlickEdit | ![]() |
![]() |
![]() |
Smultron | ![]() |
![]() |
![]() |
SubEthaEdit | ![]() |
![]() |
![]() |
Sublime Text | ![]() |
![]() |
![]() |
TED Notepad | ![]() |
![]() |
![]() |
TextEdit | ![]() |
![]() |
![]() |
TextMate | ![]() |
![]() |
![]() |
TextPad | ![]() |
![]() |
![]() |
TextWrangler | ![]() |
![]() |
![]() |
The SemWare Editor | ![]() |
![]() |
![]() |
UltraEdit | ![]() |
![]() |
![]() |
VEDIT | ![]() |
![]() |
![]() |
vi | ![]() |
![]() |
![]() |
Vim | ![]() |
![]() |
![]() |
Visual Studio Code | ![]() |
![]() |
![]() |
XEmacs | ![]() |
![]() |
![]() |
XNEdit | ![]() |
![]() |
![]() |
Windows (CR/LF) | Unix-like systems (including macOS) (LF) | Classic Mac OS (CR) |
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
{{cite web}}
: Missing or empty |title=
(help)
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.
The search covers all loaded buffers.
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 [...].
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.