Jump to content

jEdit4AutoIt


Stilgar
 Share

Recommended Posts

In my opinion, it's way ahead of scite in functionality, ease of use, and adding new languages/plugins. Though without the buffer tabs, it's a bit strange to get used to (buffertabs adds the tabs to the view, otherwise you have use a drop down box). I really like the jEdit4AutoIt setup Stilgar made, though it needs some updating for 5.0. My only real complaint is that I can't get the plugin manager to download and install plugins properly, which isn't a big deal, all you have to do is download the plugin's jar file to %Appdata%RoamingjEditjars or Program FilesjEditjars

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

I tried this ages ago as I like the "feature rich" look of it.

However, I couldn't get it to run. :(

I'm afraid I've still got the same problem.

I copied the files from the zip to the appropriate directories then ran the macro "Buffer switch to Autoit Mode" and recived the following error.

java.lang.NullPointerException: Mode must be non-null

at org.gjt.sp.jedit.buffer.JEditBuffer.setMode(JEditBuffer.java:1869)

at org.gjt.sp.jedit.buffer.JEditBuffer.setMode(JEditBuffer.java:1851)

at org.gjt.sp.jedit.buffer.JEditBuffer.setMode(JEditBuffer.java:1840)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.gjt.sp.jedit.bsh.Reflect.invokeMethod(Reflect.java:134)

at org.gjt.sp.jedit.bsh.Reflect.invokeObjectMethod(Reflect.java:80)

at org.gjt.sp.jedit.bsh.Name.invokeMethod(Name.java:855)

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.Interpreter.eval(Interpreter.java:644)

at org.gjt.sp.jedit.BeanShell._runScript(BeanShell.java:331)

at org.gjt.sp.jedit.BeanShell._runScript(BeanShell.java:279)

at org.gjt.sp.jedit.BeanShell.runScript(BeanShell.java:205)

at org.gjt.sp.jedit.Macros$BeanShellHandler.runMacro(Macros.java:1151)

at org.gjt.sp.jedit.Macros$Macro.invoke(Macros.java:573)

at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:342)

at org.gjt.sp.jedit.jEdit$4.invokeAction(jEdit.java:3334)

at org.gjt.sp.jedit.jEdit$4.invokeAction(jEdit.java:3316)

at org.gjt.sp.jedit.EditAction$Wrapper.actionPerformed(EditAction.java:212)

at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)

at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)

at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)

at javax.swing.DefaultButtonModel.setPressed(Unknown Source)

at javax.swing.AbstractButton.doClick(Unknown Source)

at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)

at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)

at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)

at java.awt.Component.processMouseEvent(Unknown Source)

at javax.swing.JComponent.processMouseEvent(Unknown Source)

at java.awt.Component.processEvent(Unknown Source)

at java.awt.Container.processEvent(Unknown Source)

at java.awt.Component.dispatchEventImpl(Unknown Source)

at java.awt.Container.dispatchEventImpl(Unknown Source)

at java.awt.Component.dispatchEvent(Unknown Source)

at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)

at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)

at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)

at java.awt.Container.dispatchEventImpl(Unknown Source)

at java.awt.window.dispatchEventImpl(Unknown Source)

at java.awt.Component.dispatchEvent(Unknown Source)

at java.awt.EventQueue.dispatchEventImpl(Unknown Source)

at java.awt.EventQueue.access$000(Unknown Source)

at java.awt.EventQueue$3.run(Unknown Source)

at java.awt.EventQueue$3.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)

at java.awt.EventQueue$4.run(Unknown Source)

at java.awt.EventQueue$4.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)

at java.awt.EventQueue.dispatchEvent(Unknown Source)

at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)

at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

at java.awt.EventDispatchThread.run(Unknown Source)

That is where I stopped. :(

Any ideas about what the problem could be....

Link to comment
Share on other sites

Would you mind zipping up your mode directory and sending it to me? also, there are a few paths which have to be changed. Pre 5.0 jEdit used your user folder for it's user settings. As of version 5.0 it uses the appdata folder.

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

I'll send the Modes directory seperately via IM. However, it is just the standard install that came with the program.

"jedit5.0pre1install.jar"

I tried moving the .jedit to "applicaiton data" (windows XP) and Jedit errored on start-up.

SO

I moved it back to under the user directory "C:Documents and SettingsJohn.jedit" and copied it to "C:Documents and SettingsJohnApplication Data"

AND "C:Documents and SettingsAll UsersApplication Data".

This didn't make any difference adn still errored when starting the macro.

So any other suggestions?

Link to comment
Share on other sites

I'm still looking for the dynamic code, but as I said, there are two files that load other files using the function System.getEnv(user)... that has to be changed to C:UsersJohnAppdataRoaming

As I said, I'm still looking for the proper way to work this out, but until I do, the file will have to be loaded manually, and yes, it is what causes the errors at startup. I believe the files are Program FilesjEditstartupAutoItStartup.bsh (Line 93) and Program FilesjEditmacrosAutoItUpdate_UDFs,bsh (Line 23)

Keep in mind, this isn't the only issue, only the most prominent one, when installing jEdit4AutoIt. Though I'm hoping to find a way around it soon.

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

I'm still looking for the dynamic code, but as I said, there are two files that load other files using the function System.getEnv(user)... that has to be changed to C:UsersJohnAppdataRoaming

As I said, I'm still looking for the proper way to work this out, but until I do, the file will have to be loaded manually, and yes, it is what causes the errors at startup. I believe the files are Program FilesjEditstartupAutoItStartup.bsh (Line 93) and Program FilesjEditmacrosAutoItUpdate_UDFs,bsh (Line 23)

Keep in mind, this isn't the only issue, only the most prominent one, when installing jEdit4AutoIt. Though I'm hoping to find a way around it soon.

No Rush for me. I was just trying it again to see if it worked this time. Sounds like it would be better to sit and wait untill you've got the updates done. If you get it working let me know. :)

BTW on my machine it would be "C:documents and settingsJohnApplication data" (Windows XP)

Link to comment
Share on other sites

Thanks, I think what I'll do is create a repository at Google Code to maintain this at. That is, so long as Stilgar doesn't mind.

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

I've created the GC project, though so far the only thing I've added is the fix for the startup, and update UDFs script.

The GC project is here, and the new download is here.

Note: I've changed the folder names to 'Program Files' and 'User Files'

Also, if the mods and admins here don't mind, I would like to keep all discussion of this little gem here on the AutoIt forums.

Oh, and one last thing, if you guys find any other bugs, please create a bug report at the Google Code project so that I can document, and hopefully fix the issue.

Edited by Arion

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

I played around with it for a while and got it working, if you want I can send you my folders :) iirc there are errors in the macro for reading the registry for autoit locations due to my computer being 64bit...

One thing I could not figure out that made me give up was a how to get a bar with all active files I was editing... was pretty annoying :)

Link to comment
Share on other sites

In order to get the tabs to show up, you need to install the buffertabs plugin, I'm attempting to get the author's permission for all of the plugins used in this installation so that I can include them by default.

As for reading registry locations, I didn't see any errors? Oh well, I'm going through the files one by one this weekend so that I can add them to a custom installer...unfortunately due to my work schedule I can only get a little work done during the week.

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

Well crap I somehow missed that plugin. Looks great now, thanks! :)

As for the issue I was talking about. When you go to compile a script or run it, it will error with a notification that it can't find the AutoIt*.exe file.

In the startup folder you have AutoItStartUp.bsh

Line 41 reads:

p = Runtime.getRuntime().exec("cmd /C reg query "HKEY_LOCAL_MACHINESOFTWAREAutoIt v3AutoIt"");

For 64bit systems it needs to read:

p = Runtime.getRuntime().exec("cmd /C reg query "HKEY_LOCAL_MACHINESOFTWAREWow6432NodeAutoIt v3AutoIt"");

Hope that helps :)

Link to comment
Share on other sites

Hmm, I don't remember having to change anything related to the AutoIt directory. I'll look into the issue, but, if you don't mind, from this point forward use the Project's Bug Tracker so that I can document everything, I believe anyone can add an issue, if not just send me an email, and I'll register you.

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

Just a quick note for everyone, I've started a downloads section where everyone can download the required plugins, or you can just check out the SVN repository here to check out everything, though for the windows users, I would strongly suggest TortoiseSVN (it's quick, extremely easy to use, and integrates perfectly with windows explorer).

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

Ok guys, I need a bit of help...Beanshell says that it has loose variables, or variables that don't need to be typed. Yet while running tests for fixes on the issues with jEdit4AutoIt I've noticed that somethings simply cannot be displayed as text (which to me is the easiest way to see what is going on). Anyway, to the point, does anybody know Java well enough to be able to cast a Process to a String, if that's even possible?

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

After doing some research into the registry entry issue. I've found that both the original, and bvierra's addition return the same values. So, while I would still like to figure out a fix to the solution above, I am considering this issue closed so that I can move on to other problems, such as creating an installer.

[quote]“Programming is like *ex: one mistake and you’re providing support for a lifetime.”(Michael Sinz)[/quote] [quote]“There are two ways to write error-free programs; only the third one works.”(Alan J. Perlis)[/quote]

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...