ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Jumpy

by jgburet ALL

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

Details

Installs

  • Total 358
  • Win 164
  • Mac 120
  • Linux 74
Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25 Aug 24 Aug 23 Aug 22 Aug 21 Aug 20 Aug 19 Aug 18 Aug 17 Aug 16 Aug 15 Aug 14 Aug 13 Aug 12 Aug 11 Aug 10 Aug 9 Aug 8 Aug 7 Aug 6 Aug 5 Aug 4 Aug 3 Aug 2 Aug 1 Jul 31 Jul 30
Windows 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Mac 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

Package Control

jumpy-sublime

An equivalent of Atom's Jumpy package that creates dynamic hotkeys to jump around files and across visible panes, for Sublime Text.

Demo of Jumpy

Installation

Step 1: download package

Option 1: using Package Control

Open the Command Palette:
- on PC: shift+control+P
- on Mac: shift+command+P

Select Package Control: Install Package.

Select Jumpy.

Option 2: using GIT

git clone "https://github.com/jgburet/jumpy-sublime.git" \
    "~/Library/Application Support/Sublime Text 3/Packages/Jumpy" # <-- MacOS destination

Step 2: configure bindings

Jumpy does not come with predefined bindings so you'll need to define yours.
Go to Preferences > Key Bindings. Complete the file with this line:

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

Customization

Jumpy lets you customize the Regex used to identify where to put labels, as well as their CSS, so you can choose how they look like. Two entries are available for change: jumpy.label_css and jumpy.regex.
Go to Preferences > Settings and set them to your preference.

Jumpy also handles syntax specific configurations (Preferences > Settings - Syntax Specific). This means that it can behave differently between two files, even if they are opened & visible in the same window.
This comes handy where the Regex used does not suits perfectly your syntax. For example, you might enhance it so kebab-cased CSS properties are not identified as several words.

Example:

"jumpy.label_css": "background-color: color(var(--redish) min-contrast(var(--background) 2.5)); font-size: 0.7rem;",
"jumpy.regex": "\\w+",

Notes:
- the regex is escaped.
- the whole CSS is overwritten, not just what collides.
- it is prefered to use variables so colors can match your color scheme.

A link that might help you:
- https://www.sublimetext.com/docs/minihtml.html#css:ver-dev

TODO

Improve labels

Right now, labels are displayed using phantoms. When displayed, they shift your text. It's annoying.
I'd prefer to edit the buffer but this complexifies A LOT how the package works, having to orchestrate more commands.
Also, there's that to deal with https://github.com/sublimehq/sublime_text/issues/817#issuecomment-95211154.

Multi cursors

Keep current cursors and add new one on selected label.

Select text between cursor and label