jEdit Community - Resources for users of the jEdit Text Editor
Archives
Hey, where did C-` go?
Submitted by rjray on Friday, 3 August, 2007 - 23:34
I just upgraded to pre10 (hoping to get a fix for the cpu-goes-to-100% problem), and suddenly C-`, which used to switch to the most-recently-visited buffer, no longer does anything. I'm pretty sure this was a core key-binding, as I think I learned it from the startup hints. Since I tend to switch between two buffers a lot, this was an easier (and less carpal-inducing) alternative to the RecentBufferSwitch plugin...

Randy
Pressing '>' reports 'java.lang.NoSuchMethodError'
Submitted by ironsidevsquincy on Monday, 6 August, 2007 - 16:37
Hey all,

recently I've been getting a weird error message whenever I press '>' (i.e. shift and /)...


java.lang.NoSuchMethodError: org.gjt.sp.jedit.textarea.JEditTextArea.getBuffer()Lorg/gjt/sp/jedit/Buffer;
at xml.XmlPlugin.isDelegated(Unknown Source)
at xml.XmlActions.insertClosingTagKeyTyped(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at bsh.Reflect.invokeMethod(Reflect.java:134)
at bsh.Reflect.invokeStaticMethod(Reflect.java:98)
at bsh.Name.invokeMethod(Name.java:874)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BshMethod.invokeImpl(BshMethod.java:362)
at bsh.BshMethod.invoke(BshMethod.java:258)
at bsh.BshMethod.invoke(BshMethod.java:186)
at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:509)
at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:76)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:416)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:382)
at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:373)
at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:116)
at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:163)
at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4591)
at java.awt.Component.processEvent(Component.java:5815)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4410)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:697)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:962)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:834)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:661)
at java.awt.Component.dispatchEventImpl(Component.java:4282)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Window.dispatchEventImpl(Window.java:2429)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

Everything works fine though, the angle bracket is ouputted, so the error is more of an annoyance then anything, but it is really annoying. Anybody have any ideas?

Darren
Null pointer exceptions
Submitted by andreweans on Tuesday, 7 August, 2007 - 02:58
I'm getting null pointer exceptions. I tried upgrading to the latest jvm and latest jedit, but that didn't solve the problem. Here are some logs from before and after I upgraded.

Before upgrading:
[message] Log: java.version=1.6.0_01
[message] Log: java.vm.version=1.6.0_01-b06
[message] Log: java.runtime.version=1.6.0_01-b06
[message] Log: java.vendor=Sun Microsystems Inc.
[message] Log: java.compiler=null
[message] Log: os.name=Windows Vista
[message] Log: os.version=6.0
[message] Log: os.arch=x86
(snip)
[notice] jEdit: jEdit version 4.3pre9
(snip)
[error] JEditTextArea: BUG: screenLine=-1,visibleLines=45,physicalLine=0,offset=0,firstPhysicalLine=0,lastPhysicalLine=26
[error] BeanShellAction: java.lang.NullPointerException
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.scrollTo(TextArea.java:860)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.scrollToCaret(TextArea.java:712)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea._finishCaretUpdate(TextArea.java:5004)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.finishCaretUpdate(TextArea.java:5156)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.moveCaretPosition(TextArea.java:2213)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.moveCaretPosition(TextArea.java:2179)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.moveCaretPosition(TextArea.java:2168)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.goToBufferStart(TextArea.java:3128)
[error] BeanShellAction: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[error] BeanShellAction: at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[error] BeanShellAction: at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[error] BeanShellAction: at java.lang.reflect.Method.invoke(Unknown Source)
[error] BeanShellAction: at bsh.Reflect.invokeMethod(Reflect.java:134)
[error] BeanShellAction: at bsh.Reflect.invokeObjectMethod(Reflect.java:80)
[error] BeanShellAction: at bsh.Name.invokeMethod(Name.java:858)
[error] BeanShellAction: at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
[error] BeanShellAction: at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
[error] BeanShellAction: at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
[error] BeanShellAction: at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
[error] BeanShellAction: at bsh.BSHBlock.eval(BSHBlock.java:80)
[error] BeanShellAction: at bsh.BshMethod.invokeImpl(BshMethod.java:362)
[error] BeanShellAction: at bsh.BshMethod.invoke(BshMethod.java:258)
[error] BeanShellAction: at bsh.BshMethod.invoke(BshMethod.java:186)
[error] BeanShellAction: at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:509)
[error] BeanShellAction: at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:76)
[error] BeanShellAction: at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:416)
[error] BeanShellAction: at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:382)
[error] BeanShellAction: at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:373)
[error] BeanShellAction: at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:116)
[error] BeanShellAction: at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:185)
[error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4510)
[error] BeanShellAction: at java.awt.Component.processEvent(Unknown Source)
[error] BeanShellAction: at java.awt.Container.processEvent(Unknown Source)
[error] BeanShellAction: at java.awt.Component.dispatchEventImpl(Unknown Source)
[error] BeanShellAction: at java.awt.Container.dispatchEventImpl(Unknown Source)
[error] BeanShellAction: at java.awt.Component.dispatchEvent(Unknown Source)
[error] BeanShellAction: at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
[error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
[error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
[error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
[error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
[error] BeanShellAction: at java.awt.Component.dispatchEventImpl(Unknown Source)
[error] BeanShellAction: at java.awt.Container.dispatchEventImpl(Unknown Source)
[error] BeanShellAction: at java.awt.Window.dispatchEventImpl(Unknown Source)
[error] BeanShellAction: at java.awt.Component.dispatchEvent(Unknown Source)
[error] BeanShellAction: at java.awt.EventQueue.dispatchEvent(Unknown Source)
[error] BeanShellAction: at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
[error] BeanShellAction: at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
[error] BeanShellAction: at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
[error] BeanShellAction: at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
[error] BeanShellAction: at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
[error] BeanShellAction: at java.awt.EventDispatchThread.run(Unknown Source)

After upgrading:
3:53:14 AM [message] Log: java.version=1.6.0_02
3:53:14 AM [message] Log: java.vm.version=1.6.0_02-b06
3:53:14 AM [message] Log: java.runtime.version=1.6.0_02-b06
3:53:14 AM [message] Log: java.vendor=Sun Microsystems Inc.
3:53:14 AM [message] Log: java.compiler=null
3:53:14 AM [message] Log: os.name=Windows Vista
3:53:14 AM [message] Log: os.version=6.0
3:53:14 AM [message] Log: os.arch=x86
(snip)
3:53:14 AM [notice] jEdit: jEdit version 4.3pre10
(snip)
8:29:21 PM [error] BeanShellAction: java.lang.NullPointerException
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.scrollTo(TextArea.java:875)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.scrollToCaret(TextArea.java:739)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea._finishCaretUpdate(TextArea.java:5085)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.finishCaretUpdate(TextArea.java:5238)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.moveCaretPosition(TextArea.java:2232)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.moveCaretPosition(TextArea.java:2198)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.moveCaretPosition(TextArea.java:2187)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea._changeLine(TextArea.java:5353)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.goToNextLine(TextArea.java:2456)
8:29:21 PM [error] BeanShellAction: at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
8:29:21 PM [error] BeanShellAction: at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.lang.reflect.Method.invoke(Unknown Source)
8:29:21 PM [error] BeanShellAction: at bsh.Reflect.invokeMethod(Reflect.java:134)
8:29:21 PM [error] BeanShellAction: at bsh.Reflect.invokeObjectMethod(Reflect.java:80)
8:29:21 PM [error] BeanShellAction: at bsh.Name.invokeMethod(Name.java:858)
8:29:21 PM [error] BeanShellAction: at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
8:29:21 PM [error] BeanShellAction: at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
8:29:21 PM [error] BeanShellAction: at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
8:29:21 PM [error] BeanShellAction: at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
8:29:21 PM [error] BeanShellAction: at bsh.BSHBlock.eval(BSHBlock.java:80)
8:29:21 PM [error] BeanShellAction: at bsh.BshMethod.invokeImpl(BshMethod.java:362)
8:29:21 PM [error] BeanShellAction: at bsh.BshMethod.invoke(BshMethod.java:258)
8:29:21 PM [error] BeanShellAction: at bsh.BshMethod.invoke(BshMethod.java:186)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:509)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:76)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:416)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:382)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:373)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:116)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:185)
8:29:21 PM [error] BeanShellAction: at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4591)
8:29:21 PM [error] BeanShellAction: at java.awt.Component.processEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Container.processEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Component.dispatchEventImpl(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Container.dispatchEventImpl(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Component.dispatchEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Component.dispatchEventImpl(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Container.dispatchEventImpl(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Window.dispatchEventImpl(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.Component.dispatchEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventQueue.dispatchEvent(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
8:29:21 PM [error] BeanShellAction: at java.awt.EventDispatchThread.run(Unknown Source)

(BTW I can't put this info in the bug tracking system because I'd have to create a sourceforge account. I already created a jedit.org account yesterday and had to wait until today to get login info emailed to me; don't want to create another account somewhere else and keep waiting.)

This is apparently the same bug as #1584436. http://www.jedit.org/CHANGES43.txt says it was fixed in 4.3pre10: "Scrolling up broken after content removing (#1584436) (Matthieu Casanova)". But it apparently wasn't fixed; I'm still getting the error, and somebody else reported it again as #1763932. The changelog for /jEdit/trunk/org/gjt/sp/jedit/textarea/TextArea.java says #1584436 was fixed in revision 8999. The diff to the previous version shows that all that was changed in this particular file was that a null pointer check and the corresponding error logging were deleted. They included the comment "FIXME - we need to reset the state of this window so that it has the right dimensions again." The offending line of code (both before and after the change), which is causing the null pointer exception, is attempting to dereference a pointer (named "point") which was returned by the function offsetToXY, but offsetToXY is returning null, apparently because screenLine is -1. Hopefully somebody who is familiar with the code can investigate what went wrong.
Jedit thinks it crashed when it opens a second instance
Submitted by andreweans on Tuesday, 7 August, 2007 - 03:38
Jedit has a useful feature that if it crashes (or my system crashes), then the next time I start jedit, it will see my autosave files, tell me that it crashed, and offer to load the autosave files instead of the manually saved (old) versions.

When I first installed it, I had it assigned as the default program to handle txt files. However, I discovered that when I already had it running, and had some unsaved (but autosaved) files open, then if I tried to open a txt file from windows explorer, then a second instance of jedit would start, and tell me that it thought it had crashed (because it found autosave files), and offer to load the autosave files. This worried me because it apparently was unaware of (or unable to coordinate with) the instance of jedit which was already running, and I was afraid that in that case, one instance might clobber file changes made by the other instance. To be safe, I changed the default program for txt files to wordpad, to prevent a second instance of jedit from starting when I open txt files from windows explorer.

Why does jedit not recognize that the presence of autosave files is due to an already-running other instance of jedit rather than due to jedit having crashed?

In order to avoid the problem, is there a way I can set jedit as the default program for txt files but have it open those files in the already-running instance rather than open a new instance?
Catastrophic data loss due to jedit silently failing to autosave
Submitted by andreweans on Tuesday, 7 August, 2007 - 04:39
I rely on autosave. I ordinarily don't manually save my text files in jedit at all, until I need to open those files in other programs, since jedit automatically saves my changes. If jedit or my computer crashes, it's no problem, since when I restart jedit, it automatically finds the autosave files and offers to load them.

However, this safety feature recently failed catastrophically. I'd had jedit running for a couple weeks, and had made many changes to some files. Then my computer crashed, and when I restarted it and started jedit back up, I discovered that one of the autosave files, for a file to which which I had been making many changes every day, was empty! I lost a lot of irreplaceable data as a result.

I investigated, and found the problem. I had pasted some text which included an umlaut letter into the file, and jedit couldn't save it using the particular encoding which I had selected (windows-1251). As a result, it wrote a blank autosave file, and from then on, all of the text which I entered was stored only in memory, which was a disaster waiting to happen. I confirmed that this was the problem by creating a new file, pasting the offending letter, and trying to save it; I got this error:

I/O Error
c:\Users\Andrew\Documents\test.txt:
The following I/O operation could not be completed:
Cannot save: java.io.CharConversionException: Failed to encode the character
'ä' (U+E4) at column 1 in line 5 with the encoding "windows-1251".

It's true that that letter can't be encoded in that encoding. However, silently failing to autosave the file is a major fault of jedit. Furthermore, when I paste the offending letter into the file and then wait for the autosave, jedit writes "Input/output complete" in the status bar as usual, making me believe that the autosave was successful!

Automatically switching the autosave encoding to unicode (and notifying me of this fact) would be one solution to the problem. Another would be simply to display an error message alerting me to the fact that the autosave in my chosen encoding failed. But silently failing is absolutely the wrong thing to do.

A text editor's absolute highest priority, with no exceptions, is: never lose (or corrupt) the user's data. Sorry for ranting, but this is a bug which should not be allowed to remain.
It is present in both pre9 and pre10.
Fullscreen macro (TrueFullscreen.bsh v0.1 by k3rni)
Submitted by k3rni on Tuesday, 7 August, 2007 - 09:20
A simple macro that toggles jEdit window to/from fullscreen mode. Disables window manager decorations, and sets the VM fullscreen window. Works well on Linux. Windows testing shows that fullscreen window behavior is somewhat different.
Creating a macro that configures Buffer Options and ConfigurableFoldPlugin
Submitted by mbisping on Tuesday, 7 August, 2007 - 13:27
Hi there, I'd like to have a macro that sets the buffer option folding to custom and configures the ConfigurableFoldPlugin to use
Creating a macro that configures Buffer Options and ConfigurableFoldPlugin
Submitted by mbisping on Tuesday, 7 August, 2007 - 13:38
Hi there, I'd like to have a macro that sets the buffer option folding to custom and configures the ConfigurableFoldPlugin to use
Eureka...at last
Submitted by JimT on Tuesday, 7 August, 2007 - 15:30
I'm an industrial robot code monkey, and have been using a commercial editor for some years now, the problem is that editors are rarely writtem with robots in mind, and the one I was using has slowly become more difficult to use with each upgrade.
I did look at Java a few years ago, but was put off by what I took to be bloat.
Then I found jEdit. Sweeeet. Thanks guys, you've done a superb job of it.
So as of last Friday I've been converted. I read the "writing edit modes" manpage and within 20 mins had a working install.
I look forward to being able to upload modes for a couple of robots in the near future, as soon as I have time to figure out how to do it properly.
Well done guys.
JimT
Eureka...at last
Submitted by JimT on Tuesday, 7 August, 2007 - 15:31
I'm an industrial robot code monkey, and have been using a commercial editor for some years now, the problem is that editors are rarely writtem with robots in mind, and the one I was using has slowly become more difficult to use with each upgrade.
I did look at Java a few years ago, but was put off by what I took to be bloat.
Then I found jEdit. Sweeeet. Thanks guys, you've done a superb job of it.
So as of last Friday I've been converted. I read the "writing edit modes" manpage and within 20 mins had a working install.
I look forward to being able to upload modes for a couple of robots in the near future, as soon as I have time to figure out how to do it properly.
Well done guys.
JimT
Matching end-of-line with $
Submitted by JasonHeiser on Tuesday, 7 August, 2007 - 19:51
This has been broken (at least for me) since 4.3pre8 or so. I was hoping that 4.3pre10 would fix it, but I'm disappointed to discover that I still can't use $ to match the end of a line. Since first encountering this problem, I've been matching on newline characters. It's not perfect; for instance, it doesn't work on the last line in a file. Is there a better workaround or fix I can try?

Jason Heiser
java.lang.NullPointerException: Null Pointer in Method Invocation at bsh.Name.invokeMethod(Name.java:844)
Submitted by barenca on Thursday, 9 August, 2007 - 00:16
Why every time a Macro fails, next time i try to execute it again the following message appears?:

java.lang.NullPointerException: Null Pointer in Method Invocation
at bsh.Name.invokeMethod(Name.java:844)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHCastExpression.eval(BSHCastExpression.java:60)
at bsh.BSHReturnStatement.eval(BSHReturnStatement.java:48)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BshMethod.invokeImpl(BshMethod.java:362)
at bsh.BshMethod.invoke(BshMethod.java:258)
at bsh.BshMethod.invoke(BshMethod.java:186)
at bsh.Name.invokeLocalMethod(Name.java:917)
at bsh.Name.invokeMethod(Name.java:804)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHVariableDeclarator.eval(BSHVariableDeclarator.java:86)
at bsh.BSHTypedVariableDeclaration.eval(BSHTypedVariableDeclaration.java:84)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BshMethod.invokeImpl(BshMethod.java:362)
at bsh.BshMethod.invoke(BshMethod.java:258)
at bsh.BshMethod.invoke(BshMethod.java:186)
at bsh.Name.invokeLocalMethod(Name.java:917)
at bsh.Name.invokeMethod(Name.java:804)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BshMethod.invokeImpl(BshMethod.java:362)
at bsh.BshMethod.invoke(BshMethod.java:258)
at bsh.BshMethod.invoke(BshMethod.java:186)
at bsh.Name.invokeLocalMethod(Name.java:917)
at bsh.Name.invokeMethod(Name.java:804)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHVariableDeclarator.eval(BSHVariableDeclarator.java:86)
at bsh.BSHTypedVariableDeclaration.eval(BSHTypedVariableDeclaration.java:84)
at bsh.Interpreter.eval(Interpreter.java:645)
at org.gjt.sp.jedit.BeanShell._runScript(BeanShell.java:341)
at org.gjt.sp.jedit.BeanShell._runScript(BeanShell.java:286)
at org.gjt.sp.jedit.BeanShell.runScript(BeanShell.java:212)
at org.gjt.sp.jedit.Macros$BeanShellHandler.runMacro(Macros.java:1013)
at org.gjt.sp.jedit.Macros$Macro.invoke(Macros.java:436)

Bug?

Thanks
indent block selections
Submitted by coolcat on Thursday, 9 August, 2007 - 03:30
In visual studio, if I 'block' select and hit tab, the whole block tabs over. In jedit, the whole block is deleted and replaced with a tab.

In visual studio I use this feature all the time, for aligning columns in text-based data tables (c/c++).

Thanks

ps. If this is already possible, my apologies, I'm new to the program.
Pressing '>' reports 'java.lang.NoSuchMethodError' error
Submitted by ironsidevsquincy on Thursday, 9 August, 2007 - 10:34
recently I've been getting a weird error message whenever I press '>' (i.e. shift and /)...


java.lang.NoSuchMethodError: org.gjt.sp.jedit.textarea.JEditTextArea.getBuffer()Lorg/gjt/sp/jedit/Buffer;
at xml.XmlPlugin.isDelegated(Unknown Source)
at xml.XmlActions.insertClosingTagKeyTyped(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at bsh.Reflect.invokeMethod(Reflect.java:134)
at bsh.Reflect.invokeStaticMethod(Reflect.java:98)
at bsh.Name.invokeMethod(Name.java:874)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BshMethod.invokeImpl(BshMethod.java:362)
at bsh.BshMethod.invoke(BshMethod.java:258)
at bsh.BshMethod.invoke(BshMethod.java:186)
at org.gjt.sp.jedit.BeanShell.runCachedBlock(BeanShell.java:509)
at org.gjt.sp.jedit.BeanShellAction.invoke(BeanShellAction.java:76)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:416)
at org.gjt.sp.jedit.gui.InputHandler.invokeAction(InputHandler.java:382)
at org.gjt.sp.jedit.gui.DefaultInputHandler.handleKey(DefaultInputHandler.java:373)
at org.gjt.sp.jedit.input.AbstractInputHandler.processKeyEventKeyStrokeHandling(AbstractInputHandler.java:116)
at org.gjt.sp.jedit.gui.InputHandler.processKeyEvent(InputHandler.java:163)
at org.gjt.sp.jedit.textarea.TextArea.processKeyEvent(TextArea.java:4591)
at java.awt.Component.processEvent(Component.java:5815)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4410)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:697)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:962)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:834)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:661)
at java.awt.Component.dispatchEventImpl(Component.java:4282)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Window.dispatchEventImpl(Window.java:2429)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

Everything works fine though, the angle bracket is ouputted, so the error is more of an annoyance then anything, but it is really annoying. Anybody have any ideas?

Darren
HTML edit mode wont deligate to PHP
Submitted by physcopanda on Thursday, 9 August, 2007 - 11:12
Help! I've tried downloading other edit HTML edit modes - and none of them delegate correctly.

This is a real hassle as my html scripts often have php embeded and I can't get jedit to highlight the code correctly unless I select PHP edit mode - then I lose my HTML formatting.

I've tried editing the catalog file (this just makes jedit lose all syntax highlighting if I add anything at all to it!)

Anyone got any advice for me? I've looked everywhere for answers so this posting is my last resort.

Thanks! - PS I'm using Jedit V 4.3Pre10 on windows vista (I've tried previous versions but they seem to behave the same)
docking and slow scrolling fix
Submitted by jav on Thursday, 9 August, 2007 - 20:39
I've been using jEdit since pre9 and currently moved to pre10.

In pre9 at times I had the 100% cpu utilization problem reported by others, which resulted in the main scrollbar being really slow among other things. In pre10 I haven't noticed the resource hogging problem anymore, but the scrollbar (and scrolling of code in general) often became unbearably slow.

In Global Options, Shortcuts, Close Current Docking Area the shortcut was for some reason C+e C` and whenever docking related functionality was fired up, this triggered an error that made jEdit scrolling unusable (11:17:59 PM [error] KeyEventTranslator: Invalid key stroke: C+e C`). Noticed it while browsing Troubleshooting,Activity Log. This problem manifested itself also while not having the main work area maximised. The fix? Clear the shortcut. The error is still fired up, but it doesn't cause any problems.

Maybe this was an unfortunate typo on my behalf, though I can't remember even messing with the shortcuts.

Leaving this here for anyone whom might stumble into jEdit behaving slowly.
SuperAbbrevs missing options
Submitted by sgtrock123 on Saturday, 11 August, 2007 - 00:09

Hi all,

I've installed and used SuperAbbrevs in the past, and recently re-installed it on a new machine after upgrading jEdit to 4.3pre9. I noticed that the option to "Expand Abbreviation" is now gone, and instead the only option available is to bring up a dialog box to type in the shortcut. Why was this removed? It seems cumbersome to me to force a mode switch, breaking the flow as I'm typing. It's simply not as fluid as the type-then-expand strategy.

This happens in the two latest versions available on SourceForge, so I reverted all the way back to 0.01 and it has the "Expand Abbreviation" option. However, it will not run under 4.3, presumably the jEdit API has changed (I'm not a jEdit expert), as attempting to tab from the inside of the snippet to the end throws the following error:

java.lang.NoSuchMethodError: org.gjt.sp.jedit.textarea.JEditTextArea.getBuffer()Lorg/gjt/sp/jedit/Buffer;
	at superabbrevs.SuperAbbrevs.nextAbbrev(SuperAbbrevs.java:155)
	at SuperAbbrevsPlugin.nextAbbrev(SuperAbbrevsPlugin.java:39)
	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 bsh.Reflect.invokeMethod(Reflect.java:134)
	at bsh.Reflect.invokeStaticMethod(Reflect.java:98)
	at bsh.Name.invokeMethod(Name.java:874)
        ... (40 more lines snipped)

(I'm using Java 1.5.0_06 on XP SP2, in case this is a bug I'm not aware of)

Any plans to bring this feature back, or is it gone for good?

Thanks...

Problems with C+c and C+v
Submitted by mamboze on Saturday, 11 August, 2007 - 09:52
Hi,
I recently migrated from win xp to ubuntu. I installed jEdit for work with ruby on rails and things are fine except for one little problem - isn't there always one.

The C+c sequence doesn't copy, it cuts and leaves a 'c' in the text, similarly with C+x, an 'x' is left. C+v copies and then appends a 'v'. The DELETE/INSERT alternatives work OK. This is no big deal but the C+c etc keystrokes work elsewhere in ubuntu so why not in jEdit.

Any suggestions on how this might be resolved would be much appreciated
Problems with C+c and C+v
Submitted by mamboze on Saturday, 11 August, 2007 - 09:58
Hi,
I recently migrated from win xp to ubuntu. I installed jEdit for work with ruby on rails and things are fine except for one little problem - isn't there always one.

The C+c sequence doesn't copy, it cuts and leaves a 'c' in the text, similarly with C+x, an 'x' is left. C+v copies and then appends a 'v'. The DELETE/INSERT alternatives work OK. This is no big deal but the C+c etc keystrokes work elsewhere in ubuntu so why not in jEdit.

Any suggestions on how this might be resolved would be much appreciated
Problems with C+c and C+v
Submitted by mamboze on Saturday, 11 August, 2007 - 10:08
Hi,
I recently migrated from win xp to ubuntu. I installed jEdit for work with ruby on rails and things are fine except for one little problem - isn't there always one.

The C+c sequence doesn't copy, it cuts and leaves a 'c' in the text, similarly with C+x, an 'x' is left. C+v copies and then appends a 'v'. The DELETE/INSERT alternatives work OK. This is no big deal but the C+c etc keystrokes work elsewhere in ubuntu so why not in jEdit.

Any suggestions on how this might be resolved would be much appreciated
User login
Browse archives
« August 2007 »
MoTuWeThFrSaSu
 
2
4
5
8
10
13
15
17
18
19
23
27
 
Poll
Are you interested in language packs for jEdit?
Yes, and I could help maintain translations
26%
Yes, I'd like to have translations
32%
Indifferent
35%
No, that'd be bad (please comment)
7%
Total votes: 1093
Syndication
file   ver   dls
German Localization light   4.4.2.1   108250
Context Free Art (*.cfdg)   0.31   46071
BBEdit scheme   1.0   18607
JBuilder scheme   .001   18508
ColdFusion scheme   1.0   18041
R Edit Mode - extensive version   0.1   17488
Advanced HTML edit mode   1.0   16222
Matlab Edit Mode   1.0   16086
jEdit XP icons   1.0   15245
XP icons for jEdit   1.1   14309