Cannot type characters with option key on macOS#48
Open
cwalther wants to merge 1 commit intomicropython:masterfrom
Open
Cannot type characters with option key on macOS#48cwalther wants to merge 1 commit intomicropython:masterfrom
cwalther wants to merge 1 commit intomicropython:masterfrom
Conversation
On macOS, don’t hijack the option key (mapped to "alt" in the event API) to send escape sequences. It's a character modifier, not a command modifier, and required to type vital characters like [ or \ on some keyboard layouts.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In the HTML client, I am unable to type vital characters like
[or\, because on my Swiss Mac keyboard layout, these are typed as combinations involving the option key ([is option-5,\is option-shift-7), and the terminal widget intercepts the option key (mapped to “alt” in the event API) and uses it to send escape sequences instead. This may be appropriate for the alt key on a PC, but it is not appropriate for the option key on a Mac, which is a character modifier, not a command modifier.The attached commit disables this behavior on macOS, allowing almost all printable ASCII characters to be typed. (There is still a problem with those involving dead-key combinations, like
~, but fortunately these are rarer in Python.)It is possible that the issue could also be fixed by upgrading to a more recent version of xterm.js, but this is a quick and simple fix.
I have been using this for months on Safari with no adverse effects noticed, and have also briefly tested it on Firefox and Chromium.