"Exotic" characters like þ seem to be seen as - (hyphen) by the keybind engine


#1

I recently switched to Atom, and in trying to get my dev environment set up like I usually do, I tried to bind þ (thorn) to autocomplete. Atom does not see this keybinding, and when using the Key Binding Resolver, it reports the key as a hyphen. Using this works, but also overrides the hyphen key, which prevents me from typing hyphens entirely! Similarly, Þ is seen as an underscore.

I want to do this to use the Caps Lock key to autocomplete, which I bound to Thorn using xmodmap. I’d prefer to keep it as a character key like Thorn rather than switching it to a modifier like Hyper, as the former works in Eclipse and the latter does not. (I use Atom for Node projects and Eclipse for Java.)

I’m running Atom Stable (1.6.2) installed from the AUR package atom-editor under KDE Plasma 5.6.1 on Arch Linux.

In xev, the thorn key shows as follows:

KeyPress event, serial 37, synthetic NO, window 0xfc00001,
    root 0x4bd, subw 0x0, time 584833916, (-1155,777), root:(580,807),
    state 0x10, keycode 66 (keysym 0xfe, thorn), same_screen YES,
    XLookupString gives 2 bytes: (c3 be) "þ"
    XmbLookupString gives 2 bytes: (c3 be) "þ"
    XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0xfc00001,
    root 0x4bd, subw 0x0, time 584834008, (-1155,777), root:(580,807),
    state 0x10, keycode 66 (keysym 0xfe, thorn), same_screen YES,
    XLookupString gives 2 bytes: (c3 be) "þ"
    XFilterEvent returns: False

Is there a way to achieve what I want, or is there a better solution?