From 2244a5d40c83d477839f91cb6d6a4aeb02446a97 Mon Sep 17 00:00:00 2001 From: omentic Date: Wed, 1 May 2024 23:29:52 +0000 Subject: deploy: 12eec890240a05d1e090114f7f4fdd7c1ee8ff88 --- master/keymap.html | 666 ----------------------------------------------------- 1 file changed, 666 deletions(-) delete mode 100644 master/keymap.html (limited to 'master/keymap.html') diff --git a/master/keymap.html b/master/keymap.html deleted file mode 100644 index 828eeb94..00000000 --- a/master/keymap.html +++ /dev/null @@ -1,666 +0,0 @@ - - - - - - Keymap - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - -
-
-

Keymap

- -
-

💡 Mappings marked (LSP) require an active language server for the file.

-
-
-

💡 Mappings marked (TS) require a tree-sitter grammar for the file type.

-
-

Normal mode

-

Normal mode is the default mode when you launch helix. You can return to it from other modes by pressing the Escape key.

-

Movement

-
-

NOTE: Unlike Vim, f, F, t and T are not confined to the current line.

-
-
- - - - - - - - - - - - - - - - - - - - - - - - - -
KeyDescriptionCommand
h, LeftMove leftmove_char_left
j, DownMove downmove_visual_line_down
k, UpMove upmove_visual_line_up
l, RightMove rightmove_char_right
wMove next word startmove_next_word_start
bMove previous word startmove_prev_word_start
eMove next word endmove_next_word_end
WMove next WORD startmove_next_long_word_start
BMove previous WORD startmove_prev_long_word_start
EMove next WORD endmove_next_long_word_end
tFind 'till next charfind_till_char
fFind next charfind_next_char
TFind 'till previous chartill_prev_char
FFind previous charfind_prev_char
GGo to line number <n>goto_line
Alt-.Repeat last motion (f, t, m, [ or ])repeat_last_motion
HomeMove to the start of the linegoto_line_start
EndMove to the end of the linegoto_line_end
Ctrl-b, PageUpMove page uppage_up
Ctrl-f, PageDownMove page downpage_down
Ctrl-uMove cursor and page half page uppage_cursor_half_up
Ctrl-dMove cursor and page half page downpage_cursor_half_down
Ctrl-iJump forward on the jumplistjump_forward
Ctrl-oJump backward on the jumplistjump_backward
Ctrl-sSave the current selection to the jumplistsave_selection
-
-

Changes

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
KeyDescriptionCommand
rReplace with a characterreplace
RReplace with yanked textreplace_with_yanked
~Switch case of the selected textswitch_case
`Set the selected text to lower caseswitch_to_lowercase
Alt-`Set the selected text to upper caseswitch_to_uppercase
iInsert before selectioninsert_mode
aInsert after selection (append)append_mode
IInsert at the start of the lineinsert_at_line_start
AInsert at the end of the lineinsert_at_line_end
\Insert digraphsinsert_digraph
oOpen new line below selectionopen_below
OOpen new line above selectionopen_above
.Repeat last insertN/A
uUndo changeundo
URedo changeredo
Alt-uMove backward in historyearlier
Alt-UMove forward in historylater
yYank selectionyank
pPaste after selectionpaste_after
PPaste before selectionpaste_before
" <reg>Select a register to yank to or paste fromselect_register
>Indent selectionindent
<Unindent selectionunindent
=Format selection (currently nonfunctional/disabled) (LSP)format_selections
dDelete selectiondelete_selection
Alt-dDelete selection, without yankingdelete_selection_noyank
cChange selection (delete and enter insert mode)change_selection
Alt-cChange selection (delete and enter insert mode, without yanking)change_selection_noyank
Ctrl-aIncrement object (number) under cursorincrement
Ctrl-xDecrement object (number) under cursordecrement
QStart/stop macro recording to the selected register (experimental)record_macro
qPlay back a recorded macro from the selected register (experimental)replay_macro
-
-

Shell

-
- - - - - -
KeyDescriptionCommand
|Pipe each selection through shell command, replacing with outputshell_pipe
Alt-|Pipe each selection into shell command, ignoring outputshell_pipe_to
!Run shell command, inserting output before each selectionshell_insert_output
Alt-!Run shell command, appending output after each selectionshell_append_output
$Pipe each selection into shell command, keep selections where command returned 0shell_keep_pipe
-
-

Selection manipulation

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
KeyDescriptionCommand
sSelect all regex matches inside selectionsselect_regex
SSplit selection into sub selections on regex matchessplit_selection
Alt-sSplit selection on newlinessplit_selection_on_newline
Alt-minusMerge selectionsmerge_selections
Alt-_Merge consecutive selectionsmerge_consecutive_selections
&Align selection in columnsalign_selections
_Trim whitespace from the selectiontrim_selections
;Collapse selection onto a single cursorcollapse_selection
Alt-;Flip selection cursor and anchorflip_selections
Alt-:Ensures the selection is in forward directionensure_selections_forward
,Keep only the primary selectionkeep_primary_selection
Alt-,Remove the primary selectionremove_primary_selection
CCopy selection onto the next line (Add cursor below)copy_selection_on_next_line
Alt-CCopy selection onto the previous line (Add cursor above)copy_selection_on_prev_line
(Rotate main selection backwardrotate_selections_backward
)Rotate main selection forwardrotate_selections_forward
Alt-(Rotate selection contents backwardrotate_selection_contents_backward
Alt-)Rotate selection contents forwardrotate_selection_contents_forward
%Select entire fileselect_all
xSelect current line, if already selected, extend to next lineextend_line_below
XExtend selection to line bounds (line-wise selection)extend_to_line_bounds
Alt-xShrink selection to line bounds (line-wise selection)shrink_to_line_bounds
JJoin lines inside selectionjoin_selections
Alt-JJoin lines inside selection and select the inserted spacejoin_selections_space
KKeep selections matching the regexkeep_selections
Alt-KRemove selections matching the regexremove_selections
Ctrl-cComment/uncomment the selectionstoggle_comments
Alt-o, Alt-upExpand selection to parent syntax node (TS)expand_selection
Alt-i, Alt-downShrink syntax tree object selection (TS)shrink_selection
Alt-p, Alt-leftSelect previous sibling node in syntax tree (TS)select_prev_sibling
Alt-n, Alt-rightSelect next sibling node in syntax tree (TS)select_next_sibling
-
- -

Search commands all operate on the / register by default. To use a different register, use "<char>.

-
- - - - - -
KeyDescriptionCommand
/Search for regex patternsearch
?Search for previous patternrsearch
nSelect next search matchsearch_next
NSelect previous search matchsearch_prev
*Use current selection as the search patternsearch_selection
-
-

Minor modes

-

These sub-modes are accessible from normal mode and typically switch back to normal mode after a command.

-
- - - - - - - - -
KeyDescriptionCommand
vEnter select (extend) modeselect_mode
gEnter goto modeN/A
mEnter match modeN/A
:Enter command modecommand_mode
zEnter view modeN/A
ZEnter sticky view modeN/A
Ctrl-wEnter window modeN/A
SpaceEnter space modeN/A
-
-

These modes (except command mode) can be configured by -remapping keys.

-

View mode

-

Accessed by typing z in normal mode.

-

View mode is intended for scrolling and manipulating the view without changing -the selection. The "sticky" variant of this mode (accessed by typing Z in -normal mode) is persistent and can be exited using the escape key. This is -useful when you're simply looking over text and not actively editing it.

-
- - - - - - - - - - -
KeyDescriptionCommand
z, cVertically center the linealign_view_center
tAlign the line to the top of the screenalign_view_top
bAlign the line to the bottom of the screenalign_view_bottom
mAlign the line to the middle of the screen (horizontally)align_view_middle
j, downScroll the view downwardsscroll_down
k, upScroll the view upwardsscroll_up
Ctrl-f, PageDownMove page downpage_down
Ctrl-b, PageUpMove page uppage_up
Ctrl-uMove cursor and page half page uppage_cursor_half_up
Ctrl-dMove cursor and page half page downpage_cursor_half_down
-
-

Goto mode

-

Accessed by typing g in normal mode.

-

Jumps to various locations.

-
- - - - - - - - - - - - - - - - - - - - - -
KeyDescriptionCommand
gGo to line number <n> else start of filegoto_file_start
eGo to the end of the filegoto_last_line
fGo to files in the selectionsgoto_file
hGo to the start of the linegoto_line_start
lGo to the end of the linegoto_line_end
sGo to first non-whitespace character of the linegoto_first_nonwhitespace
tGo to the top of the screengoto_window_top
cGo to the middle of the screengoto_window_center
bGo to the bottom of the screengoto_window_bottom
dGo to definition (LSP)goto_definition
yGo to type definition (LSP)goto_type_definition
rGo to references (LSP)goto_reference
iGo to implementation (LSP)goto_implementation
aGo to the last accessed/alternate filegoto_last_accessed_file
mGo to the last modified/alternate filegoto_last_modified_file
nGo to next buffergoto_next_buffer
pGo to previous buffergoto_previous_buffer
.Go to last modification in current filegoto_last_modification
jMove down textual (instead of visual) linemove_line_down
kMove up textual (instead of visual) linemove_line_up
wShow labels at each word and select the word that belongs to the entered labelsgoto_word
-
-

Match mode

-

Accessed by typing m in normal mode.

-

See the relevant section in Usage for an explanation about -surround and textobject usage.

-
- - - - - - -
KeyDescriptionCommand
mGoto matching bracket (TS)match_brackets
s <char>Surround current selection with <char>surround_add
r <from><to>Replace surround character <from> with <to>surround_replace
d <char>Delete surround character <char>surround_delete
a <object>Select around textobjectselect_textobject_around
i <object>Select inside textobjectselect_textobject_inner
-
-

TODO: Mappings for selecting syntax nodes (a superset of [).

-

Window mode

-

Accessed by typing Ctrl-w in normal mode.

-

This layer is similar to Vim keybindings as Kakoune does not support windows.

-
- - - - - - - - - - - - - - - -
KeyDescriptionCommand
w, Ctrl-wSwitch to next windowrotate_view
v, Ctrl-vVertical right splitvsplit
s, Ctrl-sHorizontal bottom splithsplit
fGo to files in the selections in horizontal splitsgoto_file
FGo to files in the selections in vertical splitsgoto_file
h, Ctrl-h, LeftMove to left splitjump_view_left
j, Ctrl-j, DownMove to split belowjump_view_down
k, Ctrl-k, UpMove to split abovejump_view_up
l, Ctrl-l, RightMove to right splitjump_view_right
q, Ctrl-qClose current windowwclose
o, Ctrl-oOnly keep the current window, closing all the otherswonly
HSwap window to the leftswap_view_left
JSwap window downwardsswap_view_down
KSwap window upwardsswap_view_up
LSwap window to the rightswap_view_right
-
-

Space mode

-

Accessed by typing Space in normal mode.

-

This layer is a kludge of mappings, mostly pickers.

-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
KeyDescriptionCommand
fOpen file pickerfile_picker
FOpen file picker at current working directoryfile_picker_in_current_directory
bOpen buffer pickerbuffer_picker
jOpen jumplist pickerjumplist_picker
gDebug (experimental)N/A
kShow documentation for item under cursor in a popup (LSP)hover
sOpen document symbol picker (LSP)symbol_picker
SOpen workspace symbol picker (LSP)workspace_symbol_picker
dOpen document diagnostics picker (LSP)diagnostics_picker
DOpen workspace diagnostics picker (LSP)workspace_diagnostics_picker
rRename symbol (LSP)rename_symbol
aApply code action (LSP)code_action
hSelect symbol references (LSP)select_references_to_symbol_under_cursor
'Open last fuzzy pickerlast_picker
wEnter window modeN/A
cComment/uncomment selectionstoggle_comments
CBlock comment/uncomment selectionstoggle_block_comments
Alt-cLine comment/uncomment selectionstoggle_line_comments
pPaste system clipboard after selectionspaste_clipboard_after
PPaste system clipboard before selectionspaste_clipboard_before
yYank selections to clipboardyank_to_clipboard
YYank main selection to clipboardyank_main_selection_to_clipboard
RReplace selections by clipboard contentsreplace_selections_with_clipboard
/Global search in workspace folderglobal_search
?Open command palettecommand_palette
eReveal current file in explorerreveal_current_file
-
-
-

💡 Global search displays results in a fuzzy picker, use Space + ' to bring it back up after opening a file.

-
- -

Displays documentation for item under cursor.

-
- - -
KeyDescription
Ctrl-uScroll up
Ctrl-dScroll down
-
-

Unimpaired

-

These mappings are in the style of vim-unimpaired.

-
- - - - - - - - - - - - - - - - - - - - - - -
KeyDescriptionCommand
]dGo to next diagnostic (LSP)goto_next_diag
[dGo to previous diagnostic (LSP)goto_prev_diag
]DGo to last diagnostic in document (LSP)goto_last_diag
[DGo to first diagnostic in document (LSP)goto_first_diag
]fGo to next function (TS)goto_next_function
[fGo to previous function (TS)goto_prev_function
]tGo to next type definition (TS)goto_next_class
[tGo to previous type definition (TS)goto_prev_class
]aGo to next argument/parameter (TS)goto_next_parameter
[aGo to previous argument/parameter (TS)goto_prev_parameter
]cGo to next comment (TS)goto_next_comment
[cGo to previous comment (TS)goto_prev_comment
]TGo to next test (TS)goto_next_test
[TGo to previous test (TS)goto_prev_test
]pGo to next paragraphgoto_next_paragraph
[pGo to previous paragraphgoto_prev_paragraph
]gGo to next changegoto_next_change
[gGo to previous changegoto_prev_change
]GGo to last changegoto_last_change
[GGo to first changegoto_first_change
]SpaceAdd newline belowadd_newline_below
[SpaceAdd newline aboveadd_newline_above
-
-

Insert mode

-

Accessed by typing i in normal mode.

-

Insert mode bindings are minimal by default. Helix is designed to -be a modal editor, and this is reflected in the user experience and internal -mechanics. Changes to the text are only saved for undos when -escaping from insert mode to normal mode.

-
-

💡 New users are strongly encouraged to learn the modal editing paradigm -to get the smoothest experience.

-
-
- - - - - - - - - - - -
KeyDescriptionCommand
EscapeSwitch to normal modenormal_mode
Ctrl-sCommit undo checkpointcommit_undo_checkpoint
Ctrl-xAutocompletecompletion
Ctrl-rInsert a register contentinsert_register
Ctrl-w, Alt-BackspaceDelete previous worddelete_word_backward
Alt-d, Alt-DeleteDelete next worddelete_word_forward
Ctrl-uDelete to start of linekill_to_line_start
Ctrl-kDelete to end of linekill_to_line_end
Ctrl-h, Backspace, Shift-BackspaceDelete previous chardelete_char_backward
Ctrl-d, DeleteDelete next chardelete_char_forward
Ctrl-j, EnterInsert new lineinsert_newline
-
-

These keys are not recommended, but are included for new users less familiar -with modal editors.

-
- - - - - - - - -
KeyDescriptionCommand
UpMove to previous linemove_line_up
DownMove to next linemove_line_down
LeftBackward a charmove_char_left
RightForward a charmove_char_right
PageUpMove one page uppage_up
PageDownMove one page downpage_down
HomeMove to line startgoto_line_start
EndMove to line endgoto_line_end_newline
-
-

As you become more comfortable with modal editing, you may want to disable some -insert mode bindings. You can do this by editing your config.toml file.

-
[keys.insert]
-up = "no_op"
-down = "no_op"
-left = "no_op"
-right = "no_op"
-pageup = "no_op"
-pagedown = "no_op"
-home = "no_op"
-end = "no_op"
-
-

Select / extend mode

-

Accessed by typing v in normal mode.

-

Select mode echoes Normal mode, but changes any movements to extend -selections rather than replace them. Goto motions are also changed to -extend, so that vgl, for example, extends the selection to the end of -the line.

-

Search is also affected. By default, n and N will remove the current -selection and select the next instance of the search term. Toggling this -mode before pressing n or N makes it possible to keep the current -selection. Toggling it on and off during your iterative searching allows -you to selectively add search terms to your selections.

-

Picker

-

Keys to use within picker. Remapping currently not supported.

-
- - - - - - - - - - - - -
KeyDescription
Shift-Tab, Up, Ctrl-pPrevious entry
Tab, Down, Ctrl-nNext entry
PageUp, Ctrl-uPage up
PageDown, Ctrl-dPage down
HomeGo to first entry
EndGo to last entry
EnterOpen selected
Alt-EnterOpen selected in the background without closing the picker
Ctrl-sOpen horizontally
Ctrl-vOpen vertically
Ctrl-tToggle preview
Escape, Ctrl-cClose picker
-
-

Prompt

-

Keys to use within prompt, Remapping currently not supported.

-
- - - - - - - - - - - - - - - - - - - - -
KeyDescription
Escape, Ctrl-cClose prompt
Alt-b, Ctrl-LeftBackward a word
Ctrl-b, LeftBackward a char
Alt-f, Ctrl-RightForward a word
Ctrl-f, RightForward a char
Ctrl-e, EndMove prompt end
Ctrl-a, HomeMove prompt start
Ctrl-w, Alt-Backspace, Ctrl-BackspaceDelete previous word
Alt-d, Alt-Delete, Ctrl-DeleteDelete next word
Ctrl-uDelete to start of line
Ctrl-kDelete to end of line
Backspace, Ctrl-h, Shift-BackspaceDelete previous char
Delete, Ctrl-dDelete next char
Ctrl-sInsert a word under doc cursor, may be changed to Ctrl-r Ctrl-w later
Ctrl-p, UpSelect previous history
Ctrl-n, DownSelect next history
Ctrl-rInsert the content of the register selected by following input char
TabSelect next completion item
BackTabSelect previous completion item
EnterOpen selected
-
-

File explorer

-

Press ? to see keymaps. Remapping currently not supported.

- -
- - -
-
- - - -
- - - - - - - - - - - - - - - - - - -
- - -- cgit v1.2.3-70-g09d2