PabloMansanet
f7e00cf720
Configurable keys 2 (Mapping keys to commands) ( #268 )
...
* Add convenience/clarity wrapper for Range initialization
* Add keycode parse and display methods
* Add remapping functions and tests
* Implement key remapping
* Add remapping book entry
* Use raw string literal for toml
* Add command constants
* Make command functions private
* Map directly to commands
* Match key parsing/displaying to Kakoune
* Formatting pass
* Update documentation
* Formatting
* Fix example in the book
* Refactor into single config file
* Formatting
* Refactor configuration and add keymap newtype wrappers
* Address first batch of PR comments
* Replace FromStr with custom deserialize
3 years ago
Gokul Soumya
9cfa163370
Refactor keymap definitions using macros
...
Adds a macro rule to the `key!` macro so that keymaps using `Left`,
`Home`, `Esc`, etc. will also be accepted.
3 years ago
Ivan Tham
6b3c9d8ed3
Fix jump behavior, goto_implementation now jump
...
Better jump behavior since we override the first jump if it's on the
first document. At the same time, ctrl-i is now working with gd jumps.
4 years ago
Wojciech Kępka
4bec87ad18
Update keymap
4 years ago
Wojciech Kępka
c65b4dea09
commands: Add replace with yanked as `R`
4 years ago
Benoît CORTIER
68affa3c59
Implement register selection
...
User can select register to yank into with the " command.
A new state is added to `Editor` and `commands::Context` structs.
This state is managed by leveraging a new struct `RegisterSelection`.
4 years ago
Wojciech Kępka
16b1cfa3be
Add diagnostics keybindings
4 years ago
Ivan Tham
40744ce835
Add ctrl-w in insert mode
...
It seemed to panic when I pressed too many times, but that is from
lsp side.
4 years ago
Ivan Tham
8c2fa12ffc
Add window mode
...
Fix #93
4 years ago
Antoni Stevenet
a1f4b8f92b
Add home-end keymaps, (as kakoune/vim do) ( #83 )
...
* add home-end keymaps
* implement extend methods for extend_line_start, extend_line_end
* add home-end mappings to keymaps.md
* add ^-$ extend mappings for extend mode
* pass cargo linter
4 years ago
notoria
adcfcf9044
Replace ^/$ with gh/gl
4 years ago
Antoni Stevent
27aee705e0
use correct _extend methods, also remove unnecessary casts
4 years ago
Antoni Stevent
f0fe558f38
Add up/right/left/down arrow keymaps, similar to kakoune
4 years ago
Jan Hrastnik
712f25c2b9
removed shift matching
4 years ago
Blaž Hrastnik
cbb3ebafdc
Support ctrl-f and ctrl-b to page up/down, fixes #41
4 years ago
Blaž Hrastnik
9c24f1ec0e
Drop selection_lines completely, change move_line_start binding
4 years ago
Blaž Hrastnik
c64240b6ef
Implement most of the view mode (z).
4 years ago
Blaž Hrastnik
392c4a9c02
Keep primary selection as space+space.
4 years ago
Blaž Hrastnik
73f4abbb37
N as extend with search (for now, N should be search_prev).
4 years ago
Blaž Hrastnik
12961d657f
Implement P as paste_before.
4 years ago
Blaž Hrastnik
dfc17becd5
Move pickers under my leader key mode (space).
4 years ago
Blaž Hrastnik
88bb7a1f38
Repeat insert command (.).
4 years ago
Blaž Hrastnik
742b3a709f
Store intra-files jumps (goto) on the jumplist.
4 years ago
Blaž Hrastnik
aefafc25cd
Replace Mode::Goto with just using on_next_key.
4 years ago
Blaž Hrastnik
9a36d2c2a8
wip: Hooks & trigger characters for completion/signature_help.
4 years ago
Blaž Hrastnik
8657c57cf2
Trivial jumplist implementation.
4 years ago
Blaž Hrastnik
73c92a0bc1
Implement m / match_brackets (using tree sitter).
4 years ago
Blaž Hrastnik
df306fe031
Implement open_above (O).
4 years ago
Blaž Hrastnik
42d07b0621
Implement replace command (r<key>).
4 years ago
Jan Hrastnik
d3ddc8dea6
wip
4 years ago
Blaž Hrastnik
143cfe13e0
minor: TODO comment cleanup
4 years ago
Blaž Hrastnik
eea339545c
Add command for keeping only the primary selection.
4 years ago
Blaž Hrastnik
dd91090a1a
Implement keep_selections (filter selections on regex).
4 years ago
Blaž Hrastnik
4acf301022
Implement the f/t/F/T find/till family of commands.
4 years ago
Blaž Hrastnik
62c991230f
find-till (f) prototype, on_next_key mode implementation.
4 years ago
Blaž Hrastnik
8b2cbb53fd
minor: fix hover key
4 years ago
Blaž Hrastnik
2088c45075
commands: Implement X as extend line.
4 years ago
Blaž Hrastnik
ec4dd0a176
Add a selection mode again.
4 years ago
Blaž Hrastnik
2c9b02039b
commands: Implement join_selections.
4 years ago
Blaž Hrastnik
1ae7c43391
commands: = as range formatting (via lsp)
4 years ago
Blaž Hrastnik
7162632eb7
lsp: Hover documentation draft.
4 years ago
Blaž Hrastnik
6cfb1acb9d
commands: Implement expand_selection.
4 years ago
Blaž Hrastnik
33c67f1388
commands: add * as selection search.
4 years ago
Blaž Hrastnik
7a1ff5e45f
commands: Wire up toggle comments as ctrl-c
4 years ago
Blaž Hrastnik
83d48f10ea
search: Barebones implementation.
4 years ago
Blaž Hrastnik
239db79834
Finally: Retain horizontal position when moving vertically.
4 years ago
Blaž Hrastnik
30d1b7098f
commands: % as select_all.
4 years ago
Blaž Hrastnik
9c33b5340a
A dumb "next view" implementation that works.
4 years ago
Blaž Hrastnik
2bea5db7bd
commands: Implement select_on_matches.
4 years ago
Blaž Hrastnik
a702af0aeb
commands: add W and B (extend selection by word).
4 years ago
Blaž Hrastnik
56f2193811
Retrieve completion options on ctrl-x.
4 years ago
Blaž Hrastnik
3d3295bb75
ui: buffer picker on ctrl-b
4 years ago
Blaž Hrastnik
7c75ec04e8
File picker mockup, reuses the line editor work done on Prompt.
4 years ago
Blaž Hrastnik
2bfdcede32
split_selection
4 years ago
Blaž Hrastnik
ed6a4c4bd2
wip: Use prompt for interactive commands.
4 years ago
Blaž Hrastnik
5103dc9617
move commands and keymap back to terminal.
...
Command needs to be able to deal with UI. We'll separate it again later
on.
4 years ago
Blaž Hrastnik
935cfeae57
Split parts of helix-term into helix-view.
...
It still largely depends on term for some types but I plan to change
that later.
4 years ago
Blaž Hrastnik
48330ddb5f
Command needs access to view information for certain changes.
4 years ago
Blaž Hrastnik
b08278807e
Add 'A', 'I' commands.
4 years ago
Blaž Hrastnik
fb0f56b747
Add 'o' command.
4 years ago
Blaž Hrastnik
b647c7a773
tree-sitter based syntax highlighting draft
4 years ago
Blaž Hrastnik
67017e5336
append mode
4 years ago
Blaž Hrastnik
579b6899f1
Work on insert mode.
4 years ago
Jan Hrastnik
8681d47292
remove unused import
4 years ago
Jan Hrastnik
6ba082697d
added cursor rendering
4 years ago
Blaž Hrastnik
8119f1ec3d
Refactor editor module to use state + keymap.
5 years ago
Blaž Hrastnik
f8fe273a2e
Fix build.
5 years ago
Blaž Hrastnik
843c20a550
Add a keymap module.
5 years ago