neuroradiology / evil-helix

An experimental fork to bring the Helix editor to the evil side

Home Page:https://github.com/usagi-flow/helix

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

evil-helix

A soft fork of Helix which introduces Vim keybindings and more.

Build status

Screenshot


Important

This project is a work-in-progress, but should be stable enough for daily usage.

Installation

Download a package and extract it in /opt. Additionally, it's recommended to symlink it in /usr/local/bin:

cd /opt
sudo curl -Lo helix.tar.gz https://github.com/usagi-flow/evil-helix/releases/download/release-<VERSION>/helix-<ARCH>-<OS>.tar.gz
sudo tar -xf helix.tar.gz
cd /usr/local/bin
sudo ln -sv /opt/helix/hx .

Builds are not in package repositories yet.

Project philosophy

Configurable features instead of plugins

This fork seeks to implement functionality as part of the editor, and make it configurable. The added functionality includes a Vim look-and-feel, but also other features.

In contrast, the upstream project, Helix, mostly limits its scope to its current core functionality, and defers further functionality to the future Scheme-based plugin system.

Compared to plugins, implementing features as part of the editor greatly improves performance, and avoids the risk of plugin compatibility issues.

Sensible defaults

In addition, sensible defaults are crucial: The editor must offer a wide range of tools for your job, but it must do what you expect an editor to do.

Avoid Scheme/Lisp

Scheme/Lisp should not be forced onto the user. It's error-prone and harder to read by humans, compared to Rust/TOML/Lua/...

If upstream Helix moves to a Scheme-based configuration, this project will seek to keep a user-friendly alternative.

Project goals

  • Introduce more Vim keybindings
  • Implement common/crucial features as part of the editor:
  • Maintain compatibility with upstream
    • Isolate features to minimize conflicts with upstream changes
    • Contribute features to upstream where possible
    • Ensure (through CI) that rebasing is always possible
    • Find a name for this project

Development

Keep in mind the main branch is regularly being rebased onto the upstream master branch.

About

An experimental fork to bring the Helix editor to the evil side

https://github.com/usagi-flow/helix

License:Mozilla Public License 2.0


Languages

Language:Rust 81.5%Language:Scheme 17.3%Language:Handlebars 0.5%Language:Nix 0.4%Language:CSS 0.1%Language:Shell 0.1%Language:Elvish 0.1%Language:C++ 0.0%