That's a good question - it's a new editor based on CodeMirror 6, which among other things will allow us to use the same code for both the mobile app (which already uses CM6) and the desktop app. The refactoring should also make it easier to support plugins on mobile, but maybe @personalizedrefriger can confirm about this?
That's correct! If plugin authors write plugins to support the CodeMirror 6 beta editor on desktop, it will be much easier to port them to mobile. We provide a limited and somewhat-buggy compatibility layer that should allow some plugins to work in the beta editor with minimal modification. Plugins can access the CodeMirror 6 API through the .cm6
or .editor
properties on the compatibility layer.
Another goal is accessibility by default (see this related issue).
The editor also includes:
- Spellcheck that is disabled in some parts of the editor (e.g. URLs, math, code) and enabled in others.
- Better (in some cases ) markdown editing. For example, lists are re-numbered when items are indented.
- Support for replacement decorations in plugins, which I don't think were supported in CodeMirror 5.
- A newer version of CodeMirror's Vim emulation, which addresses this issue.