Coder Social home page Coder Social logo

Comments (9)

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
This is an incredibly useful bug report. Thank you!

I recently had to make changes to the input handling, as there was a request to 
handle some of the more 
unusual CTRL sequences that were traditionally available on text terminals (see 
issue 31).

Javascript unfortunately has a really convoluted way of reporting key presses, 
and there are certain key 
combinations that cannot be uniquely distinguished (especially when dealing 
with non-US keyboard 
layouts). So, any time I fix an issue for a specific keyboard layout, it is 
possible that I break it for 
some other layout. And it is just possible that that's what happened here.

Unfortunately, I don't really know much about how French keyboards are supposed 
to work. So, not only 
can I not test this easily when making changes to the input handling, I also 
cannot easily fix the bug, 
now that you pointed it out to me.

As much as I love getting this particular bug report, as it is very useful in 
making sure ShellInABox 
does the right thing, I will need to ask you for a little more information in 
order for me to reproduce 
and hopefully fix the problem.

You say I should try to type "â", but for the life of me, I cannot figure out 
how to do that on a French 
keyboard -- I know how to do it on an American keyboard (on Linux), but that 
still works correctly in 
all versions of ShellInABox.

Can you please include the exact sequence of keys that I need to press to enter 
this character? And if 
you know of any other characters that do not work correctly, please also 
include the sequence of keys 
that are involved with inputting those characters.

A French keyboard layout might make sense to you, but to me it looks like a 
tool of the devil :-)

Original comment by [email protected] on 24 Dec 2009 at 5:39

  • Changed state: Accepted

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
Thank you for taking into account this problem (which is annoying me a lot). I 
made
the required test in order to help you with this evil character :)
In order to produce 'â' on an American keyboard using the french (france) 
layout, you
need to press: [q

Let me know if it works for you. Otherwise, we'll find another way to spawn the 
devil :)

Original comment by [email protected] on 30 Dec 2009 at 9:04

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
A small precision: I've noticed that the problem almost never occurs when 
making the
combination very quickly.

Original comment by [email protected] on 29 Jan 2010 at 12:45

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
As far as I can see it now receives dead-keys as keystrokes too. For instance 
when I 
want to type an é, I first press shift+6 (or an '^') followed by an 'e'. 
ShellInABox 
now interprets this as '6é'.

So:

What steps will reproduce the problem?
1. Install and use Shellinabox 2.10
2. Use _any_ keyboard layout with dead keys (I'm using US International + dead 
keys)
3. Try to type the 'é' character

What is the expected output? What do you see instead?
Expected: 'é'
Seen: '6é' instead

What version of the product are you using? On what operating system?
Server: Shellinabox 2.10 on Debian Lenny
Client: Windows 7. Browsers: tried with Chrome 4.1.249.1036, FF 3.6 and IE8

This problem doesn't affect v2.9

Original comment by [email protected] on 19 Mar 2010 at 5:34

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
[deleted comment]

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
I have a fix for the French and Swiss keyboard layout issues.
There was also a typo in the encoding of unicode characters that prevented from 
typing the Euro sign.
Attached is my patch.

Original comment by [email protected] on 20 Nov 2010 at 7:42

Attachments:

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
Oops I missed a dead key on the Swiss keyboard

-      case 219: /* [            */ ch = this.applyModifiers(91, event); break;
+      // Conflicts with dead key ´ on Swiss keyboards
+      //case 219: /* [            */ ch = this.applyModifiers(91, event); 
break;

Original comment by [email protected] on 20 Nov 2010 at 7:40

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
Happens to in spanish keyboard é.

Original comment by [email protected] on 15 Nov 2011 at 4:46

from shellinabox.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 30, 2024
Patch applied for 2.11.

Original comment by [email protected] on 31 Mar 2012 at 7:20

  • Changed state: Fixed

from shellinabox.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.