CodeMirror

{{short description|JavaScript component that provides a code editor in the browser}}

{{Infobox software

| name = CodeMirror

| logo = Baboon.svg

| caption =

| developer = Marijn Haverbeke

| repo = {{URL|https://github.com/codemirror/dev}}

| programming language = JavaScript

| platform = Web

| genre = Source code editor

| license = MIT

| website = {{URL|https://codemirror.net/}}

| latest release version = 6.0.1

| latest release date = {{start date and age|2022|06|30}}{{cite web|url=https://codemirror.net/docs/changelog/|title=CodeMirror Changelog|access-date=2023-06-30}}

}}{{Portal|Free and open-source software}}

CodeMirror is a JavaScript component that provides a code editor in the browser. It has a rich programming API and a focus on extensibility.

History

The first version of the editor was written early 2007, for the console in the Eloquent JavaScript website. The code was first packaged up and released under the name CodeMirror in May 2007. This version was based on the contentEditable feature of browsers.{{cite web|url=https://codemirror.net/1/story.html|title=Implementing a Syntax-Highlighting JavaScript Editor—in JavaScript|date=2007-05-24}}

In late 2010, the Ace project, another JavaScript-based code editor, pioneered new implementation techniques and demonstrated that it is possible, even in JavaScript, to handle documents with many thousands of lines without degraded performance. This prompted a rewrite of CodeMirror {{cite web|url=https://groups.google.com/forum/?fromgroups=#!topic/codemirror/Wo6JQCSp9YA|title=CodeMirror 2 has entered beta|date=2011-02-08}} along the same principles. The result was version 2, which no longer relied on contentEditable and significantly improved performance.

Version 6 was released in 2022.{{cite web|first1=Marijn|last1=Haverbeke|url=https://discuss.codemirror.net/t/codemirror-6-0-has-been-released/4498|title=CodeMirror 6.0 has been released|date=2022-06-08}}{{cite web|first1=Marijn|last1=Haverbeke|url=https://marijnhaverbeke.nl/blog/codemirror-6.html|title=CodeMirror 6.0|date=2022-06-08}} The library has been split into a collection of packages,{{cite web|url=https://codemirror.net/docs/migration/|title=CodeMirror 5 to 6 Migration Guide|access-date=2023-06-30}}{{cite web|url=https://codemirror.net/docs/guide//|title=CodeMirror System Guide|access-date=2023-06-30}} and core packages are released independently.

See also

References

{{reflist}}