{"action":"created","issue":{"url":"https://api.github.com/repos/openstenoproject/plover/issues/246","labels_url":"https://api.github.com/repos/openstenoproject/plover/issues/246/labels{/name}","comments_url":"https://api.github.com/repos/openstenoproject/plover/issues/246/comments","events_url":"https://api.github.com/repos/openstenoproject/plover/issues/246/events","html_url":"https://github.com/openstenoproject/plover/issues/246","id":98284639,"number":246,"title":"OSX: Keyboard events send keycode zero","user":{"login":"balshetzer","id":1846726,"avatar_url":"https://avatars.githubusercontent.com/u/1846726?v=3","gravatar_id":"","url":"https://api.github.com/users/balshetzer","html_url":"https://github.com/balshetzer","followers_url":"https://api.github.com/users/balshetzer/followers","following_url":"https://api.github.com/users/balshetzer/following{/other_user}","gists_url":"https://api.github.com/users/balshetzer/gists{/gist_id}","starred_url":"https://api.github.com/users/balshetzer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/balshetzer/subscriptions","organizations_url":"https://api.github.com/users/balshetzer/orgs","repos_url":"https://api.github.com/users/balshetzer/repos","events_url":"https://api.github.com/users/balshetzer/events{/privacy}","received_events_url":"https://api.github.com/users/balshetzer/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-07-30T23:19:29Z","updated_at":"2015-07-31T09:35:19Z","closed_at":null,"body":"All keyboard events in OSX send keycode zero but they also set the string. Most apps honor the string but some do not. Those that do not will see all of our key strokes as the letter A (at least when the keyboard is set to be the US keyboard). Ideally, the other app would just honor the string but we can mitigate the situation by sending the correct keycode, when possible. \r\n\r\nThere are a couple of options. We can just assume the keyboard is set to US English and choose those keycodes. A better option would be to find out what the current keyboard is and send the right codes for that keyboard. The problem with either solution is that this means the user cannot type things that don't exist on that keyboard. But maybe that's the best we can do."},"comment":{"url":"https://api.github.com/repos/openstenoproject/plover/issues/comments/126622636","html_url":"https://github.com/openstenoproject/plover/issues/246#issuecomment-126622636","issue_url":"https://api.github.com/repos/openstenoproject/plover/issues/246","id":126622636,"user":{"login":"Achim63","id":10847639,"avatar_url":"https://avatars.githubusercontent.com/u/10847639?v=3","gravatar_id":"","url":"https://api.github.com/users/Achim63","html_url":"https://github.com/Achim63","followers_url":"https://api.github.com/users/Achim63/followers","following_url":"https://api.github.com/users/Achim63/following{/other_user}","gists_url":"https://api.github.com/users/Achim63/gists{/gist_id}","starred_url":"https://api.github.com/users/Achim63/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Achim63/subscriptions","organizations_url":"https://api.github.com/users/Achim63/orgs","repos_url":"https://api.github.com/users/Achim63/repos","events_url":"https://api.github.com/users/Achim63/events{/privacy}","received_events_url":"https://api.github.com/users/Achim63/received_events","type":"User","site_admin":false},"created_at":"2015-07-31T09:35:19Z","updated_at":"2015-07-31T09:35:19Z","body":"I have yet to find a program where Plover doesn't work in OSX. As for Anki: there's so many alternatives, e.g. the free ProVoc which I use for years now. So I wouldn't tweak Plover to adjust for apps that don't conform to standard behavior in their input fields - this might lead to many problems for users of non-US keyboards and introduce other new bugs. I was rather surprised (and glad) that Plover doesn't interfere with all the key combinations outside of the part of the keyboard it uses.\r\n\r\nYour first \"solution\" would mean for me having to change the keyboard layout to US English every time I want to use Plover.\r\n\r\nThe second solution would be rather elaborate (-> bugs) and time-consuming and would probably prevent me from using e.g. \"ñ\" or accents if I want to type Spanish with my German keyboard (or some borrowed French words, or the Ohm sign \"Ω\" etc.) while Plover is running. As they say: never change a running system ...\r\n"}}