Git Product home page Git Product logo

acejump's Introduction

AceJumpLogo

AceJump is a plugin for the IntelliJ Platform that lets you jump to any symbol in the editor with just a few keystrokes. Press the keyboard shortcut for AceAction (Ctrl+; by default) to activate AceJump. Type any string in the editor, followed by one of the illustrated tags, to jump its position:

Press the AceJump shortcut a second time to activate Declaration Mode, which is equivalent to the Navigate To action in the IDE. Press the AceJump shortcut three times before completing a tag to activate Target Mode. Once Target Mode is activated, jumping to a tag will select an entire word. Target Mode can also be activated directly by pressing the shortcut for AceTargetAction (Ctrl+Alt+; by default).

Press the AceJump shortcut for Line Mode(Ctrl+Shift+; by default), to target the beginning, first non-whitespace, and last character of every line in the editor). Then jump to one by completing the tag.

Press the AceJump shortcut, followed by β†’ to target the last, ← to target the first, or ↑, to target the first non-whitespace characters of every line in the editor.

Tips

  • Press Tab when searching to jump to the next group of matches in the editor.

  • If you make a mistake searching, just press Backspace to restart from scratch.

  • If no matches can be found on-screen, AceJump will scroll to the next match it can find.

  • Note that search is smart case sensitive, however tag selection is not case sensitive.

  • Holding down Shift when typing the last tag character will select all text from the current cursor position to that destination.

  • Pressing Enter or Shift+Enter during a search will cycle through tagged results on screen.

    • To select a location and continue editing, just press Esc.

    • To use this feature with IdeaVim, you must be in Vim's Insert Mode (to be fixed at a later point).

  • Keep typing! AceJump will accept multiple sequential characters before tag selection.

  • Press the AceJump shortcut multiple times to cycle between modes.

  • Word Mode action that will tag all visible words as soon as it is activated.

  • Declaration Mode will jump to a token's declaration, if it exists.

  • To rebind any keyboard shortcuts visit Settings | Keymap | πŸ” "AceJump"

Installing

AceJump can be installed directly from the IDE, via Settings | Plugins | Browse Repositories... | πŸ” "AceJump".

Configuring

IdeaVim users can choose to activate AceJump with a single keystroke (f, F and g are arbitrary) by running:

echo -e '

" Press `f` to activate AceJump
map f <Action>(AceAction)
" Press `F` to activate Target Mode
map F <Action>(AceTargetAction)
" Press `g` to activate Line Mode
map g <Action>(AceLineAction)

' >> ~/.ideavimrc

To customize AceJump's behavior further with additional actions, see the <action> tags in plugin.xml. The following example shows how to activate AceJump before or after the caret.

" Press `S` in normal mode to activate AceJump mode before the caret
nmap S <Action>(AceBackwardAction)

" Press `s` in normal mode to activate AceJump mode after the caret
nmap s <Action>(AceForwardAction)

To change the default keyboard shortcuts, open File | Settings | Keymap | πŸ” "AceJump" | AceJump | Enter⏎.

Keymap

Building

Prerequisites: JDK 8 or higher.

To build AceJump, clone and run the Gradle task buildPlugin like so:

  • git clone https://github.com/acejump/AceJump && cd AceJump
  • For Linux and Mac OS: ./gradlew buildPlugin
  • For Windows: gradlew.bat buildPlugin

The build artifact will be placed in build/distributions/.

Miscellaneous: AceJump is built using Gradle with the Gradle Kotlin DSL and the gradle-intellij-plugin.

Extending

AceJump can be used by other IntelliJ Platform plugins. To do so, add the following snippet to your build.gradle.kts file:

intellij {
  plugins.set("AceJump:<LATEST_VERSION>")
}

Callers who pass an instance of Editor into SessionManager.start(editor) will receive a Session instance in return. Sessions are disposed after use.

To use AceJump externally, please see the following example:

import org.acejump.session.SessionManager
import org.acejump.session.AceJumpListener
import org.acejump.boundaries.StandardBoundaries.*
import org.acejump.search.Pattern.*

val aceJumpSession = SessionManager.start(editorInstance)

aceJumpSession.addAceJumpListener(object: AceJumpListener {
  override fun finished() {
    // ...
  }
})

// Sessions provide these endpoints for external consumers:

/*1.*/ aceJumpSession.markResults(sortedSetOf(/*...*/)) // Pass a set of offsets
/*2.*/ aceJumpSession.startRegexSearch("[aeiou]+", WHOLE_FILE) // Search for regex
/*3.*/ aceJumpSession.startRegexSearch(ALL_WORDS, VISIBLE_ON_SCREEN) // Search for Pattern

Custom boundaries for search (i.e. current line before caret etc.) can also be defined using the Boundaries interface.

Contributing

AceJump is supported by community members like you. Contributions are highly welcome!

If you would like to contribute, here are a few of the ways you can help improve AceJump:

To start IntelliJ IDEA CE with AceJump installed, run ./gradlew runIde -PluginDev [-x test].

To just run the tests, execute ./gradlew test - this is usually much faster than starting an IDE.

For documentation on plugin development, see the IntelliJ Platform SDK.

Release notes

Please see here for a detailed list of changes.

Comparison

AceJump is inspired by prior work, but adds several improvements, including:

  • Ergonomic tagging: Tries to minimize finger and eye travel on most common keyboards layouts and languages.
  • Full-text search: If a string is not visible on the screen, AceJump will scroll to the next occurrence.
  • Smart tag rendering: Tags will occupy nearby whitespace if available, rather than block adjacent text.
  • Target mode: Jump and select a full word in one rapid motion. (Ctrl+Alt+;)
  • Line Mode: Jump to the first, last, or first non-whitespace character of any line on-screen (Ctrl+Shift+;).
  • Word Mode: Jump to the first character of any visible word on-screen in two keystrokes or less.
  • Declaration Mode: Jump to the declaration of a token (if it is available) rather than the token itself.
  • Unicode support: Unicode search and selection, e.g. to search for "ζ‹ΌιŸ³", activate AceJump and type: py

The following plugins have a similar UI for navigating text and web browsing:

Source Code Download Application Actively Maintained Language
AceJump ⬇ IntelliJ Platform βœ”οΈ Kotlin
IdeaVim-EasyMotion ⬇ IntelliJ Platform βœ”οΈ Kotlin
KJump ⬇ IntelliJ Platform βœ”οΈ Kotlin
AceJump-Lite ⬇ IntelliJ Platform ❌ Java
emacsIDEAs ⬇ IntelliJ Platform ❌ Java
TraceJump ⬇ Desktop ❌ Kotlin
ace-jump-mode ⬇ emacs ❌ Emacs Lisp
avy ⬇ emacs βœ”οΈ Emacs Lisp
EasyMotion ⬇ Vim ❌ Vimscript
eyeliner.nvim ⬇ NeoVim βœ”οΈ Lua
Hop ⬇ NeoVim βœ”οΈ Lua
leap.nvim ⬇ NeoVim βœ”οΈ Fennel
lightspeed.nvim ⬇ NeoVim ❌ Fennel
Sublime EasyMotion ⬇ Sublime ❌ Python
AceJump ⬇ Sublime ❌ Python
Jumpy ⬇ Atom βœ”οΈ TypeScript
Jumpy2 ⬇ Visual Studio Code βœ”οΈ TypeScript
Find-Jump ⬇ Visual Studio Code ❌ TypeScript
MetaGo ⬇ Visual Studio Code βœ”οΈ TypeScript
VSCodeVim ⬇ Visual Studio Code βœ”οΈ TypeScript
CodeAceJumper ⬇ Visual Studio Code ❌ TypeScript
AceJump ⬇ Visual Studio ❌ C#
EasyMotion ⬇ Visual Studio ❌ C#
tmux-fingers ⬇ tmux βœ”οΈ Crystal
tmux-thumb ⬇ tmux βœ”οΈ Rust
tmux-jump ⬇ tmux βœ”οΈ Ruby
tmux-copycat ⬇ tmux ❌ Shell
cVim ⬇ Chrome ❌ JavaScript
SurfingKeys ⬇ Chrome/Firefox/Edge βœ”οΈ JavaScript
Vimium ⬇ Chrome/Firefox/Edge βœ”οΈ JavaScript
Vimium-C ⬇ Chrome/Firefox/Edge βœ”οΈ TypeScript
Vrome ⬇ Chrome ❌ CoffeeScript
ViChrome ⬇ Chrome ❌ CoffeeScript
VimFx ⬇ Firefox βœ”οΈ CoffeeScript
Vimperator ⬇ Firefox ❌ JavaScript
Pentadactyl ⬇ Firefox ❌ JavaScript
Vim Vixen ⬇ Firefox 57+ βœ”οΈ JavaScript
Tridactyl ⬇ Firefox 57+ βœ”οΈ TypeScript
Vimari ⬇ Safari ❌ JavaScript
Jump To Link ⬇ Obsidian βœ”οΈ TypeScript

Acknowledgements

The following individuals have significantly improved AceJump through their contributions and feedback:

AceJump is made possible by users just like you! If you enjoy using AceJump, please consider Contributing.

acejump's People

Contributors

alexpl292 avatar breandan avatar centaur avatar chylex avatar clojj avatar colossatr0n avatar davidlgoldberg avatar delphinaubin avatar ecbrodie avatar fapdash avatar ildarkhasanshin avatar ippschi avatar jmdesprez avatar johnlindquist avatar muescha avatar saikai avatar soonlive avatar streppel avatar tanalab2 avatar vlad avatar wuruofan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

acejump's Issues

Further selection after jump with shift-modifier

I love the feature of selecting text with AceJump by holding the shift-key down when jumping to the desired position.

The thing is that sometimes i want to select some more or less text as soon as the cursor jumped by keeping the shift-key pressed and change the selection with the cursor keys.

Basically this works but from the "wrong direction" which means that pressing the cursors changes the selection at the start-position of my jump and not the destination-position.

I think that it's easy to understand what i mean once you tried this out yourself because the current behavious just doesn't "feel right".

Please let me know if it's not clear what I mean...

Thanks & best regards


Edit: I just noticed that the reason for this is "simply" that the cursor doesn't change it's position when jumping with the shift-key pressed. Maybe this helps solving the problem a little bit.

Request: Support AltGr with Alt for immediate selection

Hy there,

I think it would be nice if you could support the AltGr key together with the Alt key to immediately select the word at the jump target.

If e.g. I jump to a place with the C key it'd be more convenient to do this by pressing AltGr + C than Alt + C because I could use both hands instead of one...

Thanks & best regards

Code navigation is not preserved

When ace jumping multiple times, you can not revisit the places with Code navigation.
( ctrl - alt - left, ctrl - alt -right )

It would be great if this where possible.

Latest stable version of PHPStorm seems to break plugin

The ace jump plugin no longer receives focus after hitting ctrl+; (neither does the other similar plugin quick jump). The following errors occurred while trying to select the pop up box with the mouse, and then type into it.

Error during dispatching of sun.awt.PeerEvent[INVOCATION_DEFAULT,runnable=sun.awt.SunToolkit$1@1c020b2c,notifier=null,catchExceptions=false,when=1363664211521] on sun.awt.X11.XToolkit@3834ff91
java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1086)
at java.awt.Container.add(Container.java:410)
at com.johnlindquist.acejump.AceJumpAction.addAceCanvas(AceJumpAction.java:167)
at com.johnlindquist.acejump.AceJumpAction$1.focusGained(AceJumpAction.java:109)
at java.awt.AWTEventMulticaster.focusGained(AWTEventMulticaster.java:220)
at java.awt.Component.processFocusEvent(Component.java:6394)
at java.awt.Component.processEvent(Component.java:6261)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:938)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:570)
at java.awt.Component.dispatchEventImpl(Component.java:4731)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at sun.awt.SunToolkit$1.run(SunToolkit.java:502)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
at com.intellij.ide.IdeEventQueue.d(IdeEventQueue.java:685)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:510)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:333)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
--------------------------ERROR 2 FOLLOWS---------------------------------
Error during dispatching of java.awt.FocusEvent[FOCUS_LOST,temporary,opposite=EditorComponent file=file:///home/jsimpson/www/Alegion/build_new.xml,cause=ACTIVATION] on com.johnlindquist.acejump.ui.SearchBox[,1,1,14x15,layout=javax.swing.plaf.basic.BasicTextUI$UpdateHandler,alignmentX=0.0,alignmentY=0.0,border=com.intellij.ide.ui.laf.darcula.ui.DarculaTextBorder@7e7f1db8,flags=296,maximumSize=,minimumSize=,preferredSize=,caretColor=javax.swing.plaf.ColorUIResource[r=187,g=187,b=187],disabledTextColor=javax.swing.plaf.ColorUIResource[r=153,g=153,b=153],editable=true,margin=javax.swing.plaf.InsetsUIResource[top=0,left=0,bottom=0,right=0],selectedTextColor=javax.swing.plaf.ColorUIResource[r=187,g=187,b=187],selectionColor=javax.swing.plaf.ColorUIResource[r=47,g=101,b=202],columns=0,columnWidth=0,command=,horizontalAlignment=LEADING]
java.lang.NullPointerException
at java.awt.Container.remove(Container.java:1254)
at com.johnlindquist.acejump.AceJumpAction.exit(AceJumpAction.java:210)
at com.johnlindquist.acejump.AceJumpAction$1.focusLost(AceJumpAction.java:114)
at java.awt.AWTEventMulticaster.focusLost(AWTEventMulticaster.java:230)
at java.awt.Component.processFocusEvent(Component.java:6397)
at java.awt.Component.processEvent(Component.java:6261)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:947)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:621)
at java.awt.Component.dispatchEventImpl(Component.java:4731)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
at com.intellij.ide.IdeEventQueue.d(IdeEventQueue.java:685)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:510)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:333)
at java.awt.SentEvent.dispatch(SentEvent.java:70)
at java.awt.DefaultKeyboardFocusManager$DefaultKeyboardFocusManagerSentEvent.dispatch(DefaultKeyboardFocusManager.java:216)
at java.awt.DefaultKeyboardFocusManager.sendMessage(DefaultKeyboardFocusManager.java:243)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:687)
at java.awt.Component.dispatchEventImpl(Component.java:4731)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
at com.intellij.ide.IdeEventQueue.d(IdeEventQueue.java:685)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:510)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:333)
at java.awt.SentEvent.dispatch(SentEvent.java:70)
at java.awt.DefaultKeyboardFocusManager$DefaultKeyboardFocusManagerSentEvent.dispatch(DefaultKeyboardFocusManager.java:216)
at java.awt.DefaultKeyboardFocusManager.sendMessage(DefaultKeyboardFocusManager.java:243)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:308)
at java.awt.Component.dispatchEventImpl(Component.java:4731)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at sun.awt.X11.XWindow$1.run(XWindow.java:402)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
at com.intellij.ide.IdeEventQueue.d(IdeEventQueue.java:685)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:510)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:333)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

Remove Y and Z letters

I work on multilanguage keyboard QWERTY/QWERTZ, so I am never really sure which key will type what :)

Would it be possible to remove them from results?

Ace Jump Plugin do not work in Webstorm5 on Ubuntu12.04

I am able to install the "Ace Jump" plugin, but shortcut "ctrl+;"do not work.

On my keyboard is a key with both ";" and "," on the same key.

What happens instead?
It inserts only the typed chars.

Later i tried on windows7 but it do not work.

J Character no longer searchable

I recall you thinking about the 'j' character when doing the multi-char selection, but now when I hit Ctrl+; then j, nothing happens and I cannot do anything until I hit escape.

Plugin not working

I can't figure out what is causing this but when I press ctrl + ; the square box appears, but as I type any letter so that the options are displayed, it will continue to type in the javascript file instead of displaying any options. I cannot find out what is causing this problem. If I type "a" so I can jump to any location that begins with an "a", instead I get the "a" underneath the small black box that appears when the plugin is triggered. Is anyone else experiencing this? I'm using Webstorm 8.0.1.

Exception with AceJump and WebStorm 5.0 RC (121.150) on Mac

I hit Cmd+; and get this exception. Nothing seems to work.

Error during dispatching of java.awt.event.KeyEvent[KEY_PRESSED,keyCode=59,keyText=;,keyChar=';',modifiers=⌘,extModifiers=⌘,keyLocation=KEY_LOCATION_STANDARD,rawCode=0,primaryLevelUnicode=0,scancode=0] on frame2
java.lang.NullPointerException
at com.johnlindquist.acejump.AceJumpAction.actionPerformed(AceJumpAction.java:76)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$3.performAction(IdeKeyEventDispatcher.java:560)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:608)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.d(IdeKeyEventDispatcher.java:463)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:208)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:524)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:421)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:379)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Ubuntu Focus issue

Sorry to give you yet another focus issue on Ubuntu.

Video here:
https://dl.dropboxusercontent.com/u/16200445/acejump-focus.ogv

You can see that the focus immediately got back to thee editor as soon as the input box shows up.

Env:
Ubuntu 13.10, 64Bit
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
IntelliJ 13.1 EAP (idea-IU-134.1007)

Let me know if I can provide any more information

Just noted - AceJump seems to be fine in 13.0, it just doesn't want to work in 13.1. Quick Jump has exactly the same issue FYI.

Use existing digraphs in text where possible

It'd be nicer if could use existing digraphs in the words where possible, falling back to random digraphs only when needed. It breaks up the flow.
hotspots2

That gif's from a pretty old implementation of a sublime text 1 plugin I wrote, but you should be able to understand what I mean.

In my latest implementation [ñonç]ontiguous d[ígrÑ]phs are used (using non ascii chars here to indicate what is typically underlined, and brackets for the region outlining, as per gif above)

Due to sublime not having an overlay API, I am also using multiple colors for indicating digraph start points. Dunno if that'd be worth it considering intelliJ offers labels.

Dig your angular tutes btw. Really good complement to the docs :)

PhpStom 6 EAP on Ubuntu 12.10

"The character popup" doesn't have focus and even when I manually select it nothing happens after a keypress.

I tried changing default keymap with no luck.

Request: replace 'Enter' action with repeated key press

I'm loving this plugin but I thought this would make it a little more interesting.

Instead of pressing Enter to push the available options outward, pressing the same key again should do the same thing. Obviously that key should be excluded as one of the selection options in that case.

Let me know what you think.

Feature request: let enter more than 1 letter

Typing 1 letter produces really a lot of results. On a big screen I usually have to press Enter twice or three times to highlight the usage I need.
It would be great if the search box could accept several letters: even 2 letters would dramatically decrease the number of results.

Problems with Intellij 14

Hi

There seams to be an issue with the new Intellij 14 release. When pressing ctrl+; , the input field is shown but without a cursor (not even when i click into the input field) and the typed character is also not shown. Nevertheless it works except of multi character input, which may be broken or i just cant figure out how to use it (cant find any shortcut so im guessing its possible per default)

Greetings and thanks for the great plugin

"Navigate Β» Back" does not respect ace jumps

Steps to reproduce:

  1. Do an ace jump.
  2. Do another one.
  3. Hit Navigate Β» Back.

Expected result:
Navigates to the location of the first jump.

Actual result:
Navigates to an earlier location.

Fix default shortcut on Mac

Currently default shortcut on Mac is Cmd+;
But it is already mapped to "Project Structure".
I propose to use the same shortcut as for Windows: Crtl+;

acejump not working On IDEA 13 or 14 version

I have install the acejump plugin and ideavim plugin On IDEA 14 .I can see the box when I type the shortcut key call acejump,but when I type one character ,no tips show,either I disable the ideavim plugin or install a IDEA 13 version.
I am using Debian 8 .
Anyone can help me ,please.
: )

Using AceJump while text is selected in Editor

Following procedure:

  • Select some text in the editor
  • Use AceJump to jump somewhere else
  • The cursor jumps to the specified position, the previously selected text stays selected (so far everything is fine!)
  • If i start to type now or try to move the cursor with the arrow-keys the cursor jumps back to the place where the selected text is. IMHO the selected text should now be deselected and the cursor should stay at it's new position.

Usually this wouldn't be a problem but I work a lot like the following:

  • Select some text, copy it with Ctrl+C
  • Use AceJump to go to some position where i would like to insert the text
  • Press Ctrl+V to insert it. And exactly this is not working because of the above mentioned behaviour (the cursor jumps back to the selection and won't insert the text at the new position)

I just started to use AceJump and really love it! Therefore I'd really appreciate if you could fix this because it'd makes some workflows so much easier!

My config: Win7, 64 Bit, WebStorm 5.0.4

Please let me know if you need any more information.

Thanks, mike

NPE in Idea 12 EAP 122.327

Error during dispatching of java.awt.event.KeyEvent[KEY_PRESSED,keyCode=59,keyText=Semicolon,keyChar=';',modifiers=Ctrl,extModifiers=Ctrl,keyLocation=KEY_LOCATION_STANDARD,rawCode=186,primaryLevelUnicode=59,scancode=39,extendedKeyCode=0x3b] on win0
java.lang.NullPointerException
at com.johnlindquist.acejump.AceJumpAction.actionPerformed(AceJumpAction.java:63)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$3.performAction(IdeKeyEventDispatcher.java:560)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:608)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.d(IdeKeyEventDispatcher.java:463)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:208)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:478)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:375)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:333)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

java.lang.NullPointerException
at com.johnlindquist.acejump.AceJumpAction.actionPerformed(AceJumpAction.java:63)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$3.performAction(IdeKeyEventDispatcher.java:560)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:608)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.d(IdeKeyEventDispatcher.java:463)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:208)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:478)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:375)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:333)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

Any possibility to constrain search to start of word or camelCase?

Love the plugin, but one thing that I would love is a mode or config setting to just search for characters right after non-alphanumeric characters (e.g. start of words). Sometimes the tag soup that results from, say, jumping to "e" is a bit tough to dig through.

Immediate word selection with Alt + key is not working anymore (PhpStorm 7.0)

As stated in the title, the immediate word selection by pressing Alt + key is not working anymore.

Currently I'm working on the newly released PhpStorm 7.0 & AceJump 2.0.5 but I already noticed this some time ago with PhpStorm 6.0.x.

I'd really appreciate if you could fix this and maybe have a look at this other request of mine too (#11)!

Thanks & best regards

No focus in small window =(

Hi there !
I regret to say that small window not active when pressed "ctrll + ;" I have to use mouse for activate it =(
All like in this issue -> #41
Android Studio 1.5.1, Ubuntu 14.04

NPI on invoking AceJump in latest RubyMine

Environment: RubyMine 4.5.3

Here's exception trace:

Error during dispatching of java.awt.event.KeyEvent[KEY_PRESSED,keyCode=59,keyText=Semicolon,keyChar=';',modifiers=Ctrl,extModifiers=Ctrl,keyLocation=KEY_LOCATION_STANDARD,rawCode=47,primaryLevelUnicode=59,scancode=0,extendedKeyCode=0x3b] on frame0
java.lang.NullPointerException
    at com.johnlindquist.acejump.AceJumpAction.actionPerformed(AceJumpAction.java:76)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$3.performAction(IdeKeyEventDispatcher.java:545)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:593)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.d(IdeKeyEventDispatcher.java:461)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:206)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:525)
    at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:421)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:379)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

AceJump 2.x not working in Webstorm 6.0.1 on Windows XP

For some reason AceJump 1.x works fine, but 2.0.4 appears in the plugin list, but does not show up in the keymap search and does not load.

Running XP
Java 1.6.0_31
Webstorm: 127.118 (also under IDEA 11, same problem)

I tried it with and without kotlin-runtime.jar and guava.

AceJump & IDEA 13.1

After update IDEA to 13.1 version I have some problem with AceJump plugin. The small window not active when pressed Crtl+;. Must use mouse for active it.

screenshot from 2014-03-19 16 35 02

Look like a bug :((

You are very uncool...

Dude... after seeing you pull that vim style navigation in IntelliJ on episode 5 of Egghead.io Angular.js, I searched for hours trying to find the keybindings for those shortcuts....

Guess I found out...

I also picked up that alt+enter quick fix trick from ya too ...

Thanks... Great work...

;)

AJ not showing any targets when code is folded.

I noticed that AceJump acted weird not showing any targets and then I figured out that it only occurs when there are folded sections of code in the editor window. See attached screenshot.
aceBug

Make tags user-configurable

After watching the nice video about 2.0, I notice that AceJump display on my system is not as clear as on the video:

image

Is there a way to define it to make it clearer?

java.lang.NoSuchMethodError

I saw the video and I think this will be awesome! Some feedback. I ran this on my mac on the latest build of IdeaJ 11 and I had to remove the Project Settings shortcut, which is also CMD + ; because it was overriding the CMD + ; shortcut that was AceJump was installed with.

Still no luck though, as I get this error when I trigger it. Thanks!

Error during dispatching of java.awt.event.KeyEvent[KEY_PRESSED,keyCode=59,keyText=;,keyChar=';',modifiers=⌘,extModifiers=⌘,keyLocation=KEY_LOCATION_STANDARD,rawCode=0,primaryLevelUnicode=0,scancode=0] on frame1: com.intellij.openapi.editor.impl.EditorImpl.getFoldingModel()Lcom/intellij/openapi/editor/impl/FoldingModelImpl;
java.lang.NoSuchMethodError: com.intellij.openapi.editor.impl.EditorImpl.getFoldingModel()Lcom/intellij/openapi/editor/impl/FoldingModelImpl;
at com.johnlindquist.acejump.AceJumpAction.actionPerformed(AceJumpAction.java:77)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$3.performAction(IdeKeyEventDispatcher.java:542)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:590)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.d(IdeKeyEventDispatcher.java:458)
at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:206)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:524)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:420)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:378)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Start in line mode

@johnlindquist

It would be awesome to be able to specifically start in a mode via a keystroke. I am coming from evil-emacs and it's "ace-jump" implementation allows you to start in the desired mode via a keybinding.

I am very used to using the jump to line feature. I would like to be able to start AceJump in that mode (or the beginning of line mode) via a keymap. Is this possible now?

Alt + key does not work on OS X and PhpStorm

Not sure if this is a Mac issue or a PhpStorm issue (or both) but the Alt + whatever key binding does not work for me. I am running OS X 10.8.2 and PhpStorm 124.509 (the current EAP).

The normal key binding (pressing any key alone) and the shift + whatever key binding works fine but pressing alt (I also tried all other modifiers just in case) does nothing.

Any kind of documentation

Hi, can you please add any kind of documentation for this project? It is absolutely awesome but I think you should add some kind of reference to the README.

Not working properly on high resolutions

If i use PHPStorm maximized or in fullscreen with 3 vertical columns on 2560x1440 resolution, the AceJump doesn't work on column no. 3 unless i make it at least 1000px wide. On smaller resolutions everything is ok.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.