pull/3878/head
taupiqueur 2 years ago committed by GitHub
parent 19384cc3a1
commit a73e83ef4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -684,7 +684,7 @@ Usability improvements and fixes:
- File picker configuration ([#988](https://github.com/helix-editor/helix/pull/988)) - File picker configuration ([#988](https://github.com/helix-editor/helix/pull/988))
- Fix surround cursor position calculation ([#1183](https://github.com/helix-editor/helix/pull/1183)) - Fix surround cursor position calculation ([#1183](https://github.com/helix-editor/helix/pull/1183))
- Accept count for goto_window ([#1033](https://github.com/helix-editor/helix/pull/1033)) - Accept count for goto_window ([#1033](https://github.com/helix-editor/helix/pull/1033))
- Make kill_to_line_end behave like emacs ([#1235](https://github.com/helix-editor/helix/pull/1235)) - Make kill_to_line_end behave like Emacs ([#1235](https://github.com/helix-editor/helix/pull/1235))
- Only use a single documentation popup ([#1241](https://github.com/helix-editor/helix/pull/1241)) - Only use a single documentation popup ([#1241](https://github.com/helix-editor/helix/pull/1241))
- ui: popup: Don't allow scrolling past the end of content ([`3307f44c`](https://github.com/helix-editor/helix/commit/3307f44c)) - ui: popup: Don't allow scrolling past the end of content ([`3307f44c`](https://github.com/helix-editor/helix/commit/3307f44c))
- Open files with spaces in filename, allow opening multiple files ([#1231](https://github.com/helix-editor/helix/pull/1231)) - Open files with spaces in filename, allow opening multiple files ([#1231](https://github.com/helix-editor/helix/pull/1231))
@ -922,7 +922,7 @@ to distinguish it in bug reports..
on cargo run. `~/.config/helix/runtime` can also be used. on cargo run. `~/.config/helix/runtime` can also be used.
- Registers can now be selected via " (for example `"ay`) - Registers can now be selected via " (for example `"ay`)
- Support for Nix files was added - Support for Nix files was added
- Movement is now fully tested and matches kakoune implementation - Movement is now fully tested and matches Kakoune implementation
- A per-file LSP symbol picker was added to space+s - A per-file LSP symbol picker was added to space+s
- Selection can be replaced with yanked text via R - Selection can be replaced with yanked text via R
@ -946,7 +946,7 @@ Keymaps:
- The runtime/ can now optionally be embedded in the binary - The runtime/ can now optionally be embedded in the binary
- Haskell syntax added - Haskell syntax added
- Window mode (ctrl-w) added - Window mode (ctrl-w) added
- Show matching bracket (vim's matchbrackets) - Show matching bracket (Vim's matchbrackets)
- Themes now support style modifiers - Themes now support style modifiers
- First user contributed theme - First user contributed theme
- Create a document if it doesn't exist yet on save - Create a document if it doesn't exist yet on save

@ -4,10 +4,10 @@
![Screenshot](./screenshot.png) ![Screenshot](./screenshot.png)
A kakoune / neovim inspired editor, written in Rust. A Kakoune / Neovim inspired editor, written in Rust.
The editing model is very heavily based on kakoune; during development I found The editing model is very heavily based on Kakoune; during development I found
myself agreeing with most of kakoune's design decisions. myself agreeing with most of Kakoune's design decisions.
For more information, see the [website](https://helix-editor.com) or For more information, see the [website](https://helix-editor.com) or
[documentation](https://docs.helix-editor.com/). [documentation](https://docs.helix-editor.com/).
@ -24,7 +24,7 @@ All shortcuts/keymaps can be found [in the documentation on the website](https:/
- Smart, incremental syntax highlighting and code editing via tree-sitter - 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 It's a terminal-based editor first, but I'd like to explore a custom renderer
(similar to emacs) in wgpu or skulpin. (similar to Emacs) in wgpu or skulpin.
Note: Only certain languages have indentation definitions at the moment. Check Note: Only certain languages have indentation definitions at the moment. Check
`runtime/queries/<lang>/` for `indents.scm`. `runtime/queries/<lang>/` for `indents.scm`.

@ -1,5 +1,5 @@
# Commands # Commands
Command mode can be activated by pressing `:`, similar to vim. Built-in commands: Command mode can be activated by pressing `:`, similar to Vim. Built-in commands:
{{#include ./generated/typable-cmd.md}} {{#include ./generated/typable-cmd.md}}

@ -1,7 +1,7 @@
# Migrating from Vim # Migrating from Vim
Helix's editing model is strongly inspired from vim and kakoune, and a notable Helix's editing model is strongly inspired from Vim and Kakoune, and a notable
difference from vim (and the most striking similarity to kakoune) is that Helix difference from Vim (and the most striking similarity to Kakoune) is that Helix
follows the `selection → action` model. This means that the whatever you are follows the `selection → action` model. This means that the whatever you are
going to act on (a word, a paragraph, a line, etc) is selected first and the going to act on (a word, a paragraph, a line, etc) is selected first and the
action itself (delete, change, yank, etc) comes second. A cursor is simply a action itself (delete, change, yank, etc) comes second. A cursor is simply a

@ -29,7 +29,7 @@ language with the path `runtime/queries/<name>/`. The tree-sitter
gives more info on how to write queries. gives more info on how to write queries.
> NOTE: When evaluating queries, the first matching query takes > NOTE: When evaluating queries, the first matching query takes
precedence, which is different from other editors like neovim where precedence, which is different from other editors like Neovim where
the last matching query supersedes the ones before it. See the last matching query supersedes the ones before it. See
[this issue][neovim-query-precedence] for an example. [this issue][neovim-query-precedence] for an example.

@ -27,7 +27,7 @@
### Movement ### Movement
> NOTE: Unlike vim, `f`, `F`, `t` and `T` are not confined to the current line. > NOTE: Unlike Vim, `f`, `F`, `t` and `T` are not confined to the current line.
| Key | Description | Command | | Key | Description | Command |
| ----- | ----------- | ------- | | ----- | ----------- | ------- |
@ -229,7 +229,7 @@ TODO: Mappings for selecting syntax nodes (a superset of `[`).
#### Window mode #### Window mode
This layer is similar to vim keybindings as kakoune does not support window. This layer is similar to Vim keybindings as Kakoune does not support window.
| Key | Description | Command | | Key | Description | Command |
| ----- | ------------- | ------- | | ----- | ------------- | ------- |

@ -128,8 +128,8 @@ will move the selection over to the "func" `identifier`.
![textobject-demo](https://user-images.githubusercontent.com/23398472/124231131-81a4bb00-db2d-11eb-9d10-8e577ca7b177.gif) ![textobject-demo](https://user-images.githubusercontent.com/23398472/124231131-81a4bb00-db2d-11eb-9d10-8e577ca7b177.gif)
![textobject-treesitter-demo](https://user-images.githubusercontent.com/23398472/132537398-2a2e0a54-582b-44ab-a77f-eb818942203d.gif) ![textobject-treesitter-demo](https://user-images.githubusercontent.com/23398472/132537398-2a2e0a54-582b-44ab-a77f-eb818942203d.gif)
- `ma` - Select around the object (`va` in vim, `<alt-a>` in kakoune) - `ma` - Select around the object (`va` in Vim, `<alt-a>` in Kakoune)
- `mi` - Select inside the object (`vi` in vim, `<alt-i>` in kakoune) - `mi` - Select inside the object (`vi` in Vim, `<alt-i>` in Kakoune)
| Key after `mi` or `ma` | Textobject selected | | Key after `mi` or `ma` | Textobject selected |
| --- | --- | | --- | --- |

@ -270,7 +270,7 @@ pub enum WordMotionTarget {
NextWordEnd, NextWordEnd,
PrevWordStart, PrevWordStart,
PrevWordEnd, PrevWordEnd,
// A "Long word" (also known as a WORD in vim/kakoune) is strictly // A "Long word" (also known as a WORD in Vim/Kakoune) is strictly
// delimited by whitespace, and can consist of punctuation as well // delimited by whitespace, and can consist of punctuation as well
// as alphanumerics. // as alphanumerics.
NextLongWordStart, NextLongWordStart,

Loading…
Cancel
Save