GNOME Bugzilla – Bug 655357
dead keys acute and diaeresis under windows
Last modified: 2011-07-28 06:24:33 UTC
Created attachment 192680 [details] [review] Patch against the HEAD git repository. On Windows, user expectation is that typing a dead acute or a dead diaeresis will emit an apostrophe or a double quote respectively. The default X behavior is to double the dead character, so we need to escape those. The patch attached implements this behavior, and fix the comments and implementation which were describing and implementing the opposite. Tested on Windows XP and Vista 64.
The user expectation depends on the user and keyboard layout... I very much expect dead acute or dead diaeresis keys work in GTK+ as they should, and do, on my Swedish keyboard: i.e. combine with the next letter typed. My keyboard layout has separate keys for apostrophe (ascii single quote) and double quote... the dead acute and diaeresis keys are not overloaded. I guess you might be using the "US International" keyboard layout, which if I recall correctly confusingly overloads the same keys for both dead acute and single quote functionality, and for dead diaeresis and double quote? In that case, this is probably a duplicate of bug #569581 .
This patch still allows to combine dead acute + 'e' for instance and get 'é'. Note that the patch gives the same behavior other applications get (e.g. notepad, wordpad) under Windows, so Gtk+ is really doing something different here which users do NOT expect. Tor, did you try the suggested patch? If so, does it cause troubles for you? Thanks in advance for considering this patch. Arno
Yes this is with US International, and is indeed a duplicate of bug #569581 - thanks for the pointer. (I will leave my patch in place in my Gtk+ distribution until bug #569581 is solved - it does not prevent inputting of accented letters, but without it the users of US International keyboards have no way of writing an apostrophe except by switching layouts or copy-pasting one.)
*** This bug has been marked as a duplicate of bug 569581 ***
I've tried the patch, but for me it produce more inconsistency with other windows applications - at least with a German keyboard. So it might fix something with US International but introduces regressions for localized keyboards, e.g. accent+space was producing the accent alone as explained in the original comment. Now it gives a single quote.
<< Now it gives a single quote. >> Yes, that's one of the points of the change, to get single quote characters, otherwise there's no way to get these single quote chars, which is really blocking for e.g. a source code editor. Isn't that what you get in other applications (e.g. notepad/wordpad)?
Nope - with the german keyboard I have all the keys I need for software development ready available - and all I tested behave consistent between Gtk+ application (tested with Dia) and e.g. Notepad. This is including key combinations like áéúó and all the other ones: ´^´ but please don't let us repeat all the discussion which already happened in bug 569581. And before braking stuff for non US Intl keyboards please consider the patch at bug 569581 comment 10: http://bugzilla-attachments.gnome.org/attachment.cgi?id=127725
OK fair enough. Hopefully the patch you mentioned or a variation thereof will find its way in the repository. Thanks for the discussion, very useful. Arno