Skip to content

Helix Shortcuts

See Migrating from Vim - helix-editor/helix

DescriptionShortcut
Delete character at pointd
Delete wordwd
Delete linexd
Go to first line (same as vim)gg
Go to last linege
Go to beginning of linegh
Go to end of linegl or t + Enter
Go to file/URL in selectiongf
Copy linexy
Copy to end of linet + Enter + y
Select entire buffer / file%
Buffer search, replace%sword<ret>creplacement<esc>
Delete entire linexd
Delete to end of linevgl d or v <end> d
Go to matching bracketmm
AutocompleteC-x
Comment linesC-c
Search word at pointbe* n
Multiple cursors, addShift + c
Multiple cursors, turn off cursors,
Multiple cursors, use for “block selection”Shift + c
Run shell command:sh command
Run shell command, insert output to buffer:! command
Log, View:log-open
Sort, pipe selection to sort to sort buffer:pipe sort
  • For t + Enter, Helix has newlines like a character which is Enter
  • % - to select whole buffer
  • s - split the selection, and type the word you want to substitute, press enter
    • All the occurrences of the word are selected
  • c - change the selections, and type the new word, to replace all occurrences
  • , or Esc - Go back to selections, normal mode

To modify all lines in a certain way, you would first select the whole file, and then split the selection at .

DescriptionShortcut
Jumplist previous, beforeC-o, C-i
DescriptionShortcut
Code, Symbol pickerSPC s
Code, Symbol picker workspaceSPC S
Code, diagnostics, errorsSPC d
Code, renameSPC r
Code, show documentation for item at pointSPC k
Command paletteSPC ?
Command palette, search bindingsSPC ? (%bindings <keys>)
Edit, Undou
Edit, RedoShift + u
File picker, open file in vertical splitC-v
File picker, up, downC-n, C-p
Go to menu like cursor, symbols, buffers, lineg
Go to menu like diagnostics, code[ or ]
Go to, next, previous buffergn, gp
Go to, version control changes[ or ], g or G
Go to, word, like Vim Flash, seek / Emacs Avygw, <letter code>
Jump list, openSPC j
Jump list, save place (current selection for use later)C-s
Match, (selection / mark) menum
Match, Tree sitter syntax tree contractA-i
Match, Tree sitter syntax tree expandA-o
Match, around functionmaf
Match, select inside of given objectmi <object>
Match, surround given objectms <object>
Match, replace and then selectionmr <selection>
Multiple cursor in next line, above lineC / Alt-C
Multiple cursor turn off,
Register, menu
Register, document path”%
Register, system clipboard”+
Pastep
Paste, from system clipboardSPC + p
Picker, open last picker (like file, palette)SPC ‘
Select, line and press again to select next linex
Select, within selection, input regexs
Select, within selection, split selection upShift + s
Select, move to next selected element as primary)
Select, move to previous selected element as primary)
Select, Keep only primary selection,
Select, Remove primary selectionAlt ,
Select, Collapse selection onto a single cursor;
Version control, file picker of changesSPC g
  • Select matches in a selection with s, then type selection and Enter. Can type c to change the selection
    • Can create multiple cursors depending on the selection regex
    • Esc to exit insert mode and , to remove extra cursors
DescriptionShortcut
Find char and select to itf <char>
Find char and select to before itt <char>
Jump mode (hinting selection), works in visual modegw
Select, walk up syntax tree / section of bufferAlt up or Alt + down
DescriptionShortcut
Buffer, close others:bco
Toggle options:toggle <option>
Hard wrap text, permanently reformat:reflow
Version control, change, reset a diff:reset-diff-change
Language, Set for syntax highlight:lang <language>

Toggles can be visual elements, options. Tab completion is available for options.