GNOME Bugzilla – Bug 575883
pressing key <Z> is inconsistent with Ctrl-<Z> (and Ctrl-<Y>) in some keyboard layouts
Last modified: 2014-04-22 17:01:19 UTC
Please describe the problem: This is a follow-up to http://bugzilla.gnome.org/show_bug.cgi?id=375112 Is it possible to make this feature (i.e. calling vte_translate_national_ctrlkeys()) configurable? I have a dual Hungarian--US English keyboard layout with Hungarian being the default. In the Hungarian layout the keys Y and Z are switched with respect to the US English layout. So when I have the Hungarian layout active, one of the keys yields the string "z", but when I press that key with Ctrl, I get "^Y", instead of what I expect ("^Z"). All other applications (e.g. GIMP, Firefox, xterm) work as expected, except for those using VTE, because VTE has the vte_translate_national_ctrlkeys() function, which converts my Ctrl-Z event to a Ctrl-Y. Please make this feature configurable. Thanks. Steps to reproduce: 1. Set X session Hungarian keyboard layout as default, and US English as secondary. 2. Start Gnome Terminal. 3. Switch to US english layout. 4. Type "cat", press <Enter> 5. Press <Y>. The character "z" appears. 6. Press Ctrl-<Y>. The characters "^Y" appears. Actual results: 6. The characters "^Y" appear. Expected results: 6. The characters "^Z" appear. Does this happen every time? Yes. Other information: I've verified it that If I remove the call keyval = vte_translate_national_ctrlkeys(event) from vte.c, the problem is solved.
I can fully confirm this bug with a german keyboard, and that the proposed fix solves the problem, without any noticeable side effects. Could this be committed?
Works here on vte master (tested in de keyboard which has the same y/z transposition); closing. The proposed 'fix' would regress other bugs, so no, it can't be committed as-is. If you can still repro this on vte master, please re-open the bug.