This article provides basic feature comparison between some of the JavaScript-based source code editors available today.
Editor | Site | Latest version | Style, clone of | Cost (US$) | Software license | Open source | Browser support | Activity |
---|---|---|---|---|---|---|---|---|
Ace | Home, demo | v1.4.12, 2020-7 | Sublime Text / Microsoft Visual Studio | Free | New BSD License | Yes | Firefox 3.5+, Safari 4+, Chrome, IE 8+, Opera 11.5+ | Yes |
Atom | Home | v1.50.0-beta0, 2020-07-14 | Emacs, Vim and others | Free | Dual | Yes | Chrome | No |
CodeMirror | Home, demo | 5.59.1, 2020-12-31 | plain textarea | Free | MIT-like | Yes | Firefox 3+, Chrome, Safari 3+, Internet Explorer 8+, Opera 9+ [1] | Yes |
CodeJar | Home, demo | 1.0.2, 2020-04-05 | plain textarea | Free | MIT | Yes | Firefox 3+, Chrome, Safari 3+, Internet Explorer 8+, Opera 9+ | Yes |
Codeanywhere | Home | 6.0 | SublimeText | - | Public Cloud | No | Firefox 3+, Chrome, Safari 3+, Internet Explorer 8+, Opera 9+ | Yes |
Codenvy Editor | Home | 2.10.17, 2014-01-17 | Eclipse | - | Public Cloud | Yes | Firefox 3+, Chrome, Safari 3+, Internet Explorer 8+, Opera 9+ | Yes |
Orion | Home | 22.0, 2020-04-03. | Eclipse SWT StyledText, regular textarea | Free | dual-licensed: BSD 3-clause and EPL | Yes | Firefox 37+, Chrome 40+, Safari7+, Internet Explorer 11+ [2] | No |
Monaco (Visual Studio Code) | Home, demo | 0.31.1, 2021-12-14 | Visual Studio Code | Free | MIT | Yes | IE8+, Firefox 4+, Chrome | Yes |
Markitup | Home, demo | 1.1.14, 2013-02-04 | Markup editor, no syntax highlight | Free | MIT, GPL | Yes | IE 6 & 7, Firefox 2 & 3, Safari 3.1, Opera 9+ [3] | No |
LDT | Home | 2012-02-19 | regular textarea | Free | MIT, GPL | Yes | Firefox 3.6+, IE8, Chromium 16, Midori 4.1, Opera 11, Epiphany | No |
Ymacs | Home Archived 2011-02-10 at the Wayback Machine , demo Archived 2011-03-01 at the Wayback Machine | 0.5, 2012-03-28 | Emacs | Free | BSD | Yes | Firefox, Chrome, Safari | No |
CodePress | Home | 0.9.6, 2007-09-26 | Microsoft Visual Studio | Free | LGPL | Yes | ? | No |
CodeTextArea | Home, demo | 2009-06 | Microsoft Visual Studio | Free | BSD | Yes | Dojo widget | No |
EditArea | Home, demo | 0.8.2, 2010-01-14 | Microsoft Visual Studio | Free | LGPL | Yes | IE 6+, Firefox 1.5+, Safari 3+, Opera 9+, Chrome [4] | No |
Helene | Home, demo | 0.9, unknown release date | Microsoft Visual Studio | Free | GPL | Yes | No | |
9ne | Home | ? | Emacs | Free | GPL | Yes | No | |
jsvi | Home Archived 2007-10-11 at the Wayback Machine | ? | vi | Free | GPL | Yes | No | |
MDK-Editor | Home | 2.10, 2008 | Microsoft Visual Studio | Depends on use | Dual | Code is readable | tested to work on: IE 6, 7 - Firefox 2, 3 - Chrome | No |
Micro | Home | 2013 | nano | Free | GPL | Yes | No | |
HirenJS Code Editor | Home | 2023-05 | plain textarea | Free | MIT | Yes | Firefox 3.5+, Safari 4+, Chrome, IE 8+, Opera 11.5+ | Yes |
Feature testing was performed with Firefox 3.0.6 against the current demo version, and results may not match those in other browsers or downloadable versions.
Feature | Ace | CodeMirror | CodeJar | Orion | CodePress | CodeTextArea | EditArea | Helene | markItUp! | MDK-Editor | Monaco Editor (Visual Studio Code) |
---|---|---|---|---|---|---|---|---|---|---|---|
Implementation | nestable full parsers | pattern-based parser | pattern-based parser | parsers | |||||||
Syntax highlight | Over 110 languages | 129 languages | Yes | mixed mode: HTML + JavaScript and CSS, PHP, EJS; single mode: JavaScript, Java, JSON, CSS, Python, Ruby, XML, YAML (pluggable) | limited mixed mode: HTML + JavaScript (no CSS), PHP + HTML (no JavaScript or CSS), Java, Perl, SQL | only keywords | only one language at a time: Perl, PHP, CSS, Javascript, Python, HTML, XML, VB, C, CPP, SQL, Pascal, Basic, Brainf*ck | PHP | No | mixed mode: PHP + HTML + JavaScript + CSS, single-mode: PHP, Javascript, CSS, XML; extensible | Hundreds of languages |
Syntax checking | HTML, CSS, JavaScript (using JSHint) | Some | No | JavaScript (using JSLint) | No | No | HTML, JavaScript (using JSLint) | HTML, CSS, JavaScript, TypeScript | |||
Tab support | Yes | Yes | Yes | Yes | Some | Yes | Yes | Yes | |||
Indent, new line keeps level | optional setting that is on by default | Yes | Yes | Yes | very limited | No | Yes | N/A (can't press Enter) | No | Yes | Yes |
Indent, syntax | Yes | Yes | Yes | Yes | No | No | No | ||||
Indent, selected block | yes, including Shift+Tab | either automatically, or block-level indent/unindent | Yes | yes, including Shift+Tab | No | yes, including Shift+Tab | yes, including Shift+Tab and using context menu | yes, including Shift+Tab | |||
Bracket matching | Yes | Yes | No | Yes | an implementation exists with mouse-hover bracket matching [ citation needed ] | Ctrl+B; no angle bracket matching | No | matching bracket ([{<>}]) always highlighted | Yes | ||
XML matching tag highlight | Yes | Yes | No | No | No | Yes | Yes | ||||
Code folding | Yes | Yes [5] | No | Some [6] | No | No | No | No | No | No | Yes |
Code snippets | Yes | through API/add-on | Some | type 'for' or 'if' then Tab | No | Yes | No | Yes | JavaScript | ||
Code suggestion | Yes | example | Yes through esprima content assist plugin | No | yes[ citation needed ] | No | CSS, HTML, JavaScript) | Yes | |||
Toggle syntax highlight on/off | Yes | Yes | No | last example in demo | N/A | textmode | |||||
Keyboard shortcuts | All Common Shortcuts & Custom Keybindings | fully configurable | Yes | some common used: Ctrl+f, Ctrl+g,Ctrl+z,Ctrl+y | Yes | All key combos (except F1 in IE7) can be bound to shortcuts | Yes | ||||
Line numbers | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | supports mouse selection | Yes |
Search & replace | regex supported | via API | No | Yes | No | toolbar button | has API for the studio | Yes | |||
Spell checking | addon for context menu | No | No | No | browser-based | none | browser-based | none | browser-based | No | |
Toolbar | But command line console | No | No | No | No | Yes | No | Yes | No | ||
Visual styling | Fully theme-able | CSS-based themes | Yes | Yes | font-type and font-size | 5 styles to choose from, having 2 font-sizes | Yes | ||||
Undo/Redo | Yes | Yes | Yes | Yes | Yes | Yes | Differential Undo | Yes | |||
Multiple cursors / Block selection | Multiple cursors | Yes | No | Yes | No | No | No | No | No | No | |
IndentGuides | Yes | No | No | No | No | No | No | No | No | No | |
Inline widgets | Yes | Yes | No | No | No | No | No | No | No | No | |
Non US charset support | Yes | Yes | Yes | Yes | No | ||||||
Diff editor | Yes |
Netscape Communicator is a discontinued Internet suite produced by Netscape Communications Corporation, and was the fourth major release in the Netscape line of browsers. It was first in beta in 1996 and was released in June 1997. Netscape Communicator addressed the problem of Netscape Navigator 3.x being used as both the name of the suite and the browser contained within it by renaming the suite to Netscape Communicator. It included more groupware features intended to appeal to enterprises.
WorldWideWeb is the first web browser and web page editor. It was discontinued in 1994. It was the first WYSIWYG HTML editor.
KDevelop is a free and open-source integrated development environment (IDE) for Unix-like computer operating systems and Windows. It provides editing, navigation and debugging features for several programming languages, and integration with build automation and version-control systems, using a plugin-based architecture.
Xfig is a free and open-source vector graphics editor which runs under the X Window System on most UNIX-compatible platforms.
In interface design, a tab is a graphical user interface object that allows multiple documents or panels to be contained within a single window, using tabs as a navigational widget for switching between sets of documents. It is an interface style most commonly associated with web browsers, web applications, text editors, and preference panels, with window managers and tiling window managers.
NetSurf is an open-source web browser which uses its own layout engine. Its design goal is to be lightweight and portable. NetSurf provides features including tabbed browsing, bookmarks and page thumbnailing.
The Mozilla Application Suite is a discontinued cross-platform integrated Internet suite. Its development was initiated by Netscape Communications Corporation, before their acquisition by AOL. It was based on the source code of Netscape Communicator. The development was spearheaded by the Mozilla Organization from 1998 to 2003, and by the Mozilla Foundation from 2003 to 2006.
Raster graphics editors can be compared by many variables, including availability.
Komodo Edit is a free and open source text editor for dynamic programming languages. It was introduced in January 2007 to complement ActiveState's commercial Komodo IDE. As of version 4.3, Komodo Edit is built atop the Open Komodo project. Komodo IDE is no longer supported and maintained by developers for Python.
Free Download Manager is a download manager for Windows, macOS, Linux and Android.
TinyMCE is an online rich-text editor released as open-source software under the GNU General Public License version 2 or later. It converts HTML textarea
fields, or other designated HTML elements, into editor instances.
CodeLite is a free and open-source IDE for the C, C++, PHP, and JavaScript (Node.js) programming languages.
ELinks is a free text-based web browser for Linux, DOS, and Windows operating systems.
Classilla is a Gecko-based Internet suite for PowerPC-based classic Macintosh operating systems, essentially an updated descendant of the defunct Mozilla Application Suite by way of the Mac OS port maintained in the aborted WaMCom project. The name is a portmanteau of Classic, and Mozilla.
Brackets is a source code editor with a primary focus on web development. Created by Adobe Inc., it is free and open-source software licensed under the MIT License, and is currently maintained on GitHub by open-source developers. It is written in JavaScript, HTML and CSS. Brackets is cross-platform, available for macOS, Windows, and most Linux distributions. The main purpose of Brackets is its live HTML, CSS and JavaScript editing functionality.
VP9 is an open and royalty-free video coding format developed by Google.
CodeMirror is a JavaScript component that provides a code editor in the browser. It has a rich programming API and a focus on extensibility.
asm.js is a subset of JavaScript designed to allow computer software written in languages such as C to be run as web applications while maintaining performance characteristics considerably better than standard JavaScript, which is the typical language used for such applications.
Media Source Extensions (MSE) is a W3C specification that allows JavaScript to send byte streams to media codecs within web browsers that support HTML video and audio. Among other possible uses, this allows the implementation of client-side prefetching and buffering code for streaming media entirely in JavaScript. It is compatible with, but should not be confused with, the Encrypted Media Extensions (EME) specification, and neither requires the use of the other, although many EME implementations are only capable of decrypting media data provided via MSE.
Visual Studio Code, also commonly referred to as VS Code, is a source-code editor developed by Microsoft for Windows, Linux, macOS and web browsers. Features include support for debugging, syntax highlighting, intelligent code completion, snippets, code refactoring, and embedded version control with Git. Users can change the theme, keyboard shortcuts, preferences, and install extensions that add functionality.