Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Dead keys aren't interpreted correctly when typing accented letters (Linux) #7648
Version of OpenTTD: 1.9.2
Arch Linux x64 (with XFCE desktop) fully updated as of July 2019
Typing an accented letter (with dead keys) in a text box generates the accented character only
The accent is generated in the text box on the first keypress, and the accented character appears after it on the second keypress
Steps to reproduce
(Note that some of the upper part of the accents may be obscured by the top of the text box. On closing the text box, the accents are shown in full in the game, but with the error described above.)
On OSX, running an older version (1.6.1), observed behaviour is that on pressing AltGr+6 a silhouetted ? character appears, and then on pressing w it is replaced with a ŵ. I presume this is the intended behaviour.
I can't reproduce your problem in OpenTTD 1.9.3 on OpenBSD 6.6 amd64. I changed to layout "English (UK)", "English (UK, extended WinKeys)" in Xfce, Settings, Keyboard. Now AltGr+6 w types ŵ and AltGr+[ e types ë. I can type both ŵ and ë in OpenTTD. There's no "silhouetted ?"; nothing appears until I type both the dead key and the next key.
I'm not sure how your system differs from mine. I haven't changed my font in OpenTTD; I do see ŵ and ë, so the font must have them. I compiled OpenTTD 1.9.3 from source; it uses libSDL from OpenBSD package sdl-1.2.15p10, and ICU libraries from icu4c-64.2p0. I didn't find any keyboard fixes in the changes from OpenTTD 1.9.2 to 1.9.3.
Thank you for attempting to reproduce my error, and explaining the expected behaviour. I now have version 1.9.3 installed, and still find the same faulty behaviour.
I'm using the pre-built Arch package, but rebuilding 1.9.3 from source displays the same issue.
I currently have sdl 1.2.15-13 and icu 64.2-1 installed, so there doesn't appear to be a mis-match there.
I've double-checked that my keyboard settings in XFCE match. Dead keys work in other applications (such as a Terminal window) as expected. localectl reports:
If you can suggest any other avenues of investigation, I'd be happy to try them.
Thanks, Eddi-z. I've downloaded and build the latest nightly build (20191019-master). In this build,the fault is gone, and the dead keys operate as expected. I would therefore conclude that this was a symptom of a bug in SDL 1.2, as described in #7296 , and is now resolved by switching openttd to use SDL 2.0, as detailed in #7086 .
I look forward to the release of OpenTTD 1.9.4 with the above fix!