Package Control

The official Sublime Text package manager.

Jumpy

Create dynamic hotkeys to jump around files and across visible panes.

By jgburet
Created August 6, 2020, last updated October 20, 2026.

SepAugJulJunMayAprMarFebJan Dec2025 NovOct 2026-W43 | installs: 0 | removals: 0 | upgrades: 3 2026-W43 | installs: 0 | removals: 0 | upgrades: 3 2026-W43 | installs: 0 | removals: 0 | upgrades: 3 2026-W42 | installs: 2 | removals: 1 | upgrades: 0 2026-W42 | installs: 2 | removals: 1 | upgrades: 0 2026-W42 | installs: 2 | removals: 1 | upgrades: 0 2026-W41 | installs: 0 | removals: 0 | upgrades: 0 2026-W41 | installs: 0 | removals: 0 | upgrades: 0 2026-W41 | installs: 0 | removals: 0 | upgrades: 0 2026-W40 | installs: 0 | removals: 0 | upgrades: 0 2026-W40 | installs: 0 | removals: 0 | upgrades: 0 2026-W40 | installs: 0 | removals: 0 | upgrades: 0 2026-W39 | installs: 1 | removals: 0 | upgrades: 0 2026-W39 | installs: 1 | removals: 0 | upgrades: 0 2026-W39 | installs: 1 | removals: 0 | upgrades: 0 2026-W38 | installs: 0 | removals: 0 | upgrades: 0 2026-W38 | installs: 0 | removals: 0 | upgrades: 0 2026-W38 | installs: 0 | removals: 0 | upgrades: 0 2026-W37 | installs: 0 | removals: 0 | upgrades: 0 2026-W37 | installs: 0 | removals: 0 | upgrades: 0 2026-W37 | installs: 0 | removals: 0 | upgrades: 0 2026-W36 | installs: 1 | removals: 0 | upgrades: 0 2026-W36 | installs: 1 | removals: 0 | upgrades: 0 2026-W36 | installs: 1 | removals: 0 | upgrades: 0 2026-W35 | installs: 1 | removals: 0 | upgrades: 0 2026-W35 | installs: 1 | removals: 0 | upgrades: 0 2026-W35 | installs: 1 | removals: 0 | upgrades: 0 2026-W34 | installs: 0 | removals: 0 | upgrades: 0 2026-W34 | installs: 0 | removals: 0 | upgrades: 0 2026-W34 | installs: 0 | removals: 0 | upgrades: 0 2026-W33 | installs: 0 | removals: 0 | upgrades: 0 2026-W33 | installs: 0 | removals: 0 | upgrades: 0 2026-W33 | installs: 0 | removals: 0 | upgrades: 0 2026-W32 | installs: 0 | removals: 1 | upgrades: 0 2026-W32 | installs: 0 | removals: 1 | upgrades: 0 2026-W32 | installs: 0 | removals: 1 | upgrades: 0 2026-W32 | installs: 0 | removals: 1 | upgrades: 0 2026-W31 | installs: 0 | removals: 1 | upgrades: 0 2026-W31 | installs: 0 | removals: 1 | upgrades: 0 2026-W31 | installs: 0 | removals: 1 | upgrades: 0 2026-W31 | installs: 0 | removals: 1 | upgrades: 0 2026-W30 | installs: 4 | removals: 4 | upgrades: 0 2026-W30 | installs: 4 | removals: 4 | upgrades: 0 2026-W30 | installs: 4 | removals: 4 | upgrades: 0 2026-W29 | installs: 0 | removals: 0 | upgrades: 0 2026-W29 | installs: 0 | removals: 0 | upgrades: 0 2026-W29 | installs: 0 | removals: 0 | upgrades: 0 2026-W28 | installs: 3 | removals: 1 | upgrades: 0 2026-W28 | installs: 3 | removals: 1 | upgrades: 0 2026-W28 | installs: 3 | removals: 1 | upgrades: 0 2026-W27 | installs: 0 | removals: 0 | upgrades: 0 2026-W27 | installs: 0 | removals: 0 | upgrades: 0 2026-W27 | installs: 0 | removals: 0 | upgrades: 0 2026-W26 | installs: 0 | removals: 0 | upgrades: 0 2026-W26 | installs: 0 | removals: 0 | upgrades: 0 2026-W26 | installs: 0 | removals: 0 | upgrades: 0 2026-W25 | installs: 1 | removals: 0 | upgrades: 0 2026-W25 | installs: 1 | removals: 0 | upgrades: 0 2026-W25 | installs: 1 | removals: 0 | upgrades: 0 2026-W24 | installs: 0 | removals: 0 | upgrades: 0 2026-W24 | installs: 0 | removals: 0 | upgrades: 0 2026-W24 | installs: 0 | removals: 0 | upgrades: 0 2026-W23 | installs: 2 | removals: 0 | upgrades: 0 2026-W23 | installs: 2 | removals: 0 | upgrades: 0 2026-W23 | installs: 2 | removals: 0 | upgrades: 0 2026-W22 | installs: 0 | removals: 0 | upgrades: 0 2026-W22 | installs: 0 | removals: 0 | upgrades: 0 2026-W22 | installs: 0 | removals: 0 | upgrades: 0 2026-W21 | installs: 1 | removals: 0 | upgrades: 0 2026-W21 | installs: 1 | removals: 0 | upgrades: 0 2026-W21 | installs: 1 | removals: 0 | upgrades: 0 2026-W20 | installs: 0 | removals: 0 | upgrades: 0 2026-W20 | installs: 0 | removals: 0 | upgrades: 0 2026-W20 | installs: 0 | removals: 0 | upgrades: 0 2026-W19 | installs: 0 | removals: 0 | upgrades: 0 2026-W19 | installs: 0 | removals: 0 | upgrades: 0 2026-W19 | installs: 0 | removals: 0 | upgrades: 0 2026-W18 | installs: 0 | removals: 0 | upgrades: 0 2026-W18 | installs: 0 | removals: 0 | upgrades: 0 2026-W18 | installs: 0 | removals: 0 | upgrades: 0 2026-W17 | installs: 0 | removals: 0 | upgrades: 0 2026-W17 | installs: 0 | removals: 0 | upgrades: 0 2026-W17 | installs: 0 | removals: 0 | upgrades: 0 2026-W16 | installs: 0 | removals: 0 | upgrades: 0 2026-W16 | installs: 0 | removals: 0 | upgrades: 0 2026-W16 | installs: 0 | removals: 0 | upgrades: 0 2026-W15 | installs: 1 | removals: 1 | upgrades: 0 2026-W15 | installs: 1 | removals: 1 | upgrades: 0 2026-W15 | installs: 1 | removals: 1 | upgrades: 0 2026-W14 | installs: 1 | removals: 0 | upgrades: 0 2026-W14 | installs: 1 | removals: 0 | upgrades: 0 2026-W14 | installs: 1 | removals: 0 | upgrades: 0 2026-W13 | installs: 1 | removals: 0 | upgrades: 0 2026-W13 | installs: 1 | removals: 0 | upgrades: 0 2026-W13 | installs: 1 | removals: 0 | upgrades: 0 2026-W12 | installs: 1 | removals: 0 | upgrades: 0 2026-W12 | installs: 1 | removals: 0 | upgrades: 0 2026-W12 | installs: 1 | removals: 0 | upgrades: 0 2026-W11 | installs: 0 | removals: 1 | upgrades: 0 2026-W11 | installs: 0 | removals: 1 | upgrades: 0 2026-W11 | installs: 0 | removals: 1 | upgrades: 0 2026-W11 | installs: 0 | removals: 1 | upgrades: 0 2026-W10 | installs: 1 | removals: 0 | upgrades: 0 2026-W10 | installs: 1 | removals: 0 | upgrades: 0 2026-W10 | installs: 1 | removals: 0 | upgrades: 0 2026-W09 | installs: 1 | removals: 0 | upgrades: 0 2026-W09 | installs: 1 | removals: 0 | upgrades: 0 2026-W09 | installs: 1 | removals: 0 | upgrades: 0 2026-W08 | installs: 0 | removals: 0 | upgrades: 0 2026-W08 | installs: 0 | removals: 0 | upgrades: 0 2026-W08 | installs: 0 | removals: 0 | upgrades: 0 2026-W07 | installs: 0 | removals: 0 | upgrades: 0 2026-W07 | installs: 0 | removals: 0 | upgrades: 0 2026-W07 | installs: 0 | removals: 0 | upgrades: 0 2026-W06 | installs: 0 | removals: 0 | upgrades: 0 2026-W06 | installs: 0 | removals: 0 | upgrades: 0 2026-W06 | installs: 0 | removals: 0 | upgrades: 0 2026-W05 | installs: 1 | removals: 0 | upgrades: 0 2026-W05 | installs: 1 | removals: 0 | upgrades: 0 2026-W05 | installs: 1 | removals: 0 | upgrades: 0 2026-W04 | installs: 0 | removals: 0 | upgrades: 0 2026-W04 | installs: 0 | removals: 0 | upgrades: 0 2026-W04 | installs: 0 | removals: 0 | upgrades: 0 2026-W03 | installs: 1 | removals: 0 | upgrades: 0 2026-W03 | installs: 1 | removals: 0 | upgrades: 0 2026-W03 | installs: 1 | removals: 0 | upgrades: 0 2026-W02 | installs: 1 | removals: 0 | upgrades: 0 2026-W02 | installs: 1 | removals: 0 | upgrades: 0 2026-W02 | installs: 1 | removals: 0 | upgrades: 0 2026-W01 | installs: 0 | removals: 0 | upgrades: 0 2026-W01 | installs: 0 | removals: 0 | upgrades: 0 2026-W01 | installs: 0 | removals: 0 | upgrades: 0 2025-W52 | installs: 0 | removals: 0 | upgrades: 0 2025-W52 | installs: 0 | removals: 0 | upgrades: 0 2025-W52 | installs: 0 | removals: 0 | upgrades: 0 2025-W51 | installs: 0 | removals: 0 | upgrades: 0 2025-W51 | installs: 0 | removals: 0 | upgrades: 0 2025-W51 | installs: 0 | removals: 0 | upgrades: 0 2025-W50 | installs: 0 | removals: 0 | upgrades: 0 2025-W50 | installs: 0 | removals: 0 | upgrades: 0 2025-W50 | installs: 0 | removals: 0 | upgrades: 0 2025-W49 | installs: 0 | removals: 0 | upgrades: 0 2025-W49 | installs: 0 | removals: 0 | upgrades: 0 2025-W49 | installs: 0 | removals: 0 | upgrades: 0 2025-W48 | installs: 1 | removals: 0 | upgrades: 0 2025-W48 | installs: 1 | removals: 0 | upgrades: 0 2025-W48 | installs: 1 | removals: 0 | upgrades: 0 2025-W47 | installs: 0 | removals: 0 | upgrades: 0 2025-W47 | installs: 0 | removals: 0 | upgrades: 0 2025-W47 | installs: 0 | removals: 0 | upgrades: 0 2025-W46 | installs: 1 | removals: 1 | upgrades: 0 2025-W46 | installs: 1 | removals: 1 | upgrades: 0 2025-W46 | installs: 1 | removals: 1 | upgrades: 0 2025-W45 | installs: 0 | removals: 1 | upgrades: 0 2025-W45 | installs: 0 | removals: 1 | upgrades: 0 2025-W45 | installs: 0 | removals: 1 | upgrades: 0 2025-W45 | installs: 0 | removals: 1 | upgrades: 0 2025-W44 | installs: 0 | removals: 0 | upgrades: 0 2025-W44 | installs: 0 | removals: 0 | upgrades: 0 2025-W44 | installs: 0 | removals: 0 | upgrades: 0 2025-W43 | installs: 2 | removals: 0 | upgrades: 0 2025-W43 | installs: 2 | removals: 0 | upgrades: 0 2025-W43 | installs: 2 | removals: 0 | upgrades: 0 024 WeeklyInstalls 024 WeeklyUpgrades 2026-W43 | upgrades: 3 0.3.0
Installations: recent average 1 per week, 394 in total
Installations minus removals
Upgrades

Links

Version

0.3.0 ·
2026-10-20 09:41

Package Control

Jumpy

Jump to any word of any visible view in Sublime Text by typing a short label.

Demo of Jumpy

Usage

  1. Press your key binding (see Key binding): a label appears on every word, number and line end of the visible views.
  2. Type a label: the cursor moves to its target. Labels that no longer match are hidden as you type.
  3. Press escape, or type a letter that matches no label, to cancel.

Instead of moving the cursor, Jumpy can also add a cursor or extend the selection to the label (see Actions).

Installation

Package Control: open the Command Palette (ctrl+shift+p, or cmd+shift+p on Mac), select Package Control: Install Package, then Jumpy.

Manually: clone this repository into the folder opened by Preferences: Browse Packages from the Command Palette, under the name Jumpy:

git clone https://github.com/jgburet/jumpy-sublime.git Jumpy

Key binding

Jumpy comes without a key binding: it does nothing until you add one.
Run Preferences: Key Bindings from the Command Palette and add this entry to the list in the right-hand file:

{ "keys": ["shift+enter"], "command": "jumpy", "context": [{ "key": "panel_has_focus", "operand": false }] },

Actions

The action argument sets what happens once a label is typed. Bind each one you use to its own keys, e.g.:

{ "keys": ["shift+enter"], "command": "jumpy", "context": [{ "key": "panel_has_focus", "operand": false }] },
{ "keys": ["alt+enter"], "command": "jumpy", "args": { "action": "add_cursor" }, "context": [{ "key": "panel_has_focus", "operand": false }] },
{ "keys": ["alt+shift+enter"], "command": "jumpy", "args": { "action": "select" }, "context": [{ "key": "panel_has_focus", "operand": false }] },
Action Effect
"jump" (default) Replaces the selection with a cursor at the label.
"add_cursor" Adds a cursor at the label, keeping the existing cursors and selections.
"select" Selects from a cursor to the label, as shift+click does, and keeps the other cursors and selections. Labels are only shown in the active view.

The label stands for the start of its target, so selecting forward stops before the target word and selecting backward includes it.
With "jump" and "add_cursor", a label in another view uses that view's own cursors.

Which cursor "select" starts from. Sublime does not tell which cursor is the most recent, so Jumpy compares the cursors with the ones left by its last action in the view:

Cursors are compared by position: after typing or moving several cursors, they all count as added. Press escape to get back to a single cursor.

Settings

Run Preferences: Jumpy Settings from the Command Palette, or use the menu Package Settings > Jumpy > Settings (under Sublime Text > Settings on Mac, Preferences elsewhere).
Settings can also be set in Preferences: Settings, or per syntax in Preferences: Settings - Syntax Specific, which takes precedence.

Setting Default Description
jumpy.mode "phantom" How labels are displayed: "phantom" or "edit" (see Display modes).
jumpy.regex "$|\\d+(\\.\\d+)?|\\w+" Where labels are placed. Backslashes must be escaped, as in any JSON string.
jumpy.selector none Only keep the matches of jumpy.regex whose start matches this scope selector, e.g. "source - comment - string".
jumpy.label_color color scheme's purple Background color of the labels, in any CSS format, e.g. "#957FB8" or "purple". Shared by every view: syntax specific values are ignored.
jumpy.label_css "font-size: 0.7rem;" Additional CSS of the labels in phantom mode. A background-color here overrides jumpy.label_color. Prefer color scheme variables so labels match your theme.

Syntax specific settings let Jumpy behave differently in two files visible side by side. For example, to treat kebab-cased CSS properties as single words, open a CSS file, run Preferences: Settings - Syntax Specific and set:

{
	"jumpy.regex": "$|[\\w-]+",
}

Display modes

A file open in several views gets the same labels in each of them, and a single mode applies to all of them: the active view's when it shows the file, otherwise the one of the view in the first group. A label visible in several views moves the cursor in the active one.

Edit mode details

Labels. They are 2 characters long, 3 when there are more than 676 targets; the most cramped targets get the 2-character ones. Labels only overwrite characters up to the next target, tab or end of line. A target followed by less than 2 free characters (e.g. x in x\ty) shifts the text by one character.

Colors. Sublime only colors text through color schemes. When jumpy.label_color is set, Jumpy adds a rule for its jumpy.label scope to each color scheme you use, through files in Packages/User/Jumpy/ that Sublime merges with them. Your color schemes and their customizations are left untouched, and these files are emptied when the setting is unset. Labels displayed right after switching to a new color scheme may not be colored yet.

Interactions.

Uninstall

Remove the package, then delete Packages/User/Jumpy/ while Sublime Text is closed. Jumpy cannot remove this folder itself: Sublime fails to reload a color scheme whose merged file disappears while it runs. The folder only exists if jumpy.label_color was set in edit mode.

Credits

Inspired by Jumpy for Atom.

Results

Packages