At the suggestion of A. Webb, I am sending github message # 79 to jline as a response. This works with the term, but not with my SecureCrt. SecureCrt had no problems with lein1.
Control keys do not work and the ~ / .jline.rc file does not disappear
No milestones No one assigned
(I went ahead and created a ~ / .jline.rc file containing jline.terminal = auto since this problem was written.) My problem is that my control keys do not work, and what can I do to get around this problem.
Here is a description of what I did.
I run
java -cp target / jline-2.11-SNAPSHOT-tests.jar: target / jline-2.11-SNAPSHOT.jar -Djline.internal.Log.debug = true jline.example.Example none
in my ~ / jline2 directory where I installed jline2. My control keys (ctrl + a, ctrl + e, ctrl + u and Backspace) do not work.
I log in to Ubuntu 12.04 with bash as a shell and use the VanDyke SecureCrt terminal emulator product. I have not made any changes to the settings of my emulator.
Firstly, I noticed that I do not have the file ~ / .jline.rc [DEBUG] Loading properties from the file: /home/cnorton/.jline.rc [DEBUG] Unable to read the configuration from the file: / home / cnorton /. jline.rc java.io.FileNotFoundException: /home/cnorton/.jline.rc (There is no such file or directory)
After the stack trace, here is the rest of the output.
[DEBUG] Creating a terminal; type = auto [DEBUG] Configuration: 38400 baud rate; line 34; columns 117; line = 0; intr = ^ C; quit = ^ \; erase = ^ ?; kill = ^ U; eof = ^ D; eol =; eol2 =; swtch =; start = ^ Q; stop = ^ S; susp = ^ Z; rprnt = ^ R; werase = ^ W; lnext = ^ V; flush = ^ O; min = 1; time = 0; -parenb -parodd cs8 -hupcl -cstopb cread clocal -crtscts -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany imaxbel -iutf8 opost -olclocron ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
[DEBUG] Terminal created: jline.UnixTerminal@1d520c4 [DEBUG] Stop registration: Thread [JLine Shutdown Hook, 5, main] [DEBUG] Adding a stop task: jline.TerminalSupport$1@1e9cb75 [DEBUG] Ansi supported: true [DEBUG] Echo enabled : false [DEBUG] NonBlockingInputStream start [DEBUG] Uploaded user configuration: file: /home/cnorton/.inputrc prompt> [DEBUG] Complete all shutdown tasks [DEBUG] Run task: jline.TerminalSupport$1@1e9cb75 [DEBUG] Remove shutdown: thread [ JLine Shutdown Hook, 5, main]
Here is another debug output from
export JLINE_LOGGING = trace && & lane springboard in the cloned git directory git clone: ββ//github.com/trptcolin/reply.git Note that the control keys work.
cnorton @steamboy: ~ / reply $ export JLINE_LOGGING = trace && & && lane springboard REPL-y 0.2.0-SNAPSHOT Clojure 1.4.0 Exit: Control + D or (exit) or (exit) Commands: (user / help) Documents : (name-function-name-here) (find-doc "part-of-name-here") Source: (source-name-here) (username / sourcery -name-here) Javadoc: (javadoc java-object -or-class-here) Examples from clojuredocs.org: clojuredocs or cdoc (user / clojuredocs "ns-here" "name-here") [DEBUG] Loading properties from a file: /home/cnorton/.jline.rc [DEBUG ] Uploaded properties: [DEBUG] jline.terminal = unix [NEXT] java.lang.Throwable: CREATE A MARKER in jline.TerminalFactory.create (TerminalFactory.java:50) in jline.TerminalFactory.get (TerminalFactory.java:159) in jline.console.ConsoleReader. (ConsoleReader.java:226) in jline.console.ConsoleReader. (ConsoleReader.java:218) in jline.console.ConsoleReader. (ConsoleReader.java:210) at reply.reader.simple_jline $ setup_console_reader.invoke (simple_jline.clj: 39) at reply.reader.simple_jline $ get_input_line.invoke (simple_jline.clj: 74) at reply.reader.simple_jline $ safe_read_line $ fn__941.invoke (simple_jline.clj: 101) in clojure.lang.Atom.swap (Atom.java:37) in clojure.core $ swap_BANG_.invoke (core.clj: 2108) at reply.reader.simple_jline $ safe_read_line.invoke (simple_jline.clj: 99) at reply.eval_modes.nrepl $ safe_read_line.invoke (nrepl.clj: 55) at reply.eval_modes.nrepl $ parsed_forms.invoke (nrepl.clj: 88) at reply.eval_modes.nrepl $ run_repl. invoke (nrepl.clj: 139) to reply.eval_modes.nrepl $ main.invoke (nrepl.clj: 227) in response to .main $ launch_nrepl $ fn__3187.invoke (main.clj: 63) in clojure.core $ with_redefs_fn.invoke (core.clj: 6585) in response to .main $ launch_nrepl.invoke (main.clj: 62) in response to .main $ launch.invoke (main.clj: 79) to .main $ _main.doInvoke (main.clj: 89) in clojure.lang.RestFn.invoke (RestFn.javahaps97) in cloj ure.lang.Var.invoke (Var.java:411) in clojure.lang.AFn.applyToHelper (AFn.java:159) in clojure.lang.Var.applyTo (Var.javaβ32) in response. ReplyMain.main (ReplyMain. 43) in java.lang.reflect.Method.invoke (Method.java:616) in clojure.lang.Reflector.invokeMatchingMethod (Reflector.java:93) in clojure.lang.Reflector.invokeStaticMethod (Reflector.java:207) in clojure L. DelegatingMethodAccessorImpl.java:43) in java.lang.reflect.Method.invoke (Method.java:616) in clojure.lang.Reflector.invokeMatchingMethod (Reflector.java:93) in clojure.lang.Reflector.invokeStaticMethava (Reflect : 207) at the user $ eval5.invoke (NO_SOURCE_FILE: 1) in clojure.lang.Compiler.eval (Compiler.java:6511) in clojure.lang.Compiler.eval (Compiler.java:6501) in clojure.lang.Compiler.eval (Compiler. java: 6477) in clojure.core $ eval.invoke (core.clj: 2797) in clojure.main $ eval_opt.invoke (main.clj: 297) at clojure.main $ initialize.invoke (main.clj: 316) at clojure.main $ null_opt.invoke (main.clj: 349) at clojure.main $ main.doInvoke (main.clj: 427) in clojure.lang.RestFn.invoke (RestFn.java:421) in clojure.lang.Var .invoke (Var.java:419) in clojure.lang.AFn.applyToHelper (AFn.java:163) in clojure.lang.Var.applyTo (Var.javaβ32) on clojure..main.main (main.java : 37)
[DEBUG] Creating a terminal; type = Unix [TRACE] Start: [sh, -c, stty -a </ DEV / terminal] [TRACE] Result: speed 38400 baud; line 34; columns 117; line = 0; intr = ^ C; quit = ^ \; erase = ^ ?; kill = ^ U; eof = ^ D; eol =; eol2 =; swtch =; start = ^ Q; stop = ^ S; susp = ^ Z; rprnt = ^ R; werase = ^ W; lnext = ^ V; flush = ^ O; min = 1; time = 0; -parenb -parodd cs8 -hupcl -cstopb cread clocal -crtscts -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany imaxbel -iutf8 opost -olclocron ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
[DEBUG] Configuration: 38400 baud rate; line 34; columns 117; line = 0; intr = ^ C; quit = ^ \; erase = ^ ?; kill = ^ U; eof = ^ D; eol =; eol2 =; swtch =; start = ^ Q; stop = ^ S; susp = ^ Z; rprnt = ^ R; werase = ^ W; lnext = ^ V; flush = ^ O; min = 1; time = 0; -parenb -parodd cs8 -hupcl -cstopb cread clocal -crtscts -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany imaxbel -iutf8 opost -olclocron ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke
[DEBUG] Terminal created: jline.UnixTerminal@74a7af [DEBUG] Stop registration: Thread [JLine Shutdown Hook, 5, main] [DEBUG] Adding a stop task: jline.TerminalSupport$1@183e6d4 [DEBUG] Ansi supported: true [TRACE] Start: [sh, -c, stty -icanon min 1 -icrnl -inlcr </ DEV / terminal] [TRACE] Result: [TRACE] Start: [sh, -c, stty -echo </ DEV / terminal] [TRACE] Result : [DEBUG] Echo enabled: false [DEBUG] NonBlockingInputStream start [DEBUG] Uploaded user configuration: file: /home/cnorton/.inputrc [TRACE] Downloading history from: /home/cnorton/.jline-reply.history user => [TRACE] Start: [sh, -c, stty intr undef </ DEV / terminal] [TRACE] Result: [TRACE] Key press: 1 [TRACE] Binding: BEGINNING_OF_LINE [TRACE] Guidance: 5 [TRACE] Binding: END_ OF_LINE [TRACE] Guidance: 21 [TRACE] Binding: UNIX_LINE_DISCARD [TRACE] Key: 127 [TRACE] Binding: BACKWARD_DELETE_CHAR