A post-modern modal text editor. https://helix-editor.com
  • Rust 76.3%
  • Tree-sitter-Query 22.8%
  • Handlebars 0.4%
  • Nix 0.2%
  • CSS 0.1%
Find a file
Matouš Dzivjak 14d6bc0feb
fix(dap): configuration done body is not required (#15993)
Respect the DAP specs where the `body` for `ConfigurationDone` server
response **isn't** required.

Fixes: https://github.com/helix-editor/helix/issues/15975
2026-07-06 14:46:41 -05:00
.cargo Add hook/event system 2024-01-23 11:20:19 +09:00
.github build(deps): bump dtolnay/rust-toolchain (#15957) 2026-07-03 10:42:45 +09:00
book Revert "Add language support for Doxygen" 2026-07-04 18:01:34 -04:00
contrib feat(contrib): add completions for --strict (#15830) 2026-06-23 16:17:17 +09:00
docs docs: fix contributing wording (#15452) 2026-03-24 09:33:24 +09:00
helix-core Add unit tests for to_camel_case_with and proposed solution to the function (#15752) 2026-07-04 22:01:31 -05:00
helix-dap fix(dap): configuration done body is not required (#15993) 2026-07-06 14:46:41 -05:00
helix-dap-types dap: handle progress events (#15449) 2026-05-25 17:52:51 -05:00
helix-event build(deps): bump hashbrown from 0.16.1 to 0.17.0 (#15639) 2026-04-15 11:44:27 +09:00
helix-loader build(deps): bump sha2 from 0.10.9 to 0.11.0 (#15960) 2026-07-04 16:04:39 -05:00
helix-lsp fix(lsp): break shutdown deadlock and use fire-and-forget exit (#15553) 2026-06-20 14:38:42 +09:00
helix-lsp-types Swap url::Url for a lazy RFC3986 string wrapper (#11889) 2026-06-08 23:38:35 +09:00
helix-parsec fix(clippy): clippy 1.83 lints (#12150) 2024-12-02 08:23:32 -06:00
helix-stdx stdx: Add must_use and inline attributes to regex and grapheme helpers 2026-06-14 15:59:59 +09:00
helix-term Suppress external URL opener terminal output (#15711) 2026-07-04 22:08:23 -05:00
helix-tui tui: Adjust rendering to avoid flushing and render each frame atomically 2026-06-22 17:16:23 +09:00
helix-vcs build(deps): bump gix from 0.84.0 to 0.85.0 (#15959) 2026-07-03 10:12:58 +09:00
helix-view fix(build): protect use of Termcode when term features is not set (#15703) 2026-07-04 22:10:04 -05:00
runtime queries: Add locals for P 2026-07-05 15:19:38 -04:00
tests queries: Add locals for P 2026-07-05 15:19:38 -04:00
xtask Resolve lints 2026-06-20 18:28:13 +09:00
.envrc direnv: Watch changes to default.nix 2025-03-04 11:31:54 -05:00
.gitattributes gitattributes: Mark highlight/indent corpuses as documentation 2026-06-20 12:10:04 -04:00
.gitignore fix: added .DS_Store to gitignore 2024-11-20 16:18:42 -06:00
base16_theme.toml base16_default: add styles to newer unthemed features (#10858) 2024-06-23 10:07:13 +09:00
Cargo.lock build(deps): bump sha2 from 0.10.9 to 0.11.0 (#15960) 2026-07-04 16:04:39 -05:00
Cargo.toml word index: Fix out-of-order changeset applications with ghost txs 2026-06-14 15:59:59 +09:00
CHANGELOG.md Add release notes for 25.07.1 2025-07-18 10:39:27 -04:00
default.nix fix: add runtimeDir as propagated build input (#14247) 2025-08-16 10:51:17 -04:00
flake.lock Update flake.lock 2026-04-05 09:09:47 -04:00
flake.nix flake: Revert mold->lld 2026-06-09 09:35:53 -04:00
grammars.nix fix(nix): fix ill-defined escape warning in grammars.nix (#15370) 2026-03-03 10:06:33 -05:00
languages.toml Remove trailing '.git' in ink grammar repo name 2026-07-04 21:42:04 -04:00
LICENSE Add the LICENSE file. 2021-05-11 01:44:00 +09:00
logo.svg Reduce logo sizes even more (#9211) 2024-01-02 23:16:37 +01:00
logo_dark.svg Reduce logo sizes even more (#9211) 2024-01-02 23:16:37 +01:00
logo_light.svg Reduce logo sizes even more (#9211) 2024-01-02 23:16:37 +01:00
README.md Remove skulpin mention from README.md (#15029) 2025-12-27 17:25:57 -05:00
rust-toolchain.toml chore(msrv): bump from 1.87 to 1.90 (#15537) 2026-04-05 13:48:52 +09:00
rustfmt.toml Add rustfmt.toml to force formatting to use rustfmt defaults 2021-07-23 18:11:22 +09:00
screenshot.png update screenshot (#1879) 2022-03-30 00:16:57 +09:00
shell.nix build(nix): update flake deps, add default.nix file 2022-06-21 17:39:30 -05:00
theme.toml Allow theming directory prompt completions (#12205) 2024-12-17 21:13:42 -06:00

Helix

Build status GitHub Release Documentation GitHub contributors Matrix Space

Screenshot

A Kakoune / Neovim inspired editor, written in Rust.

The editing model is very heavily based on Kakoune; during development I found myself agreeing with most of Kakoune's design decisions.

For more information, see the website or documentation.

All shortcuts/keymaps can be found in the documentation on the website.

Troubleshooting

Features

  • Vim-like modal editing
  • Multiple selections
  • Built-in language server support
  • Smart, incremental syntax highlighting and code editing via tree-sitter

Although it's primarily a terminal-based editor, I am interested in exploring a custom renderer (similar to Emacs) using wgpu.

Note: Only certain languages have indentation definitions at the moment. Check runtime/queries/<lang>/ for indents.scm.

Installation

Installation documentation.

Packaging status

Contributing

Contributing guidelines can be found here.

Getting help

Your question might already be answered on the FAQ.

Discuss the project on the community Matrix Space (make sure to join #helix-editor:matrix.org if you're on a client that doesn't support Matrix Spaces yet).

Credits

Thanks to @jakenvac for designing the logo!