Emacs
At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing. Content-aware editing modes, including syntax coloring, for many file types. Complete built-in documentation, including a tutorial for new users. Full Unicode support for nearly all human scripts. Highly customizable, using Emacs Lisp code or a graphical interface. A wide range of functionality beyond text editing, including a project planner, mail and news reader, debugger interface, calendar, IRC client, and more. A packaging system for downloading and installing extensions. Built-in support for arbitrary-size integers. Text shaping with HarfBuzz. Native support for JSON parsing. Better support for Cairo drawing. Portable dumping used instead of unexec. Support for XDG conventions for init files. Additional early-init initialization file. Built-in support for tab bar and tab-line. Support for resizing and rotating of images without ImageMagick.
Learn more about Emacs
Sublime Text
4.1 out of 5 stars
(21 Ratings)
A sophisticated text editor for code, markup and prose. Use Goto Anything to open files with only a few keystrokes, and instantly jump to symbols, lines or words. Make ten changes at the same time, not one change ten times. Multiple selections allow you to interactively change many lines at once, rename variables with ease, and manipulate files faster than ever. The Command Palette holds infrequently used functionality, like sorting, changing the syntax and changing the indentation settings. With just a few keystrokes, you can search for what you want, without ever having to navigate through the menus or remember obscure key bindings. Sublime Text has a powerful, Python API that allows plugins to augment built-in functionality. Package Control can be installed via the command palette, providing simple access to thousands of packages built by the community.
Learn more about Sublime Text
OCaml
OCaml is a general-purpose, industrial-strength programming language with an emphasis on expressiveness and safety. OCaml’s powerful type system means more bugs are caught at compile time, and large, complex codebases are easier to maintain. This makes it a good language for running critical code. At the same time, sophisticated inference makes the type system unobtrusive, creating a smooth developer experience. One is a bytecode compiler which generates small, portable executables and is very fast. The other is a native code compiler that produces more efficient machine code; its performance matches the highest standards of modern compilers. OCaml has great support for the most popular editors. VS Code is recommended for beginners, and for power users there is deep integration with Vim and Emacs. OCaml has a rich and dynamic community and best-in-class tooling.
Learn more about OCaml
Neovim
5.0 out of 5 stars
(1 Rating)
API is first-class, discoverable, versioned, documented. MessagePack structured communication enables extensions in any language. Remote plugins run as co-processes, safely and asynchronously. GUIs, IDEs, web browsers can, embed Neovim as an editor or script host. Works the same everywhere, one build-type, one command. Modern terminal features such as cursor styling, focus events, bracketed paste. Built-in terminal emulator and strong defaults. Fully compatible with Vim's editing model and Vimscript v1. Start with :help nvim-from-vim if you already use Vim. The current stable release version is 0.5 (RSS). See the roadmap for progress and plans. With 30% less source-code than Vim, the vision of Neovim is to enable new applications without compromising Vim's traditional roles. Lua is built-in, but Vimscript is supported with the most advanced Vimscript engine in the world (featuring an AST-producing parser).
Learn more about Neovim