@ -350,112 +350,112 @@ so you should define the palette after normal theme options.</p>
< blockquote >
< p > NOTE: < code > f< / code > , < code > F< / code > , < code > t< / code > and < code > T< / code > are not confined to the current line.< / p >
< / blockquote >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > h< / code > , < code > Left< / code > < / td > < td > Move left< / td > < / tr >
< tr > < td > < code > j< / code > , < code > Down< / code > < / td > < td > Move down< / td > < / tr >
< tr > < td > < code > k< / code > , < code > Up< / code > < / td > < td > Move up< / td > < / tr >
< tr > < td > < code > l< / code > , < code > Right< / code > < / td > < td > Move right< / td > < / tr >
< tr > < td > < code > w< / code > < / td > < td > Move next word start< / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Move previous word start< / td > < / tr >
< tr > < td > < code > e< / code > < / td > < td > Move next word end< / td > < / tr >
< tr > < td > < code > W< / code > < / td > < td > Move next WORD start< / td > < / tr >
< tr > < td > < code > B< / code > < / td > < td > Move previous WORD start< / td > < / tr >
< tr > < td > < code > E< / code > < / td > < td > Move next WORD end< / td > < / tr >
< tr > < td > < code > t< / code > < / td > < td > Find 'till next char< / td > < / tr >
< tr > < td > < code > f< / code > < / td > < td > Find next char< / td > < / tr >
< tr > < td > < code > T< / code > < / td > < td > Find 'till previous char< / td > < / tr >
< tr > < td > < code > F< / code > < / td > < td > Find previous char< / td > < / tr >
< tr > < td > < code > Home< / code > < / td > < td > Move to the start of the line< / td > < / tr >
< tr > < td > < code > End< / code > < / td > < td > Move to the end of the line< / td > < / tr >
< tr > < td > < code > PageUp< / code > < / td > < td > Move page up< / td > < / tr >
< tr > < td > < code > PageDown< / code > < / td > < td > Move page down< / td > < / tr >
< tr > < td > < code > Ctrl-u< / code > < / td > < td > Move half page up< / td > < / tr >
< tr > < td > < code > Ctrl-d< / code > < / td > < td > Move half page down< / td > < / tr >
< tr > < td > < code > Ctrl-i< / code > < / td > < td > Jump forward on the jumplist TODO: conflicts tab< / td > < / tr >
< tr > < td > < code > Ctrl-o< / code > < / td > < td > Jump backward on the jumplist< / td > < / tr >
< tr > < td > < code > v< / code > < / td > < td > Enter < a href = "keymap.html#select--extend-mode" > select (extend) mode< / a > < / td > < / tr >
< tr > < td > < code > g< / code > < / td > < td > Enter < a href = "keymap.html#goto-mode" > goto mode< / a > < / td > < / tr >
< tr > < td > < code > m< / code > < / td > < td > Enter < a href = "keymap.html#match-mode" > match mode< / a > < / td > < / tr >
< tr > < td > < code > :< / code > < / td > < td > Enter command mode< / td > < / tr >
< tr > < td > < code > z< / code > < / td > < td > Enter < a href = "keymap.html#view-mode" > view mode< / a > < / td > < / tr >
< tr > < td > < code > Ctrl-w< / code > < / td > < td > Enter < a href = "keymap.html#window-mode" > window mode< / a > (maybe will be remove for spc w w later)< / td > < / tr >
< tr > < td > < code > Space< / code > < / td > < td > Enter < a href = "keymap.html#space-mode" > space mode< / a > < / td > < / tr >
< tr > < td > < code > K< / code > < / td > < td > Show documentation for the item under the cursor< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > h< / code > , < code > Left< / code > < / td > < td > Move left< / td > < td > < code > move_char_left< / code > < / td > < / tr >
< tr > < td > < code > j< / code > , < code > Down< / code > < / td > < td > Move down< / td > < td > < code > move_char_right< / code > < / td > < / tr >
< tr > < td > < code > k< / code > , < code > Up< / code > < / td > < td > Move up< / td > < td > < code > move_line_up< / code > < / td > < / tr >
< tr > < td > < code > l< / code > , < code > Right< / code > < / td > < td > Move right< / td > < td > < code > move_line_down< / code > < / td > < / tr >
< tr > < td > < code > w< / code > < / td > < td > Move next word start< / td > < td > < code > move_next_word_start< / code > < / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Move previous word start< / td > < td > < code > move_prev_word_start< / code > < / td > < / tr >
< tr > < td > < code > e< / code > < / td > < td > Move next word end< / td > < td > < code > move_next_word_end< / code > < / td > < / tr >
< tr > < td > < code > W< / code > < / td > < td > Move next WORD start< / td > < td > < code > move_next_long_word_start< / code > < / td > < / tr >
< tr > < td > < code > B< / code > < / td > < td > Move previous WORD start< / td > < td > < code > move_prev_long_word_start< / code > < / td > < / tr >
< tr > < td > < code > E< / code > < / td > < td > Move next WORD end< / td > < td > < code > move_next_long_word_end< / code > < / td > < / tr >
< tr > < td > < code > t< / code > < / td > < td > Find 'till next char< / td > < td > < code > find_till_char< / code > < / td > < / tr >
< tr > < td > < code > f< / code > < / td > < td > Find next char< / td > < td > < code > find_next_char< / code > < / td > < / tr >
< tr > < td > < code > T< / code > < / td > < td > Find 'till previous char< / td > < td > < code > till_prev_char< / code > < / td > < / tr >
< tr > < td > < code > F< / code > < / td > < td > Find previous char< / td > < td > < code > find_prev_char< / code > < / td > < / tr >
< tr > < td > < code > Home< / code > < / td > < td > Move to the start of the line< / td > < td > < code > goto_line_start< / code > < / td > < / tr >
< tr > < td > < code > End< / code > < / td > < td > Move to the end of the line< / td > < td > < code > goto_line_end< / code > < / td > < / tr >
< tr > < td > < code > PageUp< / code > < / td > < td > Move page up< / td > < td > < code > page_up< / code > < / td > < / tr >
< tr > < td > < code > PageDown< / code > < / td > < td > Move page down< / td > < td > < code > page_down< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-u< / code > < / td > < td > Move half page up< / td > < td > < code > half_page_up< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-d< / code > < / td > < td > Move half page down< / td > < td > < code > half_page_down< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-i< / code > < / td > < td > Jump forward on the jumplist TODO: conflicts tab< / td > < td > < code > jump_forward< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-o< / code > < / td > < td > Jump backward on the jumplist< / td > < td > < code > jump_backward< / code > < / td > < / tr >
< tr > < td > < code > v< / code > < / td > < td > Enter < a href = "keymap.html#select--extend-mode" > select (extend) mode< / a > < / td > < td > < code > select_mode< / code > < / td > < / tr >
< tr > < td > < code > g< / code > < / td > < td > Enter < a href = "keymap.html#goto-mode" > goto mode< / a > < / td > < td > N/A< / td > < / tr >
< tr > < td > < code > m< / code > < / td > < td > Enter < a href = "keymap.html#match-mode" > match mode< / a > < / td > < td > N/A< / td > < / tr >
< tr > < td > < code > :< / code > < / td > < td > Enter command mode< / td > < td > < code > command_mode< / code > < / td > < / tr >
< tr > < td > < code > z< / code > < / td > < td > Enter < a href = "keymap.html#view-mode" > view mode< / a > < / td > < td > N/A< / td > < / tr >
< tr > < td > < code > Ctrl-w< / code > < / td > < td > Enter < a href = "keymap.html#window-mode" > window mode< / a > (maybe will be remove for spc w w later)< / td > < td > N/A< / td > < / tr >
< tr > < td > < code > Space< / code > < / td > < td > Enter < a href = "keymap.html#space-mode" > space mode< / a > < / td > < td > N/A< / td > < / tr >
< tr > < td > < code > K< / code > < / td > < td > Show documentation for the item under the cursor< / td > < td > < code > hover< / code > < / td > < / tr >
< / tbody > < / table >
< h3 id = "changes" > < a class = "header" href = "#changes" > Changes< / a > < / h3 >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > r< / code > < / td > < td > Replace with a character< / td > < / tr >
< tr > < td > < code > R< / code > < / td > < td > Replace with yanked text< / td > < / tr >
< tr > < td > < code > ~< / code > < / td > < td > Switch case of the selected text< / td > < / tr >
< tr > < td > < code > `< / code > < / td > < td > Set the selected text to lower case< / td > < / tr >
< tr > < td > < code > Alt-`< / code > < / td > < td > Set the selected text to upper case< / td > < / tr >
< tr > < td > < code > i< / code > < / td > < td > Insert before selection< / td > < / tr >
< tr > < td > < code > a< / code > < / td > < td > Insert after selection (append)< / td > < / tr >
< tr > < td > < code > I< / code > < / td > < td > Insert at the start of the line< / td > < / tr >
< tr > < td > < code > A< / code > < / td > < td > Insert at the end of the line< / td > < / tr >
< tr > < td > < code > o< / code > < / td > < td > Open new line below selection< / td > < / tr >
< tr > < td > < code > O< / code > < / td > < td > Open new line above selection< / td > < / tr >
< tr > < td > < code > u< / code > < / td > < td > Undo change< / td > < / tr >
< tr > < td > < code > U< / code > < / td > < td > Redo change< / td > < / tr >
< tr > < td > < code > y< / code > < / td > < td > Yank selection< / td > < / tr >
< tr > < td > < code > p< / code > < / td > < td > Paste after selection< / td > < / tr >
< tr > < td > < code > P< / code > < / td > < td > Paste before selection< / td > < / tr >
< tr > < td > < code > " < / code > < code > < reg> < / code > < / td > < td > Select a register to yank to or paste from< / td > < / tr >
< tr > < td > < code > > < / code > < / td > < td > Indent selection< / td > < / tr >
< tr > < td > < code > < < / code > < / td > < td > Unindent selection< / td > < / tr >
< tr > < td > < code > =< / code > < / td > < td > Format selection< / td > < / tr >
< tr > < td > < code > d< / code > < / td > < td > Delete selection< / td > < / tr >
< tr > < td > < code > c< / code > < / td > < td > Change selection (delete and enter insert mode)< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > r< / code > < / td > < td > Replace with a character< / td > < td > < code > replace< / code > < / td > < / tr >
< tr > < td > < code > R< / code > < / td > < td > Replace with yanked text< / td > < td > < code > replace_with_yanked< / code > < / td > < / tr >
< tr > < td > < code > ~< / code > < / td > < td > Switch case of the selected text< / td > < td > < code > switch_case< / code > < / td > < / tr >
< tr > < td > < code > `< / code > < / td > < td > Set the selected text to lower case< / td > < td > < code > switch_to_lowercase< / code > < / td > < / tr >
< tr > < td > < code > Alt-`< / code > < / td > < td > Set the selected text to upper case< / td > < td > < code > switch_to_uppercase< / code > < / td > < / tr >
< tr > < td > < code > i< / code > < / td > < td > Insert before selection< / td > < td > < code > insert_mode< / code > < / td > < / tr >
< tr > < td > < code > a< / code > < / td > < td > Insert after selection (append)< / td > < td > < code > append_mode< / code > < / td > < / tr >
< tr > < td > < code > I< / code > < / td > < td > Insert at the start of the line< / td > < td > < code > prepend_to_line< / code > < / td > < / tr >
< tr > < td > < code > A< / code > < / td > < td > Insert at the end of the line< / td > < td > < code > append_to_line< / code > < / td > < / tr >
< tr > < td > < code > o< / code > < / td > < td > Open new line below selection< / td > < td > < code > open_below< / code > < / td > < / tr >
< tr > < td > < code > O< / code > < / td > < td > Open new line above selection< / td > < td > < code > open_above< / code > < / td > < / tr >
< tr > < td > < code > u< / code > < / td > < td > Undo change< / td > < td > < code > undo< / code > < / td > < / tr >
< tr > < td > < code > U< / code > < / td > < td > Redo change< / td > < td > < code > redo< / code > < / td > < / tr >
< tr > < td > < code > y< / code > < / td > < td > Yank selection< / td > < td > < code > yank< / code > < / td > < / tr >
< tr > < td > < code > p< / code > < / td > < td > Paste after selection< / td > < td > < code > paste_after< / code > < / td > < / tr >
< tr > < td > < code > P< / code > < / td > < td > Paste before selection< / td > < td > < code > paste_before< / code > < / td > < / tr >
< tr > < td > < code > " < / code > < code > < reg> < / code > < / td > < td > Select a register to yank to or paste from< / td > < td > < code > select_register< / code > < / td > < / tr >
< tr > < td > < code > > < / code > < / td > < td > Indent selection< / td > < td > < code > indent< / code > < / td > < / tr >
< tr > < td > < code > < < / code > < / td > < td > Unindent selection< / td > < td > < code > unindent< / code > < / td > < / tr >
< tr > < td > < code > =< / code > < / td > < td > Format selection< / td > < td > < code > format_selections< / code > < / td > < / tr >
< tr > < td > < code > d< / code > < / td > < td > Delete selection< / td > < td > < code > delete_selection< / code > < / td > < / tr >
< tr > < td > < code > c< / code > < / td > < td > Change selection (delete and enter insert mode)< / td > < td > < code > change_selection< / code > < / td > < / tr >
< / tbody > < / table >
< h3 id = "selection-manipulation" > < a class = "header" href = "#selection-manipulation" > Selection manipulation< / a > < / h3 >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > s< / code > < / td > < td > Select all regex matches inside selections< / td > < / tr >
< tr > < td > < code > S< / code > < / td > < td > Split selection into subselections on regex matches< / td > < / tr >
< tr > < td > < code > Alt-s< / code > < / td > < td > Split selection on newlines< / td > < / tr >
< tr > < td > < code > ;< / code > < / td > < td > Collapse selection onto a single cursor< / td > < / tr >
< tr > < td > < code > Alt-;< / code > < / td > < td > Flip selection cursor and anchor< / td > < / tr >
< tr > < td > < code > C< / code > < / td > < td > Copy selection onto the next line< / td > < / tr >
< tr > < td > < code > Alt-C< / code > < / td > < td > Copy selection onto the previous line< / td > < / tr >
< tr > < td > < code > (< / code > < / td > < td > Rotate main selection forward< / td > < / tr >
< tr > < td > < code > )< / code > < / td > < td > Rotate main selection backward< / td > < / tr >
< tr > < td > < code > Alt-(< / code > < / td > < td > Rotate selection contents forward< / td > < / tr >
< tr > < td > < code > Alt-)< / code > < / td > < td > Rotate selection contents backward< / td > < / tr >
< tr > < td > < code > %< / code > < / td > < td > Select entire file< / td > < / tr >
< tr > < td > < code > x< / code > < / td > < td > Select current line, if already selected, extend to next line< / td > < / tr >
< tr > < td > < code > X< / code > < / td > < td > Extend selection to line bounds (line-wise selection)< / td > < / tr >
< tr > < td > < / td > < td > Expand selection to parent syntax node TODO: pick a key< / td > < / tr >
< tr > < td > < code > J< / code > < / td > < td > Join lines inside selection< / td > < / tr >
< tr > < td > < code > K< / code > < / td > < td > Keep selections matching the regex TODO: overlapped by hover help< / td > < / tr >
< tr > < td > < code > Space< / code > < / td > < td > Keep only the primary selection TODO: overlapped by space mode< / td > < / tr >
< tr > < td > < code > Ctrl-c< / code > < / td > < td > Comment/uncomment the selections< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > s< / code > < / td > < td > Select all regex matches inside selections< / td > < td > < code > select_regex< / code > < / td > < / tr >
< tr > < td > < code > S< / code > < / td > < td > Split selection into subselections on regex matches< / td > < td > < code > split_selection< / code > < / td > < / tr >
< tr > < td > < code > Alt-s< / code > < / td > < td > Split selection on newlines< / td > < td > < code > split_selection_on_newline< / code > < / td > < / tr >
< tr > < td > < code > ;< / code > < / td > < td > Collapse selection onto a single cursor< / td > < td > < code > collapse_selection< / code > < / td > < / tr >
< tr > < td > < code > Alt-;< / code > < / td > < td > Flip selection cursor and anchor< / td > < td > < code > flip_selections< / code > < / td > < / tr >
< tr > < td > < code > C< / code > < / td > < td > Copy selection onto the next line< / td > < td > < code > copy_selection_on_next_line< / code > < / td > < / tr >
< tr > < td > < code > Alt-C< / code > < / td > < td > Copy selection onto the previous line< / td > < td > < code > copy_selection_on_prev_line< / code > < / td > < / tr >
< tr > < td > < code > (< / code > < / td > < td > Rotate main selection forward< / td > < td > < code > rotate_selections_backward< / code > < / td > < / tr >
< tr > < td > < code > )< / code > < / td > < td > Rotate main selection backward< / td > < td > < code > rotate_selections_forward< / code > < / td > < / tr >
< tr > < td > < code > Alt-(< / code > < / td > < td > Rotate selection contents forward< / td > < td > < code > rotate_selection_contents_backward< / code > < / td > < / tr >
< tr > < td > < code > Alt-)< / code > < / td > < td > Rotate selection contents backward< / td > < td > < code > rotate_selection_contents_forward< / code > < / td > < / tr >
< tr > < td > < code > %< / code > < / td > < td > Select entire file< / td > < td > < code > select_all< / code > < / td > < / tr >
< tr > < td > < code > x< / code > < / td > < td > Select current line, if already selected, extend to next line< / td > < td > < code > extend_line< / code > < / td > < / tr >
< tr > < td > < code > X< / code > < / td > < td > Extend selection to line bounds (line-wise selection)< / td > < td > < code > extend_to_line_bounds< / code > < / td > < / tr >
< tr > < td > < / td > < td > Expand selection to parent syntax node TODO: pick a key< / td > < td > < code > expand_selection< / code > < / td > < / tr >
< tr > < td > < code > J< / code > < / td > < td > Join lines inside selection< / td > < td > < code > join_selections< / code > < / td > < / tr >
< tr > < td > < code > K< / code > < / td > < td > Keep selections matching the regex TODO: overlapped by hover help< / td > < td > < code > keep_selections< / code > < / td > < / tr >
< tr > < td > < code > Space< / code > < / td > < td > Keep only the primary selection TODO: overlapped by space mode< / td > < td > < code > keep_primary_selection< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-c< / code > < / td > < td > Comment/uncomment the selections< / td > < td > < code > toggle_comments< / code > < / td > < / tr >
< / tbody > < / table >
< h3 id = "insert-mode" > < a class = "header" href = "#insert-mode" > Insert Mode< / a > < / h3 >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > Escape< / code > < / td > < td > Switch to normal mode< / td > < / tr >
< tr > < td > < code > Ctrl-x< / code > < / td > < td > Autocomplete< / td > < / tr >
< tr > < td > < code > Ctrl-w< / code > < / td > < td > Delete previous word< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > Escape< / code > < / td > < td > Switch to normal mode< / td > < td > < code > normal_mode< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-x< / code > < / td > < td > Autocomplete< / td > < td > < code > completion< / code > < / td > < / tr >
< tr > < td > < code > Ctrl-w< / code > < / td > < td > Delete previous word< / td > < td > < code > delete_word_backward< / code > < / td > < / tr >
< / tbody > < / table >
< h3 id = "search" > < a class = "header" href = "#search" > Search< / a > < / h3 >
< blockquote >
< p > TODO: The search implementation isn't ideal yet -- we don't support searching
in reverse, or searching via smartcase.< / p >
< / blockquote >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > /< / code > < / td > < td > Search for regex pattern< / td > < / tr >
< tr > < td > < code > n< / code > < / td > < td > Select next search match< / td > < / tr >
< tr > < td > < code > N< / code > < / td > < td > Add next search match to selection< / td > < / tr >
< tr > < td > < code > *< / code > < / td > < td > Use current selection as the search pattern< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > /< / code > < / td > < td > Search for regex pattern< / td > < td > < code > search< / code > < / td > < / tr >
< tr > < td > < code > n< / code > < / td > < td > Select next search match< / td > < td > < code > search_next< / code > < / td > < / tr >
< tr > < td > < code > N< / code > < / td > < td > Add next search match to selection< / td > < td > < code > extend_search_next< / code > < / td > < / tr >
< tr > < td > < code > *< / code > < / td > < td > Use current selection as the search pattern< / td > < td > < code > search_selection< / code > < / td > < / tr >
< / tbody > < / table >
< h3 id = "diagnostics" > < a class = "header" href = "#diagnostics" > Diagnostics< / a > < / h3 >
< blockquote >
< p > NOTE: < code > [< / code > and < code > ]< / code > will likely contain more pair mappings in the style of
< a href = "https://github.com/tpope/vim-unimpaired" > vim-unimpaired< / a > < / p >
< / blockquote >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > [d< / code > < / td > < td > Go to previous diagnostic< / td > < / tr >
< tr > < td > < code > ]d< / code > < / td > < td > Go to next diagnostic< / td > < / tr >
< tr > < td > < code > [D< / code > < / td > < td > Go to first diagnostic in document< / td > < / tr >
< tr > < td > < code > ]D< / code > < / td > < td > Go to last diagnostic in document< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > [d< / code > < / td > < td > Go to previous diagnostic< / td > < td > < code > goto_prev_diag< / code > < / td > < / tr >
< tr > < td > < code > ]d< / code > < / td > < td > Go to next diagnostic< / td > < td > < code > goto_next_diag< / code > < / td > < / tr >
< tr > < td > < code > [D< / code > < / td > < td > Go to first diagnostic in document< / td > < td > < code > goto_first_diag< / code > < / td > < / tr >
< tr > < td > < code > ]D< / code > < / td > < td > Go to last diagnostic in document< / td > < td > < code > goto_last_diag< / code > < / td > < / tr >
< / tbody > < / table >
< h2 id = "select--extend-mode" > < a class = "header" href = "#select--extend-mode" > Select / extend mode< / a > < / h2 >
< p > I'm still pondering whether to keep this mode or not. It changes movement
@ -467,74 +467,74 @@ implemented for all movement commands yet.</p>
< h2 id = "view-mode" > < a class = "header" href = "#view-mode" > View mode< / a > < / h2 >
< p > View mode is intended for scrolling and manipulating the view without changing
the selection.< / p >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > z< / code > , < code > c< / code > < / td > < td > Vertically center the line< / td > < / tr >
< tr > < td > < code > t< / code > < / td > < td > Align the line to the top of the screen< / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Align the line to the bottom of the screen< / td > < / tr >
< tr > < td > < code > m< / code > < / td > < td > Align the line to the middle of the screen (horizontally)< / td > < / tr >
< tr > < td > < code > j< / code > < / td > < td > Scroll the view downwards< / td > < / tr >
< tr > < td > < code > k< / code > < / td > < td > Scroll the view upwards< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > z< / code > , < code > c< / code > < / td > < td > Vertically center the line< / td > < td > < code > align_view_center< / code > < / td > < / tr >
< tr > < td > < code > t< / code > < / td > < td > Align the line to the top of the screen< / td > < td > < code > align_view_top< / code > < / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Align the line to the bottom of the screen< / td > < td > < code > align_view_bottom< / code > < / td > < / tr >
< tr > < td > < code > m< / code > < / td > < td > Align the line to the middle of the screen (horizontally)< / td > < td > < code > align_view_middle< / code > < / td > < / tr >
< tr > < td > < code > j< / code > < / td > < td > Scroll the view downwards< / td > < td > < code > scroll_down< / code > < / td > < / tr >
< tr > < td > < code > k< / code > < / td > < td > Scroll the view upwards< / td > < td > < code > scroll_up< / code > < / td > < / tr >
< / tbody > < / table >
< h2 id = "goto-mode" > < a class = "header" href = "#goto-mode" > Goto mode< / a > < / h2 >
< p > Jumps to various locations.< / p >
< blockquote >
< p > NOTE: Some of these features are only available with the LSP present.< / p >
< / blockquote >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > g< / code > < / td > < td > Go to the start of the file< / td > < / tr >
< tr > < td > < code > e< / code > < / td > < td > Go to the end of the file< / td > < / tr >
< tr > < td > < code > h< / code > < / td > < td > Go to the start of the line< / td > < / tr >
< tr > < td > < code > l< / code > < / td > < td > Go to the end of the line< / td > < / tr >
< tr > < td > < code > s< / code > < / td > < td > Go to first non-whitespace character of the line< / td > < / tr >
< tr > < td > < code > t< / code > < / td > < td > Go to the top of the screen< / td > < / tr >
< tr > < td > < code > m< / code > < / td > < td > Go to the middle of the screen< / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Go to the bottom of the screen< / td > < / tr >
< tr > < td > < code > d< / code > < / td > < td > Go to definition< / td > < / tr >
< tr > < td > < code > y< / code > < / td > < td > Go to type definition< / td > < / tr >
< tr > < td > < code > r< / code > < / td > < td > Go to references< / td > < / tr >
< tr > < td > < code > i< / code > < / td > < td > Go to implementation< / td > < / tr >
< tr > < td > < code > a< / code > < / td > < td > Go to the last accessed/alternate file< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > g< / code > < / td > < td > Go to the start of the file< / td > < td > < code > goto_file_start< / code > < / td > < / tr >
< tr > < td > < code > e< / code > < / td > < td > Go to the end of the file< / td > < td > < code > goto_last_line< / code > < / td > < / tr >
< tr > < td > < code > h< / code > < / td > < td > Go to the start of the line< / td > < td > < code > goto_line_start< / code > < / td > < / tr >
< tr > < td > < code > l< / code > < / td > < td > Go to the end of the line< / td > < td > < code > goto_line_end< / code > < / td > < / tr >
< tr > < td > < code > s< / code > < / td > < td > Go to first non-whitespace character of the line< / td > < td > < code > goto_first_nonwhitespace< / code > < / td > < / tr >
< tr > < td > < code > t< / code > < / td > < td > Go to the top of the screen< / td > < td > < code > goto_window_top< / code > < / td > < / tr >
< tr > < td > < code > m< / code > < / td > < td > Go to the middle of the screen< / td > < td > < code > goto_window_middle< / code > < / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Go to the bottom of the screen< / td > < td > < code > goto_window_bottom< / code > < / td > < / tr >
< tr > < td > < code > d< / code > < / td > < td > Go to definition< / td > < td > < code > goto_definition< / code > < / td > < / tr >
< tr > < td > < code > y< / code > < / td > < td > Go to type definition< / td > < td > < code > goto_type_definition< / code > < / td > < / tr >
< tr > < td > < code > r< / code > < / td > < td > Go to references< / td > < td > < code > goto_reference< / code > < / td > < / tr >
< tr > < td > < code > i< / code > < / td > < td > Go to implementation< / td > < td > < code > goto_implementation< / code > < / td > < / tr >
< tr > < td > < code > a< / code > < / td > < td > Go to the last accessed/alternate file< / td > < td > < code > goto_last_accessed_file< / code > < / td > < / tr >
< / tbody > < / table >
< h2 id = "match-mode" > < a class = "header" href = "#match-mode" > Match mode< / a > < / h2 >
< p > Enter this mode using < code > m< / code > from normal mode. See the relavant section
in < a href = "./usage.html" > Usage< / a > for an explanation about < a href = "./usage.html#surround" > surround< / a >
and < a href = "./usage.html#textobject" > textobject< / a > usage.< / p >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > m< / code > < / td > < td > Goto matching bracket< / td > < / tr >
< tr > < td > < code > s< / code > < code > < char> < / code > < / td > < td > Surround current selection with < code > < char> < / code > < / td > < / tr >
< tr > < td > < code > r< / code > < code > < from> < to> < / code > < / td > < td > Replace surround character < code > < from> < / code > with < code > < to> < / code > < / td > < / tr >
< tr > < td > < code > d< / code > < code > < char> < / code > < / td > < td > Delete surround character < code > < char> < / code > < / td > < / tr >
< tr > < td > < code > a< / code > < code > < object> < / code > < / td > < td > Select around textobject< / td > < / tr >
< tr > < td > < code > i< / code > < code > < object> < / code > < / td > < td > Select inside textobject< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > m< / code > < / td > < td > Goto matching bracket< / td > < td > < code > match_brackets< / code > < / td > < / tr >
< tr > < td > < code > s< / code > < code > < char> < / code > < / td > < td > Surround current selection with < code > < char> < / code > < / td > < td > < code > surround_add< / code > < / td > < / tr >
< tr > < td > < code > r< / code > < code > < from> < to> < / code > < / td > < td > Replace surround character < code > < from> < / code > with < code > < to> < / code > < / td > < td > < code > surround_replace< / code > < / td > < / tr >
< tr > < td > < code > d< / code > < code > < char> < / code > < / td > < td > Delete surround character < code > < char> < / code > < / td > < td > < code > surround_delete< / code > < / td > < / tr >
< tr > < td > < code > a< / code > < code > < object> < / code > < / td > < td > Select around textobject< / td > < td > < code > select_textobject_around< / code > < / td > < / tr >
< tr > < td > < code > i< / code > < code > < object> < / code > < / td > < td > Select inside textobject< / td > < td > < code > select_textobject_inner< / code > < / td > < / tr >
< / tbody > < / table >
< h2 id = "object-mode" > < a class = "header" href = "#object-mode" > Object mode< / a > < / h2 >
< p > TODO: Mappings for selecting syntax nodes (a superset of < code > [< / code > ).< / p >
< h2 id = "window-mode" > < a class = "header" href = "#window-mode" > Window mode< / a > < / h2 >
< p > This layer is similar to vim keybindings as kakoune does not support window.< / p >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > w< / code > , < code > Ctrl-w< / code > < / td > < td > Switch to next window< / td > < / tr >
< tr > < td > < code > v< / code > , < code > Ctrl-v< / code > < / td > < td > Vertical right split< / td > < / tr >
< tr > < td > < code > h< / code > , < code > Ctrl-h< / code > < / td > < td > Horizontal bottom split< / td > < / tr >
< tr > < td > < code > q< / code > , < code > Ctrl-q< / code > < / td > < td > Close current window< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > w< / code > , < code > Ctrl-w< / code > < / td > < td > Switch to next window< / td > < td > < code > rotate_view< / code > < / td > < / tr >
< tr > < td > < code > v< / code > , < code > Ctrl-v< / code > < / td > < td > Vertical right split< / td > < td > < code > vsplit< / code > < / td > < / tr >
< tr > < td > < code > h< / code > , < code > Ctrl-h< / code > < / td > < td > Horizontal bottom split< / td > < td > `hsplit< / td > < / tr >
< tr > < td > < code > q< / code > , < code > Ctrl-q< / code > < / td > < td > Close current window< / td > < td > < code > wclose< / code > < / td > < / tr >
< / tbody > < / table >
< h2 id = "space-mode" > < a class = "header" href = "#space-mode" > Space mode< / a > < / h2 >
< p > This layer is a kludge of mappings I had under leader key in neovim.< / p >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > f< / code > < / td > < td > Open file picker< / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Open buffer picker< / td > < / tr >
< tr > < td > < code > s< / code > < / td > < td > Open symbol picker (current document)< / td > < / tr >
< tr > < td > < code > a< / code > < / td > < td > Apply code action< / td > < / tr >
< tr > < td > < code > '< / code > < / td > < td > Open last fuzzy picker< / td > < / tr >
< tr > < td > < code > w< / code > < / td > < td > Enter < a href = "keymap.html#window-mode" > window mode< / a > < / td > < / tr >
< tr > < td > < code > space< / code > < / td > < td > Keep primary selection TODO: it's here because space mode replaced it< / td > < / tr >
< tr > < td > < code > p< / code > < / td > < td > Paste system clipboard after selections< / td > < / tr >
< tr > < td > < code > P< / code > < / td > < td > Paste system clipboard before selections< / td > < / tr >
< tr > < td > < code > y< / code > < / td > < td > Join and yank selections to clipboard< / td > < / tr >
< tr > < td > < code > Y< / code > < / td > < td > Yank main selection to clipboard< / td > < / tr >
< tr > < td > < code > R< / code > < / td > < td > Replace selections by clipboard contents< / td > < / tr >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < th > Command< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > f< / code > < / td > < td > Open file picker< / td > < td > < code > file_picker< / code > < / td > < / tr >
< tr > < td > < code > b< / code > < / td > < td > Open buffer picker< / td > < td > < code > buffer_picker< / code > < / td > < / tr >
< tr > < td > < code > s< / code > < / td > < td > Open symbol picker (current document)< / td > < td > < code > symbol_picker< / code > < / td > < / tr >
< tr > < td > < code > a< / code > < / td > < td > Apply code action< / td > < td > < code > code_action< / code > < / td > < / tr >
< tr > < td > < code > '< / code > < / td > < td > Open last fuzzy picker< / td > < td > < code > last_picker< / code > < / td > < / tr >
< tr > < td > < code > w< / code > < / td > < td > Enter < a href = "keymap.html#window-mode" > window mode< / a > < / td > < td > N/A< / td > < / tr >
< tr > < td > < code > space< / code > < / td > < td > Keep primary selection TODO: it's here because space mode replaced it< / td > < td > < code > keep_primary_selection< / code > < / td > < / tr >
< tr > < td > < code > p< / code > < / td > < td > Paste system clipboard after selections< / td > < td > < code > paste_clipboard_after< / code > < / td > < / tr >
< tr > < td > < code > P< / code > < / td > < td > Paste system clipboard before selections< / td > < td > < code > paste_clipboard_before< / code > < / td > < / tr >
< tr > < td > < code > y< / code > < / td > < td > Join and yank selections to clipboard< / td > < td > < code > yank_joined_to_clipboard< / code > < / td > < / tr >
< tr > < td > < code > Y< / code > < / td > < td > Yank main selection to clipboard< / td > < td > < code > yank_main_selection_to_clipboard< / code > < / td > < / tr >
< tr > < td > < code > R< / code > < / td > < td > Replace selections by clipboard contents< / td > < td > < code > replace_selections_with_clipboard< / code > < / td > < / tr >
< / tbody > < / table >
< h1 id = "picker" > < a class = "header" href = "#picker" > Picker< / a > < / h1 >
< p > Keys to use within picker.< / p >
< p > Keys to use within picker. Remapping currently not supported. < / p >
< table > < thead > < tr > < th > Key< / th > < th > Description< / th > < / tr > < / thead > < tbody >
< tr > < td > < code > Up< / code > , < code > Ctrl-p< / code > < / td > < td > Previous entry< / td > < / tr >
< tr > < td > < code > Down< / code > , < code > Ctrl-n< / code > < / td > < td > Next entry< / td > < / tr >