TMUX Easymotion
June 3, 2026 ยท View on GitHub
Note
๐ข Active Development
The master branch may include breaking changes. Please use a tagged version for stability.
Features
- Cross-pane jumping - Jump between any visible pane in the same window
- Two search modes - 1-char (
s) and 2-char (s2, leap.nvim style) - CJK support - Proper handling of wide characters
- Smartsign - Match shifted symbols (e.g.,
1matches!) - Distance-based hints - Closer matches get shorter hints
Installation
Add plugin to the list of TPM plugins in ~/.tmux.conf:
set -g @plugin 'ddzero2c/tmux-easymotion#v1.3.0'
set -g @easymotion-s 's'
Press prefix + I to install
For development version: Use
set -g @plugin 'ddzero2c/tmux-easymotion'(master branch, may be unstable)
Configuration
| Option | Default | Description |
|---|---|---|
@easymotion-s | s | 1-character search key binding |
@easymotion-s2 | (none) | 2-character search key binding (leap.nvim style) |
@easymotion-hints | asdghklqwertyuiopzxcvbnmfj; | Characters used for hints |
@easymotion-case-sensitive | false | Case-sensitive search |
@easymotion-smartsign | false | Match shifted symbols (e.g., 1 matches !) |
@easymotion-copy-mode-no-prefix | false | Bind keys directly in copy mode (no prefix required) |
@easymotion-vertical-border | โ | Vertical border character |
@easymotion-horizontal-border | โ | Horizontal border character |
@easymotion-use-curses | false | Use curses instead of ANSI sequences |
@easymotion-hint1-fg | 1;31 | SGR color code for the first hint character (bold red) |
@easymotion-hint2-fg | 1;32 | SGR color code for the second hint character (bold green) |
@easymotion-dim | 2 | SGR color code for the dimmed background text |
@easymotion-debug | false | Debug logging to ~/easymotion.log |
@easymotion-perf | false | Performance logging to ~/easymotion.log |
Example configuration:
set -g @easymotion-s 's'
set -g @easymotion-s2 'f'
set -g @easymotion-hints 'asdfghjkl;'
set -g @easymotion-case-sensitive 'true'
set -g @easymotion-smartsign 'true'
# Custom colors (standard SGR codes: "1" bold, "4" underline,
# "31"-"37" / "90"-"97" basic colors, "38;5;N" for 256-color)
set -g @easymotion-hint1-fg '1;38;5;208' # bold orange
set -g @easymotion-hint2-fg '1;38;5;33' # bold blue
set -g @easymotion-dim '2;90' # dim grey
Vim-like Configuration
set-window-option -g mode-keys vi
bind-key -T copy-mode-vi C-v send-keys -X begin-selection \; send-keys -X rectangle-toggle;
bind-key -T copy-mode-vi v send-keys -X begin-selection;
bind-key -T copy-mode-vi V send-keys -X select-line;
Usage
Copy a word:
prefix + s โ type character โ select hint โ press ve and y to copy
Paste:
prefix + ] to paste
Development
# Install development dependencies
pip install -r requirements-dev.txt
# Run tests
pytest test_easymotion.py -v --cache-clear