Code Monkey home page Code Monkey logo

off-plugin's Introduction


Looking for maintainers, who want to take over the development!


Open File Fast

Introduction

Open File Fast is a plugin for Netbeans IDE which allows you to quickly find and open files in your projects.

It is inspired by Textmate's quick open file dialog. However, it has a lot more features. Basically it works like this: you type only several characters of filename you are searching for and you get list of all files matching your pattern. For example, when you are looking for FooBar.java you can type fbj and you will find it. It really helps navigating through the project (especially bigger ones) as you don't need to use a mouse nor locate a filename visually in project tree but just use filename shortcuts.

Download

You can download the plugins from the releases page.
The NetBeans plugin can be downloaded from the NetBeans Plugin Portal ≤8.0, ≥8.1

Key features of Open File Fast

  • Quick finding and opening any file from selected project
  • Two matching modes:
    • Smart (like in Textmate, matching filenames must contain all typed characters, they can be separated by other characters)
    • Exact (like Netbeans' Go-To-File, matching filenames must contain exact phrase)
  • Matching from start of filename or anywhere in filename
  • Support for * wildcard in exact mode
  • Changing minimum entered pattern length needed for searching (default: 3)
  • Changing delay (time from last keystroke) after which searching starts (default: 300ms)
  • Optional cleaning of search input field when O-F-F window opens
  • Hiding files you don't work on (matching specified regular expresions) from results
  • Moving less important files (matching specified regular expresions) to the bottom of results list
  • Results sorted by:
    • File popularity (files opened frequently at the top of list)
    • Match accuracy (distance between characters from search phrase in matched filenames)
  • Opening multiple files at once (selected with ctrl/shift + mouse)
  • Switching between search history entries by CTRL-Up/CTRL-Down

Usage

Open File Fast plugin installs itself in Netbeans' Navigate menu as Open File Fast. I recommend creating a keyboard shortcut for it in Tools/Options/Keymap/Project.

When invoked, it opens a search dialog. Type some characters from filename you want to find. Some as you may skip any characters you want. Use * as a placeholder for any text. You can narrow down the search to files in specified directory by typing a directory prefix followed by slash and then a filename pattern.

For example, type:

  • user when looking for user.rb or UberServer.java
  • ush when looking for users_helper.rb
  • *.js when you want to list all javascript files (* is not needed here if "Matching from start of filename" is turned off in preferences)
  • a/m/ when you want to list all files in app/models directory
  • a/v/s when you are looking for show.html in app/views directory

Configuration

Open File Fast can be set up to your own preferences and to match your own workflow. You can configure it under Open File Fast tab in Netbeans' Miscellaneous options.

Updates

1.3.1.0

  • [Bugfix]: Fixed issue in PHP projects, where the source dir was not within the project dir (use source roots for filtering instead)

1.3.0.5

  • [Feature]: Allow manual indexing (introduced reindex button)
  • [Feature]: Switch between search history using CTRL-Up/CTRL-Down
  • [Feature]: Searching for directories should also start at source-/resource roots of the project
  • [Feature]: Sort project dropdown
  • [Feature]: Icons for project drop down
  • [Feature]: Add mnemonics to search dialog (improved keyboard support)
  • [Feature]: Add mnemonics to options dialog (improved keyboard support)
  • [Task]: Rename action to "Go to File (Fa&st)..." to match the other GoTo actions
  • [Task]: Add link to github in options/link to plugin portal
  • [Bugfix]: Fixed: Use selected project from Node/File, when opening search dialog
  • [Bugfix]: Fixed: Project drop down list, shouldn't be closed after selecting an other project (improved keyboard support)
  • [Bugfix]: Fixed: Action is enabled, even if there are no open projects
  • [Bugfix]: Fixed NPE when opening dialog
  • [Bugfix]: Fixed exceptions when switching projects too fast
  • [Bugfix]: Fixed NPE when uninstalling plugin
  • [Bugfix]: Don't disable controls while indexing
  • [Bugfix]: Fixed: Reopening the dialog with the same project selected triggers reindexing
  • [Bugfix]: Fixed: Selection border color too light for dark themes
  • [Bugfix]: Fixed: Dialog opens on the wrong monitor (dual monitor setup)

Building from source

  • You will need a NetBeans installation that includes the NetBeans Platform SDK.
    • This is included by default in the standard Java SE and Java EE variations.
    • If you're using the C/C++ or HTML5 & PHP bundles, you will probably need to install the NetBeans Plugin Development plugin.
  • Clone this repo.
  • In NetBeans, go to FileOpen Project…, navigate to the netbeans subdir in the repo and open it.
    • The dir should have a special icon. If it doesn't, your installation probably doesn't have the NetBeans Plugin Development plugin.
  • Right click on the project and select Create NBM.
  • If all goes well, this should create a net-sickill-off.nbm file in the netbeans/build dir of the repo.

Provide defects, request for enhancements and feedback at https://github.com/sickill/off-plugin/issues

Compatible to >=NB 8.0.2

Legal disclaimer: Code is licensed under MIT

off-plugin's People

Contributors

claytonrcarter avatar ku1ik avatar markiewb avatar mjomble avatar sreinst1 avatar warhammerkid 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

off-plugin's Issues

Dialog opens on the wrong monitor (dual monitor setup)

OFF plugin opens on the, I think primary monitor, but my netbeans is on the secondary monitor. It should opens in the middle of the screen, what it did AND inside the netbeans window, as the other go to ... dialogs.

Too slow first indexing

When I first open search window after booting NetBeans, it make index too slow first time.
It has pre-index mode like automated index after booting NetBeans?

Thanks

Update dependencies

WARNING [org.netbeans.core.modules]: had to upgrade dependencies for module net.sickill.off: added = [module org.netbeans.modules.projectuiapi.base/1 > 1.78.0, module org.netbeans.api.templates > 1.0, module org.openide.util.ui > 9.3, module org.openide.filesystems.nb, module org.openide.filesystems.compat8, module org.netbeans.modules.editor.document > 1.0] removed = []; details: [#243100: Separate desktop-independent utilities, Separate projectuiapi into desktop and NetBeans independent and dependent parts, Separation of Parsing and Indexing APIs, Separation of desktop and cleanup, Templates API has been separated into its own module.]

Project drop down list, shouldn't be closed after selecting an other project.

Atm I open the dropDownList to select an other project. Usually I use my keyboard to navigate through. For this I use arrow down or up and than the dropDownList closes after selecting an other project and the indexing part starts. I would like to select each project what I would like and the dropDown should cloes after pressing space or an other key. The problem is, when the first project is selected and I want to navigate to the 4th project, I have to reopen the dropDownList and this is not really intuitive for me.

Unknown action: offwindow.show

I'm using JEdit 4.3pre17 with Java 1.6.0_13 on Ubuntu Jaunty. I have project viewer 2.9.1 installed. I get the following error when I try and open the dialog:

(this shows up in the console)
5:13:17 PM [AWT-EventQueue-0] [warning] EditAction$Wrapper: Unknown action: offwindow.show

(this shows up in an error dialog)
java.lang.NoClassDefFoundError: net/sickill/off/jedit/JEditProjectViewerProject
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.privateGetPublicMethods(Class.java:2547)
at java.lang.Class.getMethods(Class.java:1410)
at org.gjt.sp.jedit.bsh.Reflect.gatherMethodsRecursive(Reflect.java:543)
at org.gjt.sp.jedit.bsh.Reflect.getCandidateMethods(Reflect.java:505)
at org.gjt.sp.jedit.bsh.Reflect.findOverloadedMethod(Reflect.java:478)
at org.gjt.sp.jedit.bsh.Reflect.resolveJavaMethod(Reflect.java:439)
at org.gjt.sp.jedit.bsh.Reflect.resolveExpectedJavaMethod(Reflect.java:381)
at org.gjt.sp.jedit.bsh.Reflect.invokeStaticMethod(Reflect.java:96)
at org.gjt.sp.jedit.bsh.Name.invokeMethod(Name.java:871)
at org.gjt.sp.jedit.bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at org.gjt.sp.jedit.bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at org.gjt.sp.jedit.bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at org.gjt.sp.jedit.bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at org.gjt.sp.jedit.bsh.BSHBlock.eval(BSHBlock.java:80)
at org.gjt.sp.jedit.bsh.BshMethod.invokeImpl(BshMethod.java:362)
at org.gjt.sp.jedit.bsh.BshMethod.invoke(BshMethod.java:258)
at org.gjt.sp.jedit.bsh.BshMethod.invoke(BshMethod.java:186)
at org.gjt.sp.jedit.BeanShellFacade.runCachedBlock(BeanShellFacade.java:225)
at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:423)
at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:73)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:352)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:317)
at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:197)
at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:405)
at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:151)
at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4533)
at java.awt.Component.processEvent(Component.java:5993)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4583)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:704)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:969)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:841)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:668)
at java.awt.Component.dispatchEventImpl(Component.java:4455)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.ClassNotFoundException: net.sickill.off.jedit.JEditProjectViewerProject
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at org.gjt.sp.jedit.JARClassLoader.loadFromParent(JARClassLoader.java:507)
at org.gjt.sp.jedit.JARClassLoader.loadClass(JARClassLoader.java:87)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 49 more

Exceptions when switching projects too fast

java.lang.IndexOutOfBoundsException: Index: 1, Size: 0
    at java.util.ArrayList.rangeCheck(ArrayList.java:653)
    at java.util.ArrayList.get(ArrayList.java:429)
    at net.sickill.off.common.OffListModel.getElementAt(OffListModel.java:192)
    at net.sickill.off.common.OffListModel.getElementAt(OffListModel.java:16)
    at javax.swing.plaf.basic.BasicListUI.paintCell(BasicListUI.java:204)
    at javax.swing.plaf.basic.BasicListUI.paintImpl(BasicListUI.java:317)
    at javax.swing.plaf.basic.BasicListUI.paint(BasicListUI.java:240)
java.lang.NullPointerException
    at net.sickill.off.common.OffColumnCellRenderer.getListCellRendererComponent(OffColumnCellRenderer.java:43)
    at net.sickill.off.common.OffColumnCellRenderer.getListCellRendererComponent(OffColumnCellRenderer.java:18)
    at javax.swing.plaf.basic.BasicListUI.paintCell(BasicListUI.java:209)
    at javax.swing.plaf.basic.BasicListUI.paintImpl(BasicListUI.java:317)
    at javax.swing.plaf.basic.BasicListUI.paint(BasicListUI.java:240)
    at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)

NPE when opening dialog

java.lang.NullPointerException
    at net.sickill.off.netbeans.NetbeansIDE$1.actionPerformed(NetbeansIDE.java:61)
    at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1258)
    at javax.swing.JComboBox.contentsChanged(JComboBox.java:1332)
    at javax.swing.JComboBox.intervalRemoved(JComboBox.java:1352)
    at javax.swing.AbstractListModel.fireIntervalRemoved(AbstractListModel.java:179)
    at javax.swing.DefaultComboBoxModel.removeAllElements(DefaultComboBoxModel.java:174)
    at javax.swing.JComboBox.removeAllItems(JComboBox.java:771)
    at net.sickill.off.netbeans.NetbeansIDE.onFocus(NetbeansIDE.java:43)
    at net.sickill.off.common.OffPanel.focusOnDefaultComponent(OffPanel.java:145)
    at net.sickill.off.netbeans.NetbeansDialog.showDialog(NetbeansDialog.java:41)
    at net.sickill.off.netbeans.OpenOffAction.actionPerformed(OpenOffAction.java:27)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)

Does not index anything in 8.1

Version 1.2 worked perfectly with NB 8.0.2. Since updating to 1.3.0.5 and NB 8.1, I have been unable to match any file, regardless of what pattern I type.

Regardless of the size of the project, clicking the Reindex button produces the "indexing project files" spinner for only the briefest fraction of a second. It appears as if it is not actually doing anything.

This is in the UI log at startup:

WARNING [org.netbeans.core.modules]: had to upgrade dependencies for module net.sickill.off: added = [module org.netbeans.modules.projectuiapi.base/1 > 1.78.0, module org.netbeans.api.templates > 1.0, module org.openide.util.ui > 9.3, module org.openide.filesystems.nb, module org.openide.filesystems.compat8, module org.netbeans.modules.editor.document > 1.0] removed = []; details: [#243100: Separate desktop-independent utilities, Separate projectuiapi into desktop and NetBeans independent and dependent parts, Separation of Parsing and Indexing APIs, Separation of desktop and cleanup, Templates API has been separated into its own module.]

and when I switch project in the OFF window I get this:

INFO [net.sickill.off.netbeans.NetbeansProject]: [OFF] ImportWorker started...
INFO [net.sickill.off.netbeans.NetbeansProject]: [OFF] SourceGroups: [/home/johny/repos/common, /home/johny/NetBeansProjects/common]
INFO [net.sickill.off.common.OffListModel]: [OFF] refiltering model
INFO [net.sickill.off.netbeans.NetbeansProject]: [OFF] ImportWorker finished.

but still no files match.

The settings for 8.1 were automatically imported from 8.0.2, if that makes a difference (but I have uninstalled and reinstalled the plugin multiple times, including from a manual download of the .nbm file — I assume this would clear the prefs and any cached data.)

Do you have any idea what the problem is? I've had to revert to NB 8.0.2 just to get some work done…

On multiple select It's hard to see which file I can select

Sometimes, when I want to select multiple files, I press tab and then hold ctrl to navigate to the file which I would like to select. When I holt ctrl and navigate with the arrow I can't see the little hint where my cursor actually is as in windows or maybe in linux I don't know. A little border around the list item would be very nice, I thought it's a common behaviour.

Regards

Chris

Reopening the dialog with the same project selected triggers reindexing

I know that indexing is needed but I have a project with a lot of files I open OFF, the index is working, after 5 sec (much to long I think) I can use OFF. I close it and I reopen OFF and the index runs again. It runs always after closing and reopening but I don't want to wait 5 sec again and again after reopening the dialog. There must be a better way to implement such things, maybe indexing while project selecting? and reindexing, on external changes and reindexing after adding new files etc.

Perform smart matching on the whole path

In a Rails project for example you have a folder with views for every model, like this:
/app/views/wikis/
/app/views/uploads/
/app/views/news/

Now, in every such folder you have templates named "show.rhtml", "new.rhtml", "index.rhtml" etc.

So if you want to open the file .../wikis/show.rhtml you have to type "show.rhtml" but this will bring a lot of unwanted matches.

In this case it would be cool, if you could type "wiki show", which would then match "app/views/wikis/show.rhtml".

So the "haystacks" you perform the search on, should not only be the filenames themselves but also their path (down to the project's root folder).

Maybe this should be an option for the indexer "Collect files including their relative path in the project".

Thanks for this super cool plugin! Keep it up!
Chris

Can not install for Netbeans 6.9 RC2

display messages:

The plugin Editor Library is requested in version >= 1.29.1.8.2 (release version 1) but only 2.10.1.10.2 (of release version different from 1) was found.

Please highlight the matching characters

I know this is done with font bold, but on windows I think its dependend from the font and the color and so on, it's hard to see that the word or the character is highlighted. IntelliJ highlights the character with a rectangle. So maybe it's a background color of the textbox or whatever. Only for the character that matches. That would be very nice.

Regards

Chris

Creating Keyboard shortcut is not clear or not possible in NB 8.2

Following the documentation description of creating a Keyboard shortcut for the plugin, could not able to allow making new shortcut for the Open File Fast, the following is a screen shot for Options->Keymap->Project and there is no any entry for Open File Fast:

untitled

Crash in JEdit 4.3

Looks like ProjectViewer or some other dependency's API changed again?

java.lang.NoClassDefFoundError: net/sickill/off/jedit/JEditProjectViewerProject
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.privateGetPublicMethods(Class.java:2547)
at java.lang.Class.getMethods(Class.java:1410)
at org.gjt.sp.jedit.bsh.Reflect.gatherMethodsRecursive(Reflect.java:543)
at org.gjt.sp.jedit.bsh.Reflect.getCandidateMethods(Reflect.java:505)
at org.gjt.sp.jedit.bsh.Reflect.findOverloadedMethod(Reflect.java:478)
at org.gjt.sp.jedit.bsh.Reflect.resolveJavaMethod(Reflect.java:439)
at org.gjt.sp.jedit.bsh.Reflect.resolveExpectedJavaMethod(Reflect.java:381)
at org.gjt.sp.jedit.bsh.Reflect.invokeStaticMethod(Reflect.java:96)
at org.gjt.sp.jedit.bsh.Name.invokeMethod(Name.java:871)
at org.gjt.sp.jedit.bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at org.gjt.sp.jedit.bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at org.gjt.sp.jedit.bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at org.gjt.sp.jedit.bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at org.gjt.sp.jedit.bsh.BSHBlock.eval(BSHBlock.java:80)
at org.gjt.sp.jedit.bsh.BshMethod.invokeImpl(BshMethod.java:362)
at org.gjt.sp.jedit.bsh.BshMethod.invoke(BshMethod.java:258)
at org.gjt.sp.jedit.bsh.BshMethod.invoke(BshMethod.java:186)
at org.gjt.sp.jedit.BeanShellFacade.runCachedBlock(BeanShellFacade.java:225)
at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:423)
at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:73)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:352)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:317)
at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:197)
at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:405)
at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:151)
at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4633)
at java.awt.Component.processEvent(Component.java:6040)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:704)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:969)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:841)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:668)
at java.awt.Component.dispatchEventImpl(Component.java:4502)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.ClassNotFoundException: net.sickill.off.jedit.JEditProjectViewerProject
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at org.gjt.sp.jedit.JARClassLoader.loadFromParent(JARClassLoader.java:539)
at org.gjt.sp.jedit.JARClassLoader.loadClass(JARClassLoader.java:87)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 49 more

JEdit and trailing slash in project path

"FYI, if you are using jEdit and having an issue with the "Indexing, please wait" (it doesn't go away) it's due to a bug in the file-matching code. Check that your project path doesn't end with a slash, i.e. right click project in project viewer -> Properties, "Root directory" should NOT end with a slash. Worked for me."

Black text in selection

First of all: thank again for the great plugin!

When you search for something and you select a line, the filename is white, but the directory-text is black, so it is unreadable on the blue background. Maybe you can make also the textcolor of the selection white.

Thanks in advance.
Raymond

NetBeans 7

"I would love to see this working on NetBeans 7. Any news on that front ?"

detecting and automatically indexing new files

I am using the plugin in a Ruby on Rails project

I often generate new controllers and models, which create new files

When I return to NetBeans and refresh my project files, NetBeans sees the newly created files -- but off-plugin does not have them in the index, meaning the new files can't be found

off-plugin needs to reindex at the point when NetBeans scans for project changes

I currently have to reopen netbeans every time so that off-plugin can rebuild its index

Don't disable controls while indexing

When I accidentally select a project, OFF blocks almost everything in this plugin, I can't change the project in the JComboBox. I expect that I can cancel the indexing while changing the project, so that the indexing will run after switch the project inside JComboBox.

Searching for directories should also start at source-/resource roots of the project

See https://github.com/markiewb/nb-resource-hyperlink-at-cursor/blob/master/src/main/java/de/markiewb/netbeans/plugins/resourcehyperlink/ResourceHyperlinkProvider.java#L508 to get the directory of source roots

Usecase:
The given file[projectdir]/src/main/java/my/app/Bar.java (src/main/java is a sourcegroup/entry in the project tree)

ACTUAL

  • Search for s/m/j/m/a/Bar.java works
  • Search for m/a/Bar.java doesn't work

EXPECTED

  • Search for s/m/j/m/a/Bar.java works
  • Search for m/a/Bar.java works too
// from org.netbeans.modules.web.api.webmodule
public static final String WebProjectConstants_TYPE_DOC_ROOT="doc_root"; //NOI18N
public static final String WebProjectConstants_TYPE_WEB_INF="web_inf"; //NOI18N
// from org.netbeans.modules.web.clientproject.api
public static final String WebClientProjectConstants_SOURCES_TYPE_HTML5 = "HTML5-Sources"; // NOI18N
public static final String WebClientProjectConstants_SOURCES_TYPE_HTML5_SITE_ROOT = "HTML5-SiteRoot"; // NOI18N
public static final String WebClientProjectConstants_SOURCES_TYPE_HTML5_TEST = "HTML5-Tests"; // NOI18N
public static final String WebClientProjectConstants_SOURCES_TYPE_HTML5_TEST_SELENIUM = "HTML5-Tests-Selenium"; // NOI18N 
// from org.netbeans.api.project
public static final String Sources_TYPE_GENERIC = "generic"; // NOI18N 
// from org.netbeans.modules.maven.groovy
public static final String GroovySourcesImpl_TYPE_GROOVY = "groovy";
// from org.netbeans.modules.maven.j2ee 
public static final String J2eeMavenSourcesImpl_TYPE_DOC_ROOT = "doc_root"; // NOI18N
public static final String J2eeMavenSourcesImpl_TYPE_WEB_INF  = "web_inf";  // NOI18N
// from org.netbeans.modules.php.api
public static final String PhpConstants_SOURCES_TYPE_PHP = "PHPSOURCE"; // NOI18N
// from org.netbeans.modules.maven.classpath
public static final String MavenSourcesImpl_TYPE_OTHER = "Resources"; //NOI18N
public static final String MavenSourcesImpl_TYPE_TEST_OTHER = "TestResources"; //NOI18N
public static final String MavenSourcesImpl_TYPE_GEN_SOURCES = "GeneratedSources"; //NOI18N
// from javascript.refactoring\src\org\netbeans\modules\refactoring\javascript\ui\tree\FolderTreeElement.java
// from refactoring.java\src\org\netbeans\modules\refactoring\java\ui\tree\FolderTreeElement.java
public static final String FolderTreeElement_XML = "XML"; //NOI18N
// from org.netbeans.api.java.project
public static final String JavaProjectConstants_SOURCES_TYPE_JAVA = "java"; // NOI18N
public static final String JavaProjectConstants_SOURCES_TYPE_RESOURCES = "resources"; // NOI18N
public static final String JavaProjectConstants_SOURCES_HINT_MAIN = "main"; //NOI18N
public static final String JavaProjectConstants_SOURCES_HINT_TEST = "test"; //NOI18N 

Checkbox to use all opened projects or not project related stuff

For maven modules, its hard to switch via drop down to the correct submodule. I would like to have an option to use all opened projects, required projects, child projects or whatever. I use my keyboard as often as I can and when I go to the dropdown list, open it and use arrow down to go to the right project and between the default one and that one, what I want, there are 5 projects between and after use key down, drop down closes. Better is to use key down and if I choose one, I press enter or space.

Regards

Chris

Multiple file selection only works after press tab

I have a GWT applicaton and for this, I have a java file and a ui.xml file. Sometimes I would like to select multiple files, I know it is possible with off BUT only when I press tab. After this, text field lost focus, list got focus and then I can use shift, press enter and all is fine. What I would like to see is that I can use shift / ctrl normally without pressing tab. The arrow key has this functionality.

Regards

Chris

Shortcut to "Select in Projects"

It would be great if O-F-F could not only open files but could show the file in the Projects window.
So after filtreing for a file, a shortcut would locate the selected file in the tree.

NetBeans has this feature built-in, "Navigate->Select in Projects', this could be only a shortcut to it (if it's possible).

Use selected project from Node/File, when opening search dialog

The plugin shows files of last project when you close a project and open a new diferent project

Steps:

  1. Open project A
  2. Use off (it loads files first) and you can search
  3. Close project A
  4. Open project B
  5. Use off (it does not show loading) and the files it shows are from last project.

java.util.ConcurrentModificationException at net.sickill.off.common.OffListModel.removeFile(OffListModel.java:106)

java.util.ConcurrentModificationException
    at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:394)
    at java.util.LinkedHashMap$KeyIterator.next(LinkedHashMap.java:405)
    at net.sickill.off.common.OffListModel.removeFile(OffListModel.java:106)
    at net.sickill.off.netbeans.NetbeansProject.fileDeleted(NetbeansProject.java:227)
[catch] at org.openide.filesystems.FCLSupport$DispatchEventWrapper.dispatchEventImpl(FCLSupport.java:181)
    at org.openide.filesystems.FCLSupport$DispatchEventWrapperSingle.dispatchAllEventsSync(FCLSupport.java:224)
    at org.openide.filesystems.FCLSupport$DispatchEventWrapper.dispatchEvent(FCLSupport.java:137)
    at org.openide.filesystems.FCLSupport$1.run(FCLSupport.java:261)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443)
    at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
    at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058)

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.