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

Ace​Jump

by ice9js ST3

Jump between characters in Sublime Text 3 without using a mouse at ease

Details

Installs

  • Total 15K
  • Win 8K
  • Mac 5K
  • Linux 3K
Dec 21 Dec 20 Dec 19 Dec 18 Dec 17 Dec 16 Dec 15 Dec 14 Dec 13 Dec 12 Dec 11 Dec 10 Dec 9 Dec 8 Dec 7 Dec 6 Dec 5 Dec 4 Dec 3 Dec 2 Dec 1 Nov 30 Nov 29 Nov 28 Nov 27 Nov 26 Nov 25 Nov 24 Nov 23 Nov 22 Nov 21 Nov 20 Nov 19 Nov 18 Nov 17 Nov 16 Nov 15 Nov 14 Nov 13 Nov 12 Nov 11 Nov 10 Nov 9 Nov 8 Nov 7 Nov 6
Windows 1 2 2 0 2 0 1 0 0 1 3 0 0 1 0 1 0 0 0 1 0 0 3 1 0 0 0 0 1 0 1 0 0 1 0 2 0 0 0 0 1 0 0 0 0 0
Mac 0 0 0 2 0 0 0 1 0 0 0 0 1 0 2 0 0 1 1 2 0 1 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 4 1 0 0 1
Linux 1 0 0 0 1 0 0 0 0 0 0 2 1 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 2 0 0 0 1 1 0 0 0 1 0

Readme

Source
raw.​githubusercontent.​com

AceJump

A plugin for Sublime Text 3 heavily inspired by AceJump for emacs.

AceJump allows you to move the cursor to any character to any place currently on screen. To clarify, you can jump between characters in all visible portions of currently open documents in any panes. Like it's emacs counterpart, AceJump for sublime features word (on the image below), character and line modes which make jumping even easier.

AceJump

After selecting a mode, you type in a character (except in line mode, where you don't have to type in anything) and appropriate labels are displayed. Then all you need to do is press the key from the label and voila!

Installation

PackageControl

You can install AceJump from PackageControl by following the steps below:

  • Open up the command palette and select Package Control: Install Package
  • Wait for the packages index to load and select AceJump

Manual installation

You can install AceJump manually using git by running the following command within sublime packages directory (Preferences > Browse Packages):

$ git clone git@github.com:ice9js/ace-jump-sublime.git AceJump/

Or you can just copy the contents of this repository into Packages/AceJump.

Usage

Word mode

Goes to a word starting with the given character. This mode works only with alphanumeric characters. If you're interested in jumping to a special character, use character mode instead.

  • Ctrl/Super + Shift + ;
  • <head character>
  • <label>

No need to press enter after selecting a label!

Word mode

Character mode

Goes to an occurence of the given character.

  • Ctrl/Super + Shift + '
  • <character>
  • <label>

Character mode

Line mode

Labels all non-empty lines and lets you jump to one of them.

  • Ctrl/Super + Shift + .
  • <label>

Line mode

Within Line mode

Labels all words within the line where current cursor locate and lets you jump to one of them.

  • Ctrl/Super + Shift + ,
  • <label>

Select mode

After triggering select mode, the next jump will select everything inbetween the current cursor position and the selected label. When select mode is triggered, the next jump is limited to the current file.

  • Alt+; (Ctrl+; for OS X)
  • perform a jump using word, character or line mode

Select mode

Multiple cursors mode

After triggering multiple cursors mode, the next jump will add a new cursor to the view instead of moving the existing one. Again, when this mode is triggered, only jumps in the same file are available.

  • Alt+' (Ctrl+' for OS X)

Multiple cursors mode

Jump-after mode

In this mode, the cursor will jump behind the targeted instance. Unfortunetely, this mode cannot be paired with select or multiple cursors mode yet.

  • Alt+. (Ctrl+. for OS X)

Jump-after mode

Batching

In case there are more places to jump to than labels available, labels will be batched and you can cycle through them by simply pressing enter.

Batching

Customization

In order to access AceJump settings, go to Preferences > Package Settings > AceJump > Settings - User.

Key bindings

Go to Preferences > Package Settings > AceJump > Key Bindings - User. You can then override the bindings for any of the following commands:

  • ace_jump_word
  • ace_jump_char
  • ace_jump_line
  • ace_jump_within_line
  • ace_jump_select
  • ace_jump_add_cursor
  • ace_jump_after

The commands accept an optional Boolean current_buffer_only argument. When present and set to true, AceJump only performs on the currently edited buffer.

Labels

You can override the labels setting to provide your own set of labels to be used by AceJump.

Highlighting

You can also set the syntsx scope that's used for highlighting by overriding labels_scope. The default scope is invalid.

Case sensitivity

Ace jump is case sensitive by default. Case sensitivity can be toggled on and off by altering the search_case_sensitivity setting.

Jumping behind the last character in a line

By setting jump_behind_last_characters to true, AceJump will jump behind a character if it's the last character on a line, without the need to trigger jump after mode. This only works in character mode and is switched off by default.

Known issues

It has been reported that the Select mode, Multi cursors mode and Jump after mode might not work using the specified keybinding.
As a workaround for that follow these steps:

  • Start a regular search, e.g. word search (default keybinding: Ctrl+Shift+;).
  • Before entering any character, activate the advanced mode (e.g. for Select mode use Alt+;).
  • Now enter the character to lookup.
  • Use the label to go to the corresponding location.