Skip to content

fox0430/moe

develop
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

moe

A command line based editor inspired by Vim written in Nim.

This project's goals are easily customizable, high productivity, user friendly, and high performance editor.

moe

Features

  • Written in Nim

  • Adopt GapBuffer

  • UTF-8 and other encodings support (Incomplete)

  • Vim like mode (Normal, Insert, Visual, Replace, Ex, Filer)

  • Vim like keybinds

  • Infinite undo/redo

  • Syntax highlighting:

    • C
    • C++
    • C#
    • Haskell
    • Java
    • JavaScript
    • Markdown
    • Nim
    • Python
    • Rust
    • Shell languages:
      • Bash
    • TOML
    • YAML
  • Auto-complete

  • Configuration file (TOML)

  • Configuration mode

  • Live reload of the configuration file

  • Vertical/Horizontal split window

  • Tab line

  • Indentation lines

  • Auto close/delete paren

  • Simple auto indent

  • Incremental search

  • Auto save

  • Suggestions in ex mode

  • TrueColor (24bit color)

  • VSCode themes

  • Build on save

  • Multiple status line

  • QuickRun

  • Automatic backups

  • Highlight current words

  • Highlight/Delete trailing spaces

  • Vim like register

  • Git support

  • Syntax checker

    • Nim
  • Macros

  • Language Server Protocol (WIP)

Planned features

  • Supports regular expression and PEG

  • Supports EditorConfig

  • Window management

  • Snippets

  • Spell checker

  • Terminal

  • Select data structures

  • Edit files over ssh

  • Fuzzy search

  • Plugins

  • Supports huge file

  • Funny animation...

Install

We recommend Linux environments.

Requires

  • Nim 1.6.2 or higher

  • Ncurses 6.1 or higher

  • xclip v0.13 or higher (Option on GNU/Linux)

  • xsel (Option on GNU/Linux)

# Latest developmental state inside Github repository
nimble install moe@#head

Check detail

Usage

Documents (Latest)

Documents (Release)

The origin of the name

moe is a recursive acronym for "moe is an optimal editor".
And one more, it comes from the Japanese slang 萌え(moe).

Contributing, bug reports, feature request

Welcome❤

Community

Ask me anything!

License

GNU General Public License version 3