[jira] [Comment Edited] (GROOVY-6453) groovysh in Windows 7/8/10 doesn't support arrow keys and Del
[ https://issues.apache.org/jira/browse/GROOVY-6453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=1760#comment-1760 ] Guy Rouillier edited comment on GROOVY-6453 at 10/29/18 5:42 AM: - Found this via search. I'm on Windows 7 64-bit, and tried both groovy-2.6.0-alpha-3 and groovy-3.0.0-alpha-3. Cursor keys are not working in either one. I'm surprised to see this issue is now 5 years old. Is there some basic restriction preventing this from being corrected in groovysh? I tried creating a groovy.rc file containing the contents from the previous post by Dariusz Antoniuk, but don't know where to put it. I tried in \groovy-3.0.0-alpha-3\bin, \groovy-3.0.0-alpha-3\conf, and C:\Users\\.groovy, and it still didn't work. [UPDATE] Found this post that says the file to update is actually groovysh.rc. https://stackoverflow.com/questions/52898321/groovysh-rc-file-breaks-groovysh-evaluate-switch So I updated that in my home directory. Now I'm getting a NullPointerException: D:\>groovysh Picked up JAVA_TOOL_OPTIONS: -Duser.timezone=GMT FATAL: java.lang.NullPointerException java.lang.NullPointerException at java.util.concurrent.ConcurrentHashMap.replaceNode(ConcurrentHashMap.java:1106) at java.util.concurrent.ConcurrentHashMap.remove(ConcurrentHashMap.java:1097) at org.codehaus.groovy.runtime.memoize.UnlimitedConcurrentCache.remove(UnlimitedConcurrentCache.java:70) at groovy.lang.GroovyClassLoader.removeClassCacheEntry(GroovyClassLoader.java:640) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.jav at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(P ethodSite.java:213) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:55) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128) at org.codehaus.groovy.tools.shell.Interpreter.evaluate(Interpreter.groovy:96) at org.codehaus.groovy.tools.shell.Evaluator$evaluate.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128) at org.codehaus.groovy.tools.shell.Groovysh.evaluateWithStoredBoundVars(Groovysh.groovy:263) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.jav at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(P ethodSite.java:190) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:58) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:177) at org.codehaus.groovy.tools.shell.Groovysh.execute(Groovysh.groovy:204) at org.codehaus.groovy.tools.shell.Shell.leftShift(Shell.groovy:122) at org.codehaus.groovy.tools.shell.Shell$leftShift$0.call(Unknown Source) at org.codehaus.groovy.tools.shell.commands.LoadCommand$_load_closure1.doCall(LoadCommand.groovy:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:326) at
[jira] [Commented] (GROOVY-6453) groovysh in Windows 7/8/10 doesn't support arrow keys and Del
[ https://issues.apache.org/jira/browse/GROOVY-6453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=1760#comment-1760 ] Guy Rouillier commented on GROOVY-6453: --- Found this via search. I'm on Windows 7 64-bit, and tried both groovy-2.6.0-alpha-3 and groovy-3.0.0-alpha-3. Cursor keys are not working in either one. I'm surprised to see this issue is now 5 years old. Is there some basic restriction preventing this from being corrected in groovysh? I tried creating a groovy.rc file containing the contents from the previous post by Dariusz Antoniuk, but don't know where to put it. I tried in \groovy-3.0.0-alpha-3\bin, \groovy-3.0.0-alpha-3\conf, and C:\Users\\.groovy, and it still didn't work. > groovysh in Windows 7/8/10 doesn't support arrow keys and Del > - > > Key: GROOVY-6453 > URL: https://issues.apache.org/jira/browse/GROOVY-6453 > Project: Groovy > Issue Type: Bug > Components: Groovysh >Affects Versions: 2.2.0 > Environment: Windows 8, 64bit (v6.2, build 9200), java version > "1.7.0_45" SE Runtime Environment (build 1.7.0_45-b18) HotSpot 64-Bit Server > VM (build 24.45-b08, mixed mode), Russian locale (!) >Reporter: Andrew P Fink >Priority: Major > Labels: console, jline > > I have bare windows 8 with fresh JDK. I run Groovysh in cmd.exe. > Groovysh 2.1.9 works as expected. > Groovysh 2.2.0 doesn't react to arrow keys and Del, i.e. up key doesn't show > previous command, left key doesn't shift cursor etc. > After some investigation I found what is working: > ctrl-a go to beginning of line > ctrl-e go to End of line > ctrl-f go Forward one char > ctrl-b go Backward one char > ctrl-d delete the char > ctrl-h and backspace = delete left char > ctrl-p recall previous line > ctrl-n recall next line > ctrl-s search > ctrl-r reverse search > It's nice and feel myself like a Linux hacker, but I want arrow keys too ;-) > I tried different options: > - upgrade jline2.10 to 2.11 - no effect > - --terminal=unix - it helps, but duplicate prompt (groovy:000>) and no more > colors in console > Looks like problem lies in new jline v2 (groovysh 2.1.9 uses jline1.0) -- This message was sent by Atlassian JIRA (v7.6.3#76005)