Issue2275

classification
Title: Cannot type backslash on Jython console on Windows
Type: Severity: normal
Components: Versions: Jython 2.7
Milestone:
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: zyasoft Nosy List: alex.gronholm, pekka.klarck, zyasoft
Priority: urgent Keywords:

Created on 2015-02-25.12:59:06 by pekka.klarck, last changed 2015-03-17.15:12:31 by alex.gronholm.

Messages
msg9559 (view) Author: Pekka Klärck (pekka.klarck) Date: 2015-02-25.12:59:05
Nothing happens when I try to type backslash to Jython console on Windows. FWIW, I'm using Finnish locale.
msg9562 (view) Author: Jim Baker (zyasoft) Date: 2015-02-26.03:54:30
No problem for US locale on Windows 8.1, OS X 10.10.2, or Ubuntu 14.10, so that's interesting. Need to investigate further.
msg9564 (view) Author: Pekka Klärck (pekka.klarck) Date: 2015-02-26.06:48:55
Typing backslash works fine on Linux for me too. Windows is Win7 on Virtual Box although I doubt that matters too much. Typing backslashes worked fine with earlier Jython versions and still works with CPython and IronPython.
msg9575 (view) Author: Jim Baker (zyasoft) Date: 2015-03-03.18:00:38
So maybe this is a Windows 7 specific issue, or a problem on a specific code page?
msg9576 (view) Author: Pekka Klärck (pekka.klarck) Date: 2015-03-03.21:17:15
Doesn't seem to be related to the code page but to the locale. With Finnish locale we use code page 850 but changing it to 437 using `chcp` had no effect. Changing locale from FI to EN resolved the problem (after I found out which key to press to get the backslash).

With Finnish keyword layout you get the backslash by pressing AltGr and the key one right from the 0 key (we have '+' there, in US layout it apparently is '-'). I figured AltGr could have something to do with the problem and did some experimenting with other keys requiring it:

- All these work fine: '$', '{', '}', '|'.
- Instead of '£' I get 'ú'.
- Getting '[' requires pressing it twice.
- Getting ']' requires first pressing '[' and then ']'.
- Getting '@' also requires first pressing '[' and then '@'.
- I actually get '\' too by first pressing '[' and then '\'!
msg9577 (view) Author: Jim Baker (zyasoft) Date: 2015-03-03.23:12:33
Looks like we have identified the problem then, and it's the same one as this open issue with JLine2 - https://github.com/jline/jline2/issues/156 - also AltGr. But AltGr does not appear on US keyboards, so that's probably why we are seeing it as an issue - the usual internationalization problems!

Good intro to the topic in http://en.wikipedia.org/wiki/AltGr_key

We most likely will have to fix JLine2 to fix this problem.
msg9578 (view) Author: Jim Baker (zyasoft) Date: 2015-03-03.23:19:19
Although the JLine2 bug is still open, I noticed that the linked Scala bug (https://issues.scala-lang.org/browse/SI-8759) has been closed out due to a fix in JLine 2.12.1, released last month (http://mvnrepository.com/artifact/jline/jline/2.12.1)

We should update accordingly.
msg9581 (view) Author: Pekka Klärck (pekka.klarck) Date: 2015-03-04.00:17:45
I tested JLine 2.12.1 by starting Jython like

    jython -J-Xbootclasspath/p:jline-2.12.1.jar

and was able to type the backslash just fine. I got some weird tracebacks before Jython actually started, but that is likely due to using -Xbootclasspath.
msg9590 (view) Author: Jim Baker (zyasoft) Date: 2015-03-07.19:15:26
Tracebacks must be due to the use of boot classpath, but that's a good way to test without modifying build.xml.

JLine upgraded to 2.12.1 as of https://hg.python.org/jython/rev/e050becb7e28
msg9668 (view) Author: Alex Grönholm (alex.gronholm) Date: 2015-03-17.15:12:31
I confirmed that it works (on a Finnish locale system).
History
Date User Action Args
2015-03-17 15:12:31alex.gronholmsetstatus: pending -> closed
nosy: + alex.gronholm
messages: + msg9668
2015-03-07 19:15:33zyasoftsetversions: + Jython 2.7
2015-03-07 19:15:27zyasoftsetstatus: open -> pending
priority: urgent
resolution: fixed
messages: + msg9590
assignee: zyasoft
2015-03-04 00:17:45pekka.klarcksetmessages: + msg9581
2015-03-03 23:19:20zyasoftsetmessages: + msg9578
2015-03-03 23:12:33zyasoftsetmessages: + msg9577
2015-03-03 21:17:16pekka.klarcksetmessages: + msg9576
2015-03-03 18:00:38zyasoftsetmessages: + msg9575
2015-02-26 06:48:56pekka.klarcksetmessages: + msg9564
2015-02-26 03:54:31zyasoftsetnosy: + zyasoft
messages: + msg9562
2015-02-25 12:59:06pekka.klarckcreate