A quick reference for my Helix setup. Default keybindings plus my custom ones (C-s, C-q, C-/, C-r).
| Key | Action |
|---|
h j k l | Left / down / up / right |
w / b | Next / prev word |
e | End of word |
W / B | Next / prev WORD (with punct) |
gg / ge | Start / end of file |
gh / gl | Start / end of line |
gs | First non-blank char |
C-u / C-d | Half page up / down |
C-b / C-f | Full page up / down |
f{c} / F{c} | Jump to char fwd / back |
t{c} / T{c} | Jump before char fwd / back |
{num}gg | Jump to line number |
C-o / C-i | Jump history back / fwd |
mm | Jump to matching bracket |
gw | Word jump (labels on screen) |
]f / [f | Next / prev function |
]c / [c | Next / prev class |
]d / [d | Next / prev diagnostic |
]p / [p | Next / prev paragraph |
| Key | Action |
|---|
zc / zz | Center cursor on screen |
zt / zb | Scroll cursor to top / bottom |
zk / zj | Scroll up / down one line |
| Key | Action |
|---|
v | Enter/extend selection mode |
x | Select entire line |
X / xx | Extend selection by lines |
% | Select entire file |
; | Collapse selection to cursor |
, | Clear extra cursors |
Alt+; | Flip selection direction |
_ | Trim whitespace from selection |
| Key | Action |
|---|
mi( mi{ mi[ | Inside brackets |
ma( ma{ ma[ | Around brackets |
mi" / mi' | Inside quotes |
ma" / ma' | Around quotes |
miw / maw | Inside / around word |
mif / maf | Inside / around function |
mic / mac | Inside / around class |
mip / map | Inside / around paragraph |
| Key | Action |
|---|
Alt+o | Expand selection (syntax) |
Alt+i | Shrink selection (syntax) |
Alt+n / Alt+p | Next / prev sibling node |
| Key | Action |
|---|
C | Add cursor on line below |
Alt+C | Add cursor on line above |
s | Search regex in selection |
S | Split selection by regex |
Alt+s | Split selection into lines |
& | Align cursors to column |
| Key | Action |
|---|
i / a | Insert before / after cursor |
I / A | Insert at line start / end |
o / O | New line below / above |
d | Delete selection |
c | Change (delete + insert) |
y | Yank (copy) |
p / P | Paste after / before |
R | Replace from clipboard |
r{c} | Replace selection with char |
~ | Toggle case |
J | Join lines |
> / < | Indent / outdent |
= | Auto-format selection (LSP) |
C-a / C-x | Increment / decrement number |
C-/ | Toggle line comment (custom) |
| Key | Action |
|---|
u / U | Undo / redo |
Q | Record / stop recording macro |
q | Play macro |
| Key | Action |
|---|
/ | Search forward |
? | Search backward |
n / N | Next / prev match |
* | Search word under cursor |
:s/a/b/g | Replace in selection |
:%s/a/b/g | Replace in entire file |
| Key | Action |
|---|
Space+e | File explorer (directory tree) |
Space+f | File picker (fuzzy search) |
Space+F | File picker in CWD |
Space+b | Buffer picker (open files) |
Space+j | Jumplist picker |
Space+s | Symbol picker (functions, types) |
Space+S | Workspace symbol picker |
Space+/ | Global search (grep project) |
Space+? | Command palette |
| Key | Action |
|---|
gd | Go to definition |
gr | Go to references |
gi | Go to implementation |
gy | Go to type definition |
ga | Go to last accessed file |
Space+h | Hover docs |
Space+k | Signature help |
Space+a | Code action (fix, import) |
Space+r | Rename symbol (refactor) |
Space+d | Diagnostics (errors list) |
Space+D | Workspace diagnostics |
| Key | Action |
|---|
C-w s / :hsplit | Split horizontal |
C-w v / :vsplit | Split vertical |
C-w h/j/k/l | Focus left/down/up/right |
C-w w | Cycle through windows |
C-w q | Close current window |
C-w o | Close all other windows |
| Key | Action |
|---|
:w | Save (+ auto-format if on) |
:q / :q! | Quit / force quit |
:wq / :wqa | Save+quit / all |
:o {path} | Open or create file |
:bc | Close current buffer |
:bn / :bp | Next / prev buffer |
:sh mkdir -p dir | Create dirs from hx |
C-s | Save (custom) |
C-q | Quit (custom) |
C-r | Reload all buffers (custom) |
| Key | Action |
|---|
:sh {cmd} | Run shell command |
:format | Format entire file |
:pipe {cmd} | Pipe selection through cmd |
:config-reload | Reload .toml config |
:lsp-restart | Restart LSP server |
:theme {name} | Switch color theme |
:set line-numbers rel | Relative line numbers |
:tutor | Built-in tutorial |
| Key | Action |
|---|
"ay / "ap | Yank / paste register a |
"+y / "+p | System clipboard copy / paste |
"_d | Delete without yanking |
| Key | Action |
|---|
C-x | Trigger autocomplete |
C-w | Delete word backward |
C-u | Delete to start of line |
C-r | Insert from register |
Esc | Back to normal mode |
| Sequence | Result |
|---|
xd | Delete line |
xy | Yank (copy) line |
miw c | Change word |
mi{ c | Change inside |
% s{pat} c | Find and replace in file |
x s{pat} c | Replace in selected lines |
v+move d...p | Cut block, move, paste |
x(repeat) C-/ | Comment multiple lines |
gd Space+r | Go to def + rename symbol |