Comparison of text editors

Last updated

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.

Contents

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

List of text editors
NameDeveloperInitial releaseLatest release Program­ming language Cost (US$) License GUI TUI or CLI
VersionDate
Acme Rob Pike 1993 Plan 9 and Inferno C No cost MIT
GPL-2.0-only
LPL-1.02
Yes check.svgDark Red x.svg
AkelPadAlexey Kuznetsov
Alexander Shengalts
2003C No cost BSD-2-Clause Yes check.svgDark Red x.svg
Alphatk Vince Darley19998.3.3 [1]   OOjs UI icon edit-ltr-progressive.svg 2004-12-10$40Proprietary, with BSD componentsYes check.svgDark Red x.svg
Atom GitHub 20141.63.1 [2]   OOjs UI icon edit-ltr-progressive.svg 2022-11-23 HTML, CSS, JavaScript, C++ No cost MIT Yes check.svgDark Red x.svg
BBEdit Rich Siegel199215.0.3 [3]   OOjs UI icon edit-ltr-progressive.svg 2024-04-08 Objective-C, Objective-C++ No cost for most features, $49.99 for full version Proprietary Yes check.svgDark Red x.svg
Bluefish Bluefish Development Team19992.2.16 [4]   OOjs UI icon edit-ltr-progressive.svg 2024-09-22C No cost GPL-3.0-or-later Yes check.svgDark Red x.svg
Brackets Adobe Systems 20122.2.1 [5]   OOjs UI icon edit-ltr-progressive.svg 2023-03-22 HTML, CSS, JavaScript, C++ No cost MIT Yes check.svgDark Red x.svg
Coda Panic20072.7.7 [6]   OOjs UI icon edit-ltr-progressive.svg 2020-11-05Objective-C$99 Proprietary Yes check.svg
ConTEXT ConTEXT Project Ltd1999 Object Pascal (Delphi) No cost BSD-3-ClauseYes check.svg
Crimson Editor Ingyu Kang19993.72-r286m [7]   OOjs UI icon edit-ltr-progressive.svg 2011-10-01C++ No cost Proprietary Yes check.svg
CudaTextUVViewSoft [a] 20151.217.5.1 [8]   OOjs UI icon edit-ltr-progressive.svg 2024-09-05 Object Pascal (Lazarus) No cost MPL-2.0 Yes check.svgDark Red x.svg
ed Ken Thompson 1970unchanged from originalC No cost ?Dark Red x.svgYes check.svg
Editra Cody Precord20070.7.202013-01-05 Python No cost wxWindows license Yes check.svgDark Red x.svg
EmEditor Emurasoft, Inc.199721.3.02021-11-24C++$39.99SharewareYes check.svgDark Red x.svg
epsilon Lugaru Software198414.00 [9] 2020-10-20C$250 Proprietary
FeatherPad Pedram Pourang20161.4.1 [10]   OOjs UI icon edit-ltr-progressive.svg 2023-06-12C++, Qt No cost GPL-3.0-or-later Yes check.svgDark Red x.svg
gedit GNU Project200046.1 [11]   OOjs UI icon edit-ltr-progressive.svg 2023-08-01C No cost GPL-2.0-or-later Yes check.svgDark Red x.svg
Geany Enrico Tröger20052.0.0 [12]   OOjs UI icon edit-ltr-progressive.svg 2023-10-19C, GTK+ No cost GPL-2.0-or-later Yes check.svgDark Red x.svg
GNU Emacs Richard Stallman 198429.4 [13]   OOjs UI icon edit-ltr-progressive.svg 2024-06-22C, Emacs Lisp No cost GPL-3.0-or-later Yes check.svgYes check.svg
GNU nano Chris Allegretta19998.2 [14]   OOjs UI icon edit-ltr-progressive.svg 2024-09-05C No cost GPL-3.0-or-later Dark Red x.svgYes check.svg
IA Writer Information Architects2010.09.225.62020-12-07 Objective-C (iOS), Objective-C (macOS), C# (Windows), Java (Android)$29.99 Proprietary Yes check.svgDark Red x.svg
JED John E. Davis19920.99-19  OOjs UI icon edit-ltr-progressive.svg 2009-12-13C, S-Lang No cost GPL-2.0-or-later Dark Red x.svgYes check.svg
jEdit Slava Pestov 1998 Java No cost GPL-2.0-or-later Yes check.svgDark Red x.svg
JOE Joseph Allen1988C No cost GPLDark Red x.svgYes check.svg
JOVE Johnathon Payne1983C No cost JOVE licenseDark Red x.svgYes check.svg
Kate KDE Project2000-1224.08.2 [15]   OOjs UI icon edit-ltr-progressive.svg 2024-10-10C++ No cost GPLYes check.svgDark Red x.svg
KEDIT Mansfield Software Group, Inc.19831.6.12016-12-05C$129 Proprietary Dark Red x.svgYes check.svg
Komodo Edit Activestate 200712.0.1 [16]   OOjs UI icon edit-ltr-progressive.svg 2020-02-10Python, JavaScript, Perl, Tcl, PHP, Ruby No cost MPL, GPL, LGPL Yes check.svgDark Red x.svg
Komodo IDE Activestate2001Python, JavaScript, Perl, Tcl, PHP, Ruby$295 Proprietary Yes check.svgDark Red x.svg
KWrite KDE Project200024.02 [17]   OOjs UI icon edit-ltr-progressive.svg 2024-02-28C++ No cost GPLYes check.svgDark Red x.svg
LE Alexander V. Lukyanov19971.16.8 [18]   OOjs UI icon edit-ltr-progressive.svg 2021-02-05C++ No cost GPL-3.0-or-later Dark Red x.svgYes check.svg
Leo Edward K. Ream19966.7.6 [19]   OOjs UI icon edit-ltr-progressive.svg 2023-12-19Python No cost MIT Yes check.svgDark Red x.svg
Light Table Chris Granger20120.8.1 [20]   OOjs UI icon edit-ltr-progressive.svg 2016-01-22 ClojureScript No cost MIT Yes check.svgDark Red x.svg
mcedit Miguel de Icaza 19944.8.32 [21]   OOjs UI icon edit-ltr-progressive.svg 2024-08-23C, Python, PHP, Javascript, Perl, Tcl, Ruby No cost GPL-3.0-or-later Dark Red x.svgYes check.svg
Metapad Alexander Davidson19993.6 [22] [23]   OOjs UI icon edit-ltr-progressive.svg 2011-05-28C No cost GPL-3.0-or-later Yes check.svgDark Red x.svg
mg Dave Conroy1986current [b] 2020-07-22C No cost Public domain Dark Red x.svgYes check.svg
MinEd Thomas Wolff19922022.272022-12-23C No cost GPLDark Red x.svgYes check.svg
MS-DOS Editor Microsoft 19912.0.026Bundled with MS-DOS, Microsoft Windows Proprietary Dark Red x.svgYes check.svg
ne Sebastiano Vigna
Todd Lewis
Daniele Filaretti
19933.3.3 [25]   OOjs UI icon edit-ltr-progressive.svg 2023-10-19C No cost GPL-3.0-or-later Dark Red x.svgYes check.svg
NEdit Mark Edel19915.7 [26]   OOjs UI icon edit-ltr-progressive.svg 2017-02-08C No cost GPL-2.0-or-later Yes check.svgDark Red x.svg
Notepad Microsoft198511.2302.16.0 MASM (originally)Bundled with Microsoft Windows Proprietary Yes check.svgDark Red x.svg
Notepad++ Don Ho2003-11-258.7.1 [27]   OOjs UI icon edit-ltr-progressive.svg 2024-11-04 C++ No cost GPL-3.0-or-later Yes check.svgDark Red x.svg
nvi Keith Bostic 19941.81.6 [28]   OOjs UI icon edit-ltr-progressive.svg 2007-11-18C No cost BSD-3-Clause Dark Red x.svgYes check.svg
Pico University of Washington 19924.64C No cost Apache-2.0 Dark Red x.svgYes check.svg
PimNote Pimtel20231.2.0 [29] 2023-04-22C# No cost Proprietary Yes check.svgDark Red x.svg
PolyEdit PolySoft Solutions19985.420100407$27.95SharewareYes check.svgDark Red x.svg
PSPad Jan Fiala20025.0.7 [30]   OOjs UI icon edit-ltr-progressive.svg 2023-03-10Object Pascal (Delphi) No cost Proprietary Yes check.svgDark Red x.svg
RJ TextEd Rickard Johansson200415.63 [31]   OOjs UI icon edit-ltr-progressive.svg 2022-09-29Object Pascal (Delphi) No cost Proprietary Yes check.svgDark Red x.svg
Sam Rob Pike 1980s (early)stableC No cost LPL (OSI approved)Dark Red x.svgYes check.svg
SciTE Neil Hodgson19995.3.7 [32]   OOjs UI icon edit-ltr-progressive.svg 2023-07-26C++$41.99 for macOS. No cost for others HPND Yes check.svgDark Red x.svg
SlickEdit SlickEdit, Inc.198828.0.12024-01-21 C, Slick-C$299 Proprietary Yes check.svgDark Red x.svg
Smultron Peter Borg200412.0.6  OOjs UI icon edit-ltr-progressive.svg 2020-01-03Objective-C$7.99 Proprietary Yes check.svgDark Red x.svg
SubEthaEdit TheCoding­Monkeys20035.2.4 [33]   OOjs UI icon edit-ltr-progressive.svg 2022-01-08 No cost MIT Yes check.svg
Sublime Text Jon Skinner, Sublime HQ20084 (Build 4180) [34]   OOjs UI icon edit-ltr-progressive.svg 2024-08-06 C++ , Python $99 Shareware Yes check.svgDark Red x.svg
TED Notepad Juraj Simlovic20016.3.1 [35]   OOjs UI icon edit-ltr-progressive.svg 2021-12-01C No cost Proprietary Yes check.svgDark Red x.svg
Textadept Mitchell200712.4 [36]   OOjs UI icon edit-ltr-progressive.svg 2024-05-01C, Lua No cost MIT Yes check.svgYes check.svg
TextEdit Apple Inc. 20011.18  OOjs UI icon edit-ltr-progressive.svg 2022-10-24 No cost (also bundled with macOS) BSD-3-Clause Yes check.svgDark Red x.svg
TextMate MacroMates2004-10-102.0.23 [37]   OOjs UI icon edit-ltr-progressive.svg 2021-10-12Objective-C++ No cost GPL-3.0-or-later Yes check.svgDark Red x.svg
TextPad Helios Software Solutions19929.3.0 [38]   OOjs UI icon edit-ltr-progressive.svg 2023-08-01$30.00 (£16.50)SharewareYes check.svgDark Red x.svg
TextWrangler Bare Bones Software 20035.5.22016-09-20 No cost Proprietary Yes check.svg
The SemWare Editor Sammy Mitchell1985-114.49 [39]   OOjs UI icon edit-ltr-progressive.svg 2023-01C, SAL No cost BSD-2-Clause
UltraEdit IDM Computer Solutions 199425.02018-03-12C++$99.95 Proprietary Yes check.svgDark Red x.svg
VEDIT Ted Green, Greenview Data19806.24.22015-01-12 Assembly, C$89 standard, $239 Pro64 Proprietary Yes check.svgYes check.svg
vi Bill Joy 19763.7C No cost BSD-4-Clause or CDDLDark Red x.svgYes check.svg
Vim Bram Moolenaar 19919.1.0 [40] [41]   OOjs UI icon edit-ltr-progressive.svg 2024-01-02C, Vim script No cost VimYes check.svgYes check.svg
Visual Studio Code Microsoft 20151.95.3 [42]   OOjs UI icon edit-ltr-progressive.svg 2024-11-15 JavaScript, TypeScript No cost Source code: MIT [43]
Binaries built by Microsoft: Proprietary [44] [45]
Yes check.svgDark Red x.svg
XEmacs Lucid Inc. 199121.4.22 [46]   OOjs UI icon edit-ltr-progressive.svg 2009-01-30C, Emacs Lisp No cost GPL-2.0-or-later Yes check.svgYes check.svg
XNEdit Olaf Wintermann20181.5.22023-10-05C No cost GPL-2.0-or-later Yes check.svgDark Red x.svg

Operating system support

This section lists the operating systems that different editors can run on. Some editors run on additional operating systems that are not listed.

Cross-platform

Natural language (localization)

Available languages for the UI
Languages supported
Acme English
AkelPadEnglish, 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
CudaTextMain: 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 [48] English, German, French
JOVE English
Kate [49] English, German, French, Polish, Japanese, Italian, Dutch, Portuguese, Spanish, Swedish
KEDIT English
Komodo Edit English
KWrite English, German, Italian, Spanish, Swedish
Metapad [50] 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 [51] 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

Document interface

Notes

Basic features

Programming features

Notes

Extra features

Large file support:

Yes check.svg= Larger than 4 GiB (LFS)Yes check.svg2 GB= Larger than 1 GB, not limited by memory
memory= Limited by available memory   Dark Red x.svg (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. [96]

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 custom key bindings.

Text editor support for key bindings.
Dynamically customizable IBM CUA macOS Vi Emacs Pico WordStar WordPerfect Brief
Acme Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
AkelPadYes check.svg ? ? ? ? ? ? ? ?
Alphatk  ? ? ? ? ? ? ? ? ?
Atom  ? ? ? ? ? ? ? ? ?
BBEdit [97] [98] Yes check.svg ?Yes check.svg ?Yes check.svg ? ? ? ?
BluefishYes check.svg ?Yes check.svg ? ? ? ? ? ?
Brackets Yes check.svgPartialYes check.svgYes check.svg
Plugin
Yes check.svg
Plugin
Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Coda Yes check.svg ?Yes check.svg ? ? ? ? ? ?
ConTEXT  ? ? ? ? ? ? ? ? ?
Crimson Editor  ? ? ? ? ? ? ? ? ?
CudaTextYes check.svg ? ? ? ? ? ? ? ?
ed Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Editra Dark Red x.svgDark Red x.svgDark Red x.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
EmEditor Yes check.svg ? ? ? ? ? ? ? ?
epsilon Yes check.svg ? ? ?Yes check.svg ? ? ?Yes check.svg
Geany Yes check.svg ? ? ? ? ? ? ? ?
gedit Yes check.svg
[bw]
 ? ? ? ? ? ? ? ?
GNU Emacs Yes check.svgYes check.svgYes check.svgYes check.svgYes check.svgPartial
[99]
Yes check.svg
[100]
Yes check.svg
[101]
Yes check.svg
[101]
JED Yes check.svgPartial
[bx]
 ?Yes check.svgYes check.svg ?Yes check.svg ?Yes check.svg
jEdit Yes check.svg ?Yes check.svgYes check.svg ? ? ? ? ?
JOE [102] Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svgYes check.svgYes check.svgYes check.svgDark Red x.svgDark Red x.svg
JOVE Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svgYes check.svgDark Red x.svgYes check.svg
[103]
Dark Red x.svgDark Red x.svg
LE Yes check.svg ? ?Dark Red x.svg ? ? ? ? ?
Light Table Yes check.svgPartial ?Yes check.svg
Plugin
Yes check.svg
Plugin
 ? ? ? ?
Kate Yes check.svgDark Red x.svgDark Red x.svgYes check.svg
[104]
Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
KEDIT Yes check.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Komodo Edit Yes check.svg ?Yes check.svgYes check.svgYes check.svg ? ? ? ?
Komodo IDE Yes check.svg ?Yes check.svgYes check.svgYes check.svg ? ? ? ?
KWrite Yes check.svg ? ? ? ? ? ? ? ?
Metapad  ? ? ? ? ? ? ? ? ?
mg Yes check.svg ? ? ?Yes check.svg ? ? ? ?
mined  ? ? ? ?Yes check.svgYes check.svgYes check.svg ? ?
MS-DOS Editor Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Nano Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svgPartial
[105]
Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
NEdit Yes check.svg ? ? ? ? ? ? ? ?
Notepad Dark Red x.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Notepad++ PartialYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
nvi  ? ? ?Yes check.svg ? ? ? ? ?
Pico Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgPartial
[105]
Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
PolyEdit  ? ? ? ? ? ? ? ? ?
PSPad Yes check.svg ? ? ? ? ? ? ? ?
RJ TextEd Yes check.svg ? ? ? ? ? ? ? ?
Sam Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
SciTE Partial
[by]
 ? ?Dark Red x.svgDark Red x.svgDark Red x.svg ? ? ?
SlickEdit Yes check.svg
[bz]
Yes check.svgYes check.svg
[ca]
Partial
[cb]
Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svgYes check.svg
Smultron  ? ? ? ? ? ? ? ? ?
SubEthaEdit Dark Red x.svgDark Red x.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
TED Notepad  ? ? ? ? ? ? ? ? ?
TextEdit Dark Red x.svgDark Red x.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
TextMate Dark Red x.svgDark Red x.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
TextPad Yes check.svg ? ? ? ? ? ? ? ?
TextWrangler [97] [106] Yes check.svg ?Yes check.svgDark Red x.svgYes check.svgDark Red x.svg ? ? ?
The SemWare Editor Yes check.svg ? ? ? ? ? ? ? ?
UltraEdit Yes check.svg ?Dark Red x.svg ? ? ? ? ? ?
VEDIT Yes check.svgYes check.svgDark Red x.svgDark Red x.svg
[107]
Dark Red x.svgDark Red x.svgYes check.svgYes check.svgYes check.svg
vi Yes check.svgDark Red x.svgDark Red x.svgYes check.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Vim PartialYes check.svg
Plugin [108]
Yes check.svg
Plugin [109]
Yes check.svg
[cc]
Yes check.svg
Plugin [cd]
 ?Yes check.svg
Plugin [111]
Dark Red x.svgYes check.svg
Plugin [112]
Visual Studio Code Yes check.svgDark Red x.svgYes check.svgYes check.svg
Plugin [113]
Yes check.svg
Plugin [114]
Dark Red x.svgDark Red x.svgDark Red x.svgPartial
Plugin [115]
XEmacs Yes check.svgYes check.svgYes check.svgYes check.svgYes check.svgPartial
[99]
Yes check.svg
[100]
Yes check.svg
[101]
Yes check.svg
[101]
XNEdit Yes check.svg ? ? ? ? ? ? ? ?
Dynamically customizableIBM CUAmacOSViEmacsPicoWordStarWordPerfectBrief

Notes, bugs

Protocol support

Support for editing files over a network or the Internet.

Text editor support for remote file editing over network protocols
FTP HTTP SSH WebDAV
Acme Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
AkelPadDark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Alphatk Yes check.svgDark Red x.svgDark Red x.svgYes check.svg
Atom  ? ? ? ?
BBEdit Yes check.svgDark Red x.svgYes check.svgDark Red x.svg
BluefishYes check.svgYes check.svgYes check.svgYes check.svg
Brackets Yes check.svg
Plugin
Dark Red x.svgDark Red x.svgDark Red x.svg
Coda Yes check.svgYes check.svgYes check.svgYes check.svg
ConTEXT Dark Red x.svg
[118]
 ?Dark Red x.svg
[118]
 ?
Crimson Editor Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
CudaTextYes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
ed Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Editra  ? ? ? ?
EmEditor Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Geany Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
gedit Yes check.svgYes check.svgYes check.svgYes check.svg
GNU Emacs Yes check.svgYes check.svgYes check.svgYes check.svg
JED Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
jEdit Yes check.svg
plugin [119]
Yes check.svg
[120]
Yes check.svg
plugin [119]
Yes check.svg
plugin.
JOE Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
JOVE Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
LE Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Kate Yes check.svgYes check.svgYes check.svgYes check.svg
KEDIT Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Komodo IDE Yes check.svg
FTP, FTPS, SFTP
Dark Red x.svgYes check.svgDark Red x.svg
KWrite Yes check.svgYes check.svgYes check.svgYes check.svg
Metapad Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
mined  ? ? ? ?
MS-DOS Editor Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Nano Dark Red x.svgDark Red x.svgYes check.svgDark Red x.svg
FTP HTTP SSH WebDAV
NEdit Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Notepad Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Notepad++ Yes check.svg
Plugin for FTP, FTPS, FTPES, SFTP
Dark Red x.svgYes check.svg
Plugin
Dark Red x.svg
nvi Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Pico Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
PolyEdit Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
PSPad Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
RJ TextEd Yes check.svg
FTP, SFTP
Dark Red x.svgYes check.svgDark Red x.svg
Sam Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
SciTE Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
SlickEdit Yes check.svgYes check.svgYes check.svgDark Red x.svg
Smultron Yes check.svg ? ? ?
SubEthaEdit Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
TED Notepad Dark Red x.svg
[121]
 ?Dark Red x.svg
[121]
 ?
TextEdit Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
TextMate Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
TextPad Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
TextWrangler Yes check.svg
FTP, SFTP [122]
Dark Red x.svgYes check.svgDark Red x.svg
The SemWare Editor Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
UltraEdit Yes check.svgDark Red x.svgYes check.svgDark Red x.svg
VEDIT Yes check.svgDark Red x.svgDark Red x.svgDark Red x.svg
vi Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
Vim Yes check.svg
[123]
Yes check.svg
[123]
Yes check.svg
[123]
Yes check.svg
[123]
Visual Studio Code Yes check.svg
Plugin [124]
Yes check.svg
Plugin (limited?) [124]
Yes check.svg
Plugin [124]
Yes check.svg
Plugin [124]
XEmacs Yes check.svgYes check.svgYes check.svg ?
XNEdit Dark Red x.svgDark Red x.svgDark Red x.svgDark Red x.svg
FTP HTTP 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.

Right-to-left and bidirectional text

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) & bidirectional (bidi) support
Right-to-left (RTL)Bi-directional (Bidi)
Acme Dark Red x.svgDark Red x.svg
AkelPadDark Red x.svgDark Red x.svg
Alphatk  ? ?
Atom Dark Red x.svgDark Red x.svg
BBEdit Yes check.svgYes check.svg
BluefishYes check.svgYes check.svg
Brackets  ? ?
Coda  ? ?
ConTEXT  ? ?
Crimson Editor  ? ?
ed  ? ?
Editra  ? ?
EmEditor Dark Red x.svgDark Red x.svg
Geany  ? ?
gedit Yes check.svgYes check.svg
GNU Emacs Yes check.svgYes check.svg
[cp]
JED  ? ?
jEdit Dark Red x.svgDark Red x.svg
JOE  ? ?
JOVE Dark Red x.svgDark Red x.svg
LE  ? ?
Kate Yes check.svgYes check.svg
KEDIT Dark Red x.svgDark Red x.svg
Komodo Edit Dark Red x.svgDark Red x.svg
Komodo IDE Dark Red x.svgDark Red x.svg
KWrite  ? ?
Metapad  ? ?
MS-DOS Editor  ? ?
mined Yes check.svg
[cq]
Yes check.svg
[cq]
Nano  ? ?
RTLBidi
NEdit Dark Red x.svgDark Red x.svg
Notepad Yes check.svgYes check.svg
Notepad++ Yes check.svgPartial
[cr]
nvi  ? ?
Pico  ? ?
PolyEdit  ? ?
PSPad  ? ?
RJ TextEd Yes check.svgYes check.svg
Sam Dark Red x.svgDark Red x.svg
SciTE Dark Red x.svgDark Red x.svg
SlickEdit  ? ?
Smultron  ? ?
SubEthaEdit Yes check.svgYes check.svg
TED Notepad  ? ?
TextEdit Yes check.svgYes check.svg
TextMate Dark Red x.svgDark Red x.svg
TextPad  ? ?
TextWrangler Yes check.svgYes check.svg
The SemWare Editor Dark Red x.svgDark Red x.svg
UltraEdit Dark Red x.svgDark Red x.svg
VEDIT  ? ?
vi  ? ?
Vim Yes check.svgYes check.svg
through terminal support
Visual Studio Code Dark Red x.svgYes check.svg
XEmacs  ? ?
XNEdit Dark Red x.svgDark Red x.svg
RTLBidi

Newline support

Support for newline characters in line endings
Windows (CR/LF) Unix-like systems (including macOS) [127] (LF) Classic Mac OS (CR)
Acme Yes check.svgYes check.svgYes check.svg
AkelPadYes check.svgYes check.svgYes check.svg
Alphatk Yes check.svgYes check.svgYes check.svg
Atom Yes check.svgYes check.svgDark Red x.svg
BBEdit Yes check.svgYes check.svgYes check.svg
BluefishYes check.svgYes check.svgYes check.svg
Brackets Yes check.svgYes check.svgDark Red x.svg
Coda Yes check.svgYes check.svgYes check.svg
ConTEXT Yes check.svgYes check.svgYes check.svg
Crimson Editor Yes check.svgYes check.svgYes check.svg
CudaTextYes check.svgYes check.svgYes check.svg
ed Dark Red x.svgYes check.svgDark Red x.svg
Editra Yes check.svgYes check.svgYes check.svg
EmEditor Yes check.svgYes check.svgYes check.svg
Geany Yes check.svgYes check.svgYes check.svg
gedit Yes check.svgYes check.svgYes check.svg
GNU Emacs [cs] Yes check.svgYes check.svgYes check.svg
JED Yes check.svgYes check.svgYes check.svg
jEdit Yes check.svgYes check.svgYes check.svg
JOE [128] Yes check.svgYes check.svgDark Red x.svg
JOVE Yes check.svgYes check.svgYes check.svg
Kate Yes check.svgYes check.svgYes check.svg
KEDIT Yes check.svgYes check.svgYes check.svg
Komodo Edit Yes check.svgYes check.svgYes check.svg
Komodo IDE Yes check.svgYes check.svgYes check.svg
KWrite Yes check.svgYes check.svgYes check.svg
LE Yes check.svgYes check.svgDark Red x.svg
Metapad Yes check.svgYes check.svg ?
MS-DOS Editor Yes check.svgDark Red x.svgDark Red x.svg
mined Yes check.svgYes check.svgYes check.svg
Nano Yes check.svgYes check.svgYes check.svg
NEdit Yes check.svgYes check.svgYes check.svg
Notepad Yes check.svgDark Red x.svgDark Red x.svg
Notepad++ Yes check.svgYes check.svgYes check.svg
nvi  ?Yes check.svg ?
Pico Yes check.svgYes check.svgYes check.svg
PolyEdit Yes check.svgYes check.svgYes check.svg
PSPad Yes check.svgYes check.svgYes check.svg
RJ TextEd Yes check.svgYes check.svgYes check.svg
Sam  ? ? ?
SciTE Yes check.svgYes check.svgYes check.svg
SlickEdit Yes check.svgYes check.svgYes check.svg
Smultron Yes check.svgYes check.svgYes check.svg
SubEthaEdit Yes check.svgYes check.svgYes check.svg
Sublime Text Yes check.svgYes check.svgYes check.svg
TED Notepad Yes check.svgYes check.svgYes check.svg
TextEdit Yes check.svgYes check.svgYes check.svg
TextMate Yes check.svgYes check.svgYes check.svg
TextPad Yes check.svgYes check.svgYes check.svg
TextWrangler Yes check.svgYes check.svgYes check.svg
The SemWare Editor Yes check.svgYes check.svgYes check.svg
UltraEdit Yes check.svgYes check.svgYes check.svg
VEDIT Yes check.svgYes check.svgYes check.svg
vi Dark Red x.svgYes check.svgDark Red x.svg
Vim Yes check.svgYes check.svgYes check.svg
Visual Studio Code Yes check.svgYes check.svgYes check.svg
XEmacs Yes check.svgYes check.svgYes check.svg
XNEdit Yes check.svgYes check.svgYes check.svg
Windows (CR/LF)Unix-like systems (including macOS) (LF)Classic Mac OS (CR)

See also

Notes

  1. alexey_t, kvichans, matthias030.
  2. last update in OpenBSD repo [24]
  3. 1 2 No native support, available as a part of the Inferno port for Windows or by using `plan9port` over the WSL.
  4. 1 2 3 4 5 Requires Cygwin or the Windows Subsystem for Linux to run on Windows.
  5. 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 GEdit FTP download server.
  6. 1 2 3 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.
  7. Stand alone NSIS installable package is available
  8. gedit supports single document window splitting via plugins. Archived 2011-12-14 at the Wayback Machine .
  9. gedit supports multiple document window splitting via plugins. Archived 2011-12-14 at the Wayback Machine .
  10. 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 Tabbar plugin.
  11. GNU Emacs can support a tabbed document interface modelled after GNU Screen using the elscreen Archived 2008-01-17 at the Wayback Machine package.
  12. 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.
  13. mined supports Copy/Paste between multiple documents in separate windows, when these documents are in separate terminal windows
  14. SciTE_max_buffers
  15. Vim Provided GVim is used.
  16. Vim version 7 supports a tabbed document interface. Earlier versions can emulate tabs through scripts, for example. [52]
  17. 1 2 3 4 Acme can invoke external commands and display their return values in order to integrate additional functionality.
  18. ConTEXT does not support regular expression backreferences in its search and replace function. Archived 2007-12-18 at archive.today
  19. ConTEXT only supports converting text to UTF-16. Also, it can only use one type of new-line format if converting to UTF-16.
  20. Geany supports spell checking via a plugin
  21. gedit supports spell checking via a plugin, which is distributed with gedit.
  22. gedit supports Regex-based find & replace via plugins ( Archived 2011-12-14 at the Wayback Machine ).
  23. 1 2 Emacs supports spell checking via the external programs ispell, aspell, or Hunspell.
  24. jEdit supports spell checking via an external plugin.
  25. JOE supports spell checking via the ispell or aspell external plugins.
  26. JOE uses a non-standard regular expression syntax.
  27. JOE can easily pipe text through the GNU recode(1) utility; it detects locale settings and allows editing in any encoding set up by the environment.
  28. Komodo Edit is based on Scintilla and may support virtual space similar to Geany and Notepad++ ()
  29. Komodo IDE is based on Scintilla and may support virtual space similar to Geany and Notepad++ ()
  30. LE can pipe text through the GNU recode(1) utility
  31. Metapad spell checking by calling external program Aspell.
  32. mined supports multiple lines in search and replacement expressions.
  33. mined can convert the encoding format when using the Copy & Paste feature between multiple documents (that have different encodings).
  34. 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.
  35. 1 2 3 It is possible to start external applications from inside Sam and display their return values.
  36. Scintilla-based editors such as SciTE, Notepad2 and Notepad++ do not support alternation (
  37. UltraEdit uses the Boost C++ regex library. While Boost supports backreferences past \9 with \g{10}, UltraEdit has not yet implemented this feature.
  38. 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 here.
  39. Vim version 7 supports spell checking natively. Earlier versions require a script. [64]
  40. Visual Studio Code does not support virtual space, and rectangular selection beyond line endings is not possible.
  41. Acme's auto-completion only works on file names.
  42. bluefish: Configurable via the outputbox feature.
  43. With external tool OpenCTags
  44. ed can invoke external commands, like a compiler.
  45. EmEditor Professional supports Auto Complete via plugins (32-bit or 64-bit).
  46. Geany uses its own tags file format, not compatible with ctags, see the manual.
  47. gedit-folding: Folding plugin for Gedit
  48. gedit: Compiler integration: Functionality in plugins installed with gedit.
  49. make can be launched from the LE text editor, but the output is not captured
  50. Evaluates expressions in some dynamic languages such as Clojure, Python and Javascript in realtime
  51. mined: Syntax highlighting: HTML/XML, Javascript, JSP.
  52. Notepad++ comes with Function List support, and it can be enhanced via plugins.
  53. Notepad++ installs with auto complete list for multiple programming languages. Has user option to add additional personalized auto complete list(s).
  54. Function list (and stuff) available in Ru-Board build, ver 1.79.66Ru and later
  55. TextMate: Auto complete: Supported language bundles
  56. Textpad uses an add-on ()
  57. 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.
  58. The Semware Editor: Auto complete: Supported via supplied/user-created lists.
  59. The Semware Editor: Text folding: Compressed view possible.
  60. Not in the Linux version.
  61. Vedit: Auto complete: Template editing, plus 3rd party macro for expanding symbols from tags database.
  62. Multi-line regex support Support for expressions spanning several lines (e.g. "\n\n(.+)\n\n")
  63. Alpha Macro support via AppleScript, Tcl or text factories.
  64. BBEdit Macro support via AppleScript, Perl, Python, Lasso, shell scripts or text factories.
  65. Coda offers macros via AppleScript, text "clips,"or plugins (Cocoa apps or any installed scripting language).
  66. name
  67. Cssed Macro support via Python.
  68. jEdit: Limited by Java heap size. [81]
  69. Kate: Line length is limited by default. The limit can be removed, but long lines may cause poor performance. [84]
  70. LE text editor locks the file and warns if someone else has changed the file
  71. LE text editor can view and edit large files or their parts in mmap-shared mode
  72. UltraEdit has no real limit on file size - and can easily open, edit, and save large text files in excess of 4 GB! .
  73. 2GB with 32 Bits, on a 64 Bit system it depends on the available virtual memory.
  74. Emacs: 64-bit compilation on 64-bit OS can handle 2 GB files, otherwise the limit is 512  MiB.
  75. It is possible to customize all Gedit shortcuts because it is Gtk based.
  76. 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 jedmodes/jed-extra and the "Red Project" have improved versions, tackling the former problem in particular.
  77. In SciTE, custom keystrokes may be assigned to Lua scripts, external programs or lexers (highlighters).
  78. SlickEdit provides emulation of Visual Studio, Visual C++ 6, CodeWright, Epsilon and ISPF key bindings in addition to those given in the table.
  79. SlickEdit supports CodeWarrior, Xcode and BBEdit key binding emulation.
  80. SlickEdit includes support of vi key bindings, the ex command line and some, but not all Vim extensions.
  81. Vim emulates vi keys fully when in 'compatible' mode
  82. Vim With a script [110]
  83. 1 2 3 4 5 6 when choosing e.g. Terminal font
  84. 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).
  85. 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).
  86. JEDs 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 Red Project releases include an enhanced version of these scripts.
  87. nvi Gentoo
  88. SciTE can open files in UTF or one single-byte encoding specified in a configuration file.
  89. 1 2 TextPad can load and save UTF-8 and UTF-16 text files, but cannot use or even preserve characters outside of the system encoding. [125]
  90. when choosing e.g. New Courier font
  91. 1 2 Vedit can convert UTF-8 and UTF-16 files to Windows character set and back. Characters not included in Windows charset can be preserved.
  92. Vim supports EBCDIC when compiled on a system that uses the EBCDIC character set.
  93. from version 21.5.29
  94. GNU Emacs

    (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."

    (2) According to the online GNU Emacs manual (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.
  95. 1 2 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
  96. 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
  97. 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.

Related Research Articles

<span class="mw-page-title-main">Vim (text editor)</span> Improved version of the Vi keyboard-oriented text editor

Vim is a free and open-source, screen-based text editor program. It is an improved clone of Bill Joy's vi. Vim's author, Bram Moolenaar, derived Vim from a port of the Stevie editor for Amiga and released a version to the public in 1991. Vim is designed for use both from a command-line interface and as a standalone application in a graphical user interface. Since its release for the Amiga, cross-platform development has made it available on many other systems. In 2018, it was voted the most popular editor amongst Linux Journal readers; in 2015 the Stack Overflow developer survey found it to be the third most popular text editor, and in 2019 the fifth most popular development environment.

gedit Linux text editor

gedit is a text editor designed for the GNOME desktop environment. It was GNOME's default text editor and part of the GNOME Core Applications until GNOME version 42 in March 2022, which changed the default text editor to GNOME Text Editor. Designed as a general-purpose text editor, gedit emphasizes simplicity and ease of use, with a clean and simple GUI, according to the philosophy of the GNOME project. It includes tools for editing source code and structured text such as markup languages.

Ctags is a programming tool that generates an index file of names found in source and header files of various programming languages to aid code comprehension. Depending on the language, functions, variables, class members, macros and so on may be indexed. These tags allow definitions to be quickly and easily located by a text editor, a code search engine, or other utility. Alternatively, there is also an output mode that generates a cross reference file, listing information about various names found in a set of language files in human-readable form.

jEdit Cross platform text editor

jEdit is a free software text editor available under GPL-2.0-or-later. It is written in Java and runs on any operating system with Java support, including BSD, Linux, macOS and Windows.

<span class="mw-page-title-main">Source-code editor</span> Text editor specializing in software code

A source-code editor is a text editor program designed specifically for editing source code of computer programs. It may be a standalone application or it may be built into an integrated development environment (IDE).

<span class="mw-page-title-main">Notepad++</span> Text editor and source code editor for Windows

Notepad++, is a text and source code editor for use with Microsoft Windows. It supports tabbed editing, which allows working with multiple open files in one window. The program's name comes from the C postfix increment operator.

GNU Readline is a software library that provides in-line editing and history capabilities for interactive programs with a command-line interface, such as Bash. It is currently maintained by Chet Ramey as part of the GNU Project.

<span class="mw-page-title-main">TextMate</span> GUI text editor for macOS

TextMate is a free and open-source general-purpose GUI text editor for macOS created by Allan Odgaard. TextMate features declarative customizations, tabs for open documents, recordable macros, folding sections, snippets, shell integration, and an extensible bundle system.

This article compares computer software tools that are used for accomplishing comparisons of files of various types. The file types addressed by individual file comparison apps varies but may include text, symbols, images, audio, or video. This category of software tool is often called "file comparison" or "diff tool", but those effectively are equivalent terms — where the term "diff" is more commonly associated with the Unix diff utility.

<span class="mw-page-title-main">Geany</span> Integrated Development Environment

Geany is a free and open-source lightweight GUI text editor using Scintilla and GTK, including basic IDE features. It is designed to have short load times, with limited dependency on separate packages or external libraries on Linux. It has been ported to a wide range of operating systems, such as BSD, Linux, macOS, Solaris and Windows. The Windows port lacks an embedded terminal window; also missing from the Windows version are the external development tools present under Unix, unless installed separately by the user. Among the supported programming languages and markup languages are C, C++, C#, Java, JavaScript, PHP, HTML, LaTeX, CSS, Python, Perl, Ruby, Pascal, Haskell, Erlang, Vala and many others.

<span class="mw-page-title-main">GNU Emacs</span> GNU version of the Emacs text editor

GNU Emacs is a text editor and suite of free software tools. Its development began in 1984 by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement.

Emacs, originally named EMACS, is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, self-documenting, real-time display editor". Development of the first Emacs began in the mid-1970s, and work on GNU Emacs, directly descended from the original, is ongoing; its latest version is 29.4 , released June 2024.

<span class="mw-page-title-main">Simultaneous editing</span>

In human–computer interaction, simultaneous editing is an end-user development technique allowing a user to make multiple simultaneous edits of text in a multiple selection at once through direct manipulation.

<span class="mw-page-title-main">Leafpad</span> Lightweight text editor

Leafpad is a free and open-source graphical text editor for Linux, Berkeley Software Distribution (BSD), and Maemo that is similar to the Microsoft Windows program Notepad. Created with the focus of being a lightweight text editor with minimal dependencies, it is designed to be simple-to-use and easy-to-compile.

<span class="mw-page-title-main">Pluma (text editor)</span> Default text editor for the MATE desktop environment

Pluma is a fork of gedit 2 and the default text editor of the MATE desktop environment used in Linux distributions. It extends the basic functionality with other features and plugins.

<span class="mw-page-title-main">Spacemacs</span> Free software

Spacemacs is a configuration framework for GNU Emacs. It can take advantage of all of GNU Emacs' features, including both graphical and command-line user interfaces, and being executable under X Window System and within a Unix shell terminal. It is free and open-source software (FOSS) released under the GPL-3.0-or-later license.

<span class="mw-page-title-main">Xed</span> Lightweight text editor forked from Pluma

Xed is a lightweight text editor forked from Pluma and is the default text editor in Linux Mint.

EditorConfig is an open specification and file format for Syntax highlighting, text editors and integrated development environment (IDEs) that aims to maintain a consistent coding style, particularly aimed at groups working together. It can help keep multiple editors as well as individuals using the same conventions. It stores configurations in a file which can be shared by multiple people or used in multiple editors. It defines rules for how to format different programming languages or other structured text files with conventions such as what character to end a line with and how to manage indentation.

References

  1. "Alphatk news". Archived from the original on 5 February 2009.
  2. "Release 1.63.1". 23 November 2022. Retrieved 7 December 2022.
  3. https://www.barebones.com/support/bbedit/notes-15.0.3.html.{{cite web}}: Missing or empty |title= (help)
  4. https://bluefish.openoffice.nl/download.html.{{cite web}}: Missing or empty |title= (help)
  5. "Brackets 2.2.1 release". 22 March 2023. Retrieved 24 September 2023.
  6. https://library.panic.com/releasenotes/coda2/ . Retrieved 25 July 2021.{{cite web}}: Missing or empty |title= (help)
  7. "Emerald Editor - Browse /crimsoneditor/crimson-editor-3.72-r286m at SourceForge.net".
  8. "Release 1.217.5.1".
  9. "Epsilon 14 Update Information". Lugaru Software, Ltd. Retrieved 2020-10-22.
  10. "Release 1.4.1".
  11. "News in 46.1".
  12. "Release Geany 2.0 · geany/geany". GitHub. 19 October 2023. Retrieved 23 October 2023.
  13. Stefan Kangas (22 June 2024). "Emacs 29.4 released" . Retrieved 22 June 2024.
  14. "[Info-nano][ANNOUNCE] nano-8.2 is released". 5 September 2024. Retrieved 5 September 2024.
  15. "Kate" . Retrieved 14 October 2024.
  16. "Release 12.0.1".
  17. "Releases: 24.02" . Retrieved 12 March 2024.
  18. https://github.com/lavv17/le/releases/tag/v1.16.8.{{cite web}}: Missing or empty |title= (help)
  19. "Release 6.7.6". 19 December 2023. Retrieved 19 December 2023.
  20. "Release 0.8.1". 22 January 2016. Retrieved 14 March 2018.
  21. Yury V. Zaytsev (23 August 2024). "[mc] Midnight Commander 4.8.32 released" . Retrieved 24 August 2024.
  22. "Announcing Metapad 3.6". Archived from the original on 12 June 2011.
  23. "3.6 final version change".
  24. "src/usr.bin/mg at master · openbsd/src". GitHub. Retrieved 2020-10-21.
  25. "Release 3.3.3". 19 October 2023. Retrieved 20 October 2023.
  26. "NEdit - Browse /nedit-source at SourceForge.net".
  27. "Notepad++ v8.7.1 release". 4 November 2024. Retrieved 5 November 2024.
  28. "nvi 1.81.6". 18 November 2007.
  29. Pimtel. Pimnote.
  30. "Full version: 5.0.7 (770) - 10 March 2023". 10 March 2023. Retrieved 14 March 2023.
  31. https://www.rj-texted.se/download.html.{{cite web}}: Missing or empty |title= (help)
  32. "History of SciTE, Scintilla, and Lexilla".
  33. "SubEthaEdit v5.2.4".
  34. "Download". Sublime HQ.
  35. https://jsimlo.sk/notepad/changes.php.{{cite web}}: Missing or empty |title= (help)
  36. "Release 12.4". 1 May 2024. Retrieved 25 May 2024.
  37. https://github.com/textmate/textmate/releases/tag/v2.0.23.{{cite web}}: Missing or empty |title= (help)
  38. https://www.textpad.com/relnotes-textpad#v9030.{{cite web}}: Missing or empty |title= (help)
  39. "SemWare homepage" . Retrieved 24 October 2023.
  40. "Vim 9.1 is available". 2 January 2024. Retrieved 3 January 2024.
  41. "Release v9.1.0". 2 January 2024. Retrieved 3 January 2024.
  42. "October 2024 Recovery 3" . Retrieved 16 November 2024.
  43. "LICENSE.txt". github.com/Microsoft/vscode. Microsoft. 17 November 2015.
  44. "Microsoft Software License Terms". code.visualstudio.com. Microsoft . Retrieved 16 August 2016.
  45. "The best parts of Visual Studio Code are proprietary".
  46. "XEmacs: XEmacs 21.4.22 "Instant Classic" is released". 30 January 2009. Retrieved 19 July 2023.
  47. "New Features in Epsilon 13". www.lugaru.com.
  48. "JOE - Joe's own editor". JOE - Joe's own editor / Mercurial / [2e4f45] /po. Retrieved 23 October 2015.
  49. "KDE Localization - Apps » stable » kate.po". l10n.kde.org.
  50. "Metapad language plugins". liquidninja.com.
  51. "Localised SciTE". scintilla.org.
  52. "TabBar - Plugin to add tab bar ( derived from miniBufExplorer). : vim online". www.vim.org.
  53. "Geany".
  54. "Gedit/Plugins/ColumnMode - GNOME Wiki!". Archived from the original on 2012-01-11.
  55. "Virtual space for rectangular selections (at least)". Stack Exchange . Retrieved 13 March 2023.
  56. "Selecting Text".
  57. "GitHub - rschroll/lt-spelling: Spell check plugin for Light Table". April 29, 2015 via GitHub.
  58. 1 2 "Super User's BSD Cross Reference: /OpenBSD/usr.bin/mg/re_search.c". bxr.su.
  59. 1 2 NEdit supports spell checking via a plugin
  60. Notepad++ 6.3.3 Archived 2013-11-26 at the Wayback Machine and above support spell checking via the DSpellCheck plugin, which is included with the default package.
  61. https://wiki.c2.com/?SlickEdit [ bare URL ]
  62. SubEthaEdit supports advanced block editing, including multi-line typing and non-contiguous block selections.
  63. "Virtual space". 28 March 2012.
  64. "Engspchk - Spelling checker: On-the-fly spell checking, multi-language, alternate spellings : vim online". www.vim.org.
  65. "Indent with virtual spaces in Vim?". reddit.com. 28 January 2021.
  66. "Virtual Space is not implemented. · Issue #13960 · microsoft/Vscode". GitHub .
  67. "GitHub - ffes/npptags: Universal Ctags plug-in for Notepad++". March 7, 2019 via GitHub.
  68. "NotePad++ Plugin. Allows to connect to SQL Servers, execute SQL commands and views results: vladk1973/npp.connections". June 21, 2019 via GitHub.
  69. "TSE-Pro Files". www.semware.com.
  70. Vim has a popular TagList plugin that provides a function list.
  71. "Feature Request: Integrated Shell/Terminal Access · Issue #14490 · atom/atom". GitHub.
  72. "atom-macros". Atom. 8 June 2022.
  73. "Multi-line find and replace in project · Issue #398 · atom/find-and-replace". GitHub.
  74. "Handling large files presents no intrinsic problems for BBEdit, though some specific operations may be limited when dealing with files over 2GB in size." BBEdit FAQs Archived 2019-07-29 at the Wayback Machine .
  75. "Gedit File Search Plugin". oliver.github.io.
  76. "GNU Emacs 23.2 NEWS -- history of user-visible changes".
  77. "Buffers". 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.
  78. "Does Emacs have problems with large files?".
  79. "GNU emacs manual - Narrowing".
  80. "The JED Editor" (PDF). Archived from the original (PDF) on 2012-01-05. Retrieved 2009-12-08.
  81. "'Re: [ jEdit-users ] Big file take AGES' - MARC". marc.info.
  82. "JOE - Joe's Own Editor". JOE - Joe's own editor / Mercurial / [2e4f45] /docs/man.md. Retrieved 23 October 2015. The search covers all loaded buffers.
  83. 1 2 kwrite-devel, Large Files open slowly due to futile Syntax-Highlighting
  84. "The Kate Handbook".
  85. 1 2 "Macros". docs.activestate.com.
  86. Lines longer than ~700 characters frequently cause crashes. KatePart documentation Archived 2018-01-07 at the Wayback Machine (which is also the KWrite documentation, see here Archived 2018-01-07 at the Wayback Machine )
  87. metapad FAQ, Loading Large Files
  88. "Notepad++ - How to Remotely work on the Same File in Real Time". 11 January 2016. Archived from the original on 2021-12-12 via www.youtube.com.
  89. "Text limit". Community. January 16, 2019.
  90. "Configurable through settings".
  91. "PSPad forum / Bug report / Hlášení chyb / cannot open large file". forum.pspad.com.
  92. "Edit large mbox files - MozillaZine Knowledge Base". kb.mozillazine.org.
  93. "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." TextWrangler FAQs Archived 2019-10-10 at the Wayback Machine .
  94. "GitHub - FredKSchott/CoVim: Collaborative Editing for Vim". November 13, 2019 via GitHub.
  95. "Live Share - Visual Studio Marketplace". marketplace.visualstudio.com.
  96. Comparison of Windows Text Editors for Large Files: Text editors for large files
  97. 1 2 "Bare Bones Software | BBEdit Comparison Chart". www.barebones.com.
  98. "Bare Bones Software | Features". www.barebones.com.
  99. 1 2 pico uses most of Emacs's motion and deletion commands: ^F ^B ^P ^N ^D etc. See Pico: A Unix text editor Archived 2012-09-05 at the Wayback Machine retrieved 20120109.
  100. 1 2 GNU Emacs can have Wordstar emulation, with the command M-x wordstar-mode, as found from ws-mode.el retrieved 20170314. See also the "Emulation" section of the previous GNU Emacs manual. The WordStar mode, however, has been obsolete since GNU Emacs 24.5.
  101. 1 2 3 4 "AC.27 Emulation". GNU Emacs manual. Retrieved 2021-12-06.
  102. "JOE - Joe's Own Editor". JOE - Joe's own editor / Mercurial / [2e4f45] /docs/man.md. Retrieved 23 October 2015. 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 [...].
  103. "Usenet". www.megalextoria.com.
  104. Kate supports an optional VI Input Mode Archived 2009-02-28 at the Wayback Machine .
  105. 1 2 pico (and nano) uses most of Emacs's motion and deletion commands: ^F ^B ^P ^N ^D etc. See Pico: A Unix text editor Archived 2012-09-05 at the Wayback Machine retrieved 20120109.
  106. "Bare Bones Software | TextWrangler Features". www.barebones.com. Archived from the original on 2017-08-11. Retrieved 2009-06-05.
  107. Vedit: Old Unix and QNX versions could emulate Vi 100%. Windows version doesn't come with vi emulation.
  108. "GitHub - fabi1cazenave/cua-mode.vim: Make CTRL-ZXCV behave like in Notepad". February 26, 2019 via GitHub.
  109. "GitHub - likaci/ViFinder: Vim like Keybinding FileManager for OS X." October 13, 2019 via GitHub.
  110. "Vimacs - Vim-Improved eMACS: Emacs emulation for Vim : vim online". www.vim.org.
  111. "Vim distribution optimized for writing". Sep 16, 2021 via GitHub.
  112. "brief.vim - Brief editor key binding emulation in Vim : vim online". www.vim.org.
  113. "Vim - Visual Studio Marketplace". marketplace.visualstudio.com.
  114. "Emacs - Visual Studio Marketplace". marketplace.visualstudio.com.
  115. "Brief Editor Keymap Emulation - Visual Studio Marketplace". marketplace.visualstudio.com.
  116. "Vim - General - unable to map ctrl-1". vim.1045645.n5.nabble.com. Archived from the original on 2017-12-01. Retrieved 2017-11-30.
  117. "Vim - General - How to map (say) Ctrl-Shift-B". vim.1045645.n5.nabble.com. Archived from the original on 2017-12-01. Retrieved 2017-11-30.
  118. 1 2 Text Editor Features Archived 2007-12-18 at archive.today at ConTEXT.cx
  119. 1 2 jEdit FTP and SFTP are supported via the FTP plugin.
  120. jEdit: "HTTP is supported natively"
  121. 1 2 "TED Notepad". jsimlo.sk.
  122. "Bare Bones Software | TextWrangler Tour". www.barebones.com. Archived from the original on 2019-11-29. Retrieved 2019-11-16.
  123. 1 2 3 4 Vim Supported via netrw plugin distributed in the standard Vim installation.
  124. 1 2 3 4 "Remote Workspace - Visual Studio Marketplace". marketplace.visualstudio.com. Archived from the original on 2019-05-10. Retrieved 2019-05-09.
  125. "Community :: View topic - Unicode Conformance". forums.textpad.com.
  126. "Support EBCDIC encodings · Issue #49891 · microsoft/vscode". GitHub.
  127. "Did Mac OS Lion switch to using line feeds (LF '\n') for line breaks instead of carriage returns (CR '\r')?". Super User.
  128. "JOE - Joe's Own Editor". JOE - Joe's own editor / Mercurial / [2e4f45] /docs/man.md. Retrieved 23 October 2015. 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.