No description
Find a file
Michael Davis 0e083497a5 Persist register selection in pending keymaps
Previously the register selection (via `"`) would be lost in the middle
of any key sequence longer than one key. For example, `<space>f` would
clear the register selection after the `<space>` making it inaccessible
for the `file_picker` command.

This behavior does not currently have any effect in the default keymap
but might affect custom keymaps. This change aligns the behavior of the
register with count. Making this change allows propagating the register
to the `command_palette` (see the child commit) or other pickers should
we decide to use registers in those in the future. (Interactive global
search for example.)
2023-06-08 00:48:25 +09:00
.cargo enable rendering in integration tests (#5819) 2023-02-04 13:20:23 -08:00
.github build(deps): bump cachix/install-nix-action from 20 to 21 (#7170) 2023-05-30 09:49:45 +09:00
book Add support for Forth (#7256) 2023-06-06 08:14:34 -05:00
contrib Add 23.05 to the AppData 2023-05-18 16:01:26 +09:00
docs Document how to run tests (#6268) 2023-03-11 08:03:19 -06:00
helix-core Add check for a non-zero value for tab width (#7178) 2023-06-07 17:51:29 +09:00
helix-dap Fix unwrap bug in DAP (#6786) 2023-04-17 15:36:04 -05:00
helix-loader build(deps): bump once_cell from 1.17.2 to 1.18.0 (#7248) 2023-06-06 11:14:36 +09:00
helix-lsp Rebase cleanup/fixes and use lsp::CompletionItem in item_to_transaction directly 2023-05-18 22:25:32 +02:00
helix-parsec revamped snippet text element parsing 2023-03-16 15:46:08 +09:00
helix-term Persist register selection in pending keymaps 2023-06-08 00:48:25 +09:00
helix-tui build(deps): bump once_cell from 1.17.2 to 1.18.0 (#7248) 2023-06-06 11:14:36 +09:00
helix-vcs fix UB in diff gutter (#7227) 2023-06-04 17:20:04 +02:00
helix-view Place Info::from_keymap() contents in keymap.infobox(): 2023-06-07 10:11:13 +09:00
runtime Autumn theme: style "soft-wrap indicator" + maintenance (#7229) 2023-06-07 17:49:39 +09:00
xtask Fix docgen again 2023-05-18 21:58:17 +02:00
.envrc Work around a nix-direnv issue 2022-02-25 18:01:47 +09:00
.gitattributes Add .gitattributes (#3318) 2022-08-03 08:21:51 -05:00
.gitignore Remove vale from .gitignore 2022-07-26 10:22:28 +09:00
.ignore Add a .ignore file to make ripgrep more useful (#3315) 2022-08-03 09:00:39 -05:00
base16_theme.toml Set ui.text.inactive for official themes 2022-12-17 13:59:05 -06:00
Cargo.lock build(deps): bump regex from 1.8.3 to 1.8.4 (#7249) 2023-06-06 12:26:44 +09:00
Cargo.toml Update tree-sitter to v0.20.10 (#6608) 2023-04-06 12:29:17 +09:00
CHANGELOG.md Add changelog notes for the 23.05 release 2023-05-18 16:01:26 +09:00
default.nix build(nix): update flake deps, add default.nix file 2022-06-21 17:39:30 -05:00
flake.lock nix: Update flake dependencies 2023-05-11 11:30:46 +09:00
flake.nix nix: add overlay for convenient package usage (#7078) 2023-05-19 22:21:05 +09:00
grammars.nix nix: replace runCommandNoCC with runCommand (#3992) 2022-09-27 08:01:58 -05:00
languages.toml Fix verilog grammar source repo and revision (#7262) 2023-06-07 17:49:52 +09:00
LICENSE Add the LICENSE file. 2021-05-11 01:44:00 +09:00
logo.svg Add the new logo! 2022-12-02 12:06:17 +09:00
logo_dark.svg Add logo with text included (#4973) 2022-12-03 11:05:15 +09:00
logo_light.svg Add logo with text included (#4973) 2022-12-03 11:05:15 +09:00
README.md Rewrite and refactor all documentation (#5534) 2023-03-06 18:27:17 +09:00
rust-toolchain.toml update MSRV to 1.65 2023-03-05 15:54:02 +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 feat(debug): highlight current line (#5957) 2023-03-29 12:52:19 +09:00
VERSION Bump the version to 23.05 2023-05-18 16:01:26 +09: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

It's a terminal-based editor first, but I'd like to explore a custom renderer (similar to Emacs) in wgpu or skulpin.

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 @JakeHL for designing the logo!