gitmyhub

oni

TypeScript ★ 11k updated 6y ago ▣ archived

Oni: Modern Modal Editing - powered by Neovim

A code editor that combines Vim's keyboard-driven modal editing style with a modern graphical window and IDE features like code completion, error highlighting, and a fuzzy file finder, built on top of Neovim.

TypeScriptNeovimJavaScriptsetup: moderatecomplexity 3/5

Oni is a code editor that pairs the keyboard-driven editing style of Vim with a modern graphical interface and IDE-like features. It is built on top of Neovim, a modernized version of Vim, and adds a visual layer and developer tooling on top of it.

Vim and Neovim use a style called modal editing, where pressing keys does different things depending on which mode you are in. In normal mode, you navigate and run commands with keyboard shortcuts; in insert mode, you type text. This approach is popular among developers who prefer working without reaching for a mouse. Oni brings that editing model to a graphical window rather than a plain terminal.

On top of Neovim, Oni adds features you would find in editors like Visual Studio Code: code completion, quick information about code symbols, syntax and compilation error highlighting, a fuzzy file finder, a status bar, and an embedded browser. An interactive tutorial is also included. Plugins can be written in JavaScript instead of VimL, the built-in Vim scripting language, which makes extension development more accessible to a wider range of developers.

The editor runs on Windows, Mac, and Linux. At the time of this README, the project was under active development and considered unstable before a 1.0 release. It is open source under the MIT license and accepts financial support through Patreon, Open Collective, and BountySource.

Where it fits