# Helix — A Post-Modern Modal Text Editor > Helix is a post-modern modal text editor inspired by Kakoune. Written in Rust with batteries-included defaults: Tree-sitter, LSP, multi-cursor, selection-first editing, and beautiful themes. Zero-config replacement for Vim for most users. ## Install Save as a script file and run: ## Quick Use ```bash # Install brew install helix # macOS sudo apt install helix # Debian/Ubuntu cargo install --locked helix-term # From source # Launch hx file.rs ``` Config `~/.config/helix/config.toml`: ```toml theme = "onedark" [editor] line-number = "relative" mouse = true bufferline = "multiple" cursorline = true [editor.cursor-shape] insert = "bar" normal = "block" select = "underline" [editor.indent-guides] render = true [editor.lsp] display-messages = true ``` Key idea: **selection first, then action** (opposite of Vim). - `w` — select word - `x` — select line - `s` — select matching pattern - `d` — delete selection - `c` — change selection - `%` — select whole file ## Intro Helix is a post-modern modal text editor inspired by Kakoune and Neovim. Written in Rust with a batteries-included philosophy: Tree-sitter, LSP, multi-cursor, fuzzy file picker, and themes are all built in — no plugin manager needed for most workflows. Selection-first editing model where you pick targets before applying commands. - **Repo**: https://github.com/helix-editor/helix - **Stars**: 43K+ - **Language**: Rust - **License**: MPL 2.0 ## What Helix Does - **Multi-cursor native** — selection + cursors as first-class primitives - **Tree-sitter** — semantic selection via `Alt+o/i` (expand/shrink) - **LSP** — built-in client for any LSP server - **Fuzzy picker** — `space+f` file picker with preview - **Pickers** — buffers, symbols, workspace symbols, diagnostics - **Themes** — 100+ built in - **Tutor** — `hx --tutor` for interactive tutorial - **No plugins yet** — scheme-based plugin system WIP ## Architecture Rust terminal editor. Uses Ratatui for rendering, crossterm for events, Tree-sitter for parsing, tower-lsp for LSP. Selection-first model: every action operates on the current selection. ## Self-Hosting CLI editor, single Rust binary. ## Key Features - Batteries-included (no plugin hunt) - Multi-cursor first-class - Tree-sitter semantic selections - Built-in LSP client - 100+ themes - Fuzzy file picker - Visual tutor - Fast startup - Crash-safe autosave ## Comparison | Editor | Model | Config | Plugins | Batteries | |---|---|---|---|---| | Helix | Kakoune-like | TOML | WIP | Yes | | Neovim | Vim | Lua | Huge | No (DIY) | | Vim | Vim | Vimscript | Large | No | | Kakoune | Own | kakrc | Scripts | Partial | | VS Code | Mouse + shortcuts | JSON | Huge | Yes | ## 常见问题 FAQ **Q: 没 plugin 可以吗?** A: 内置功能已经覆盖 80% Vim 插件生态(LSP、tree-sitter、pickers、git)。plugin system 正在开发中。 **Q: Vim 用户能适应吗?** A: 需要一两小时:从 verb-noun(Vim)切到 noun-verb(Helix)。例:Vim `dw` → Helix `wd`。运行 `hx --tutor` 系统学习。 **Q: 性能如何?** A: Rust 编写,启动 <50ms,大文件流畅。比 VS Code 快一个数量级。 ## 来源与致谢 Sources - Docs: https://docs.helix-editor.com - GitHub: https://github.com/helix-editor/helix - License: MPL 2.0 --- Source: https://tokrepo.com/en/workflows/6ed079cf-35cb-11f1-9bc6-00163e2b0d79 Author: Script Depot