IntelliJ 14 сочетания клавиш QWERTY, хотя клавиатура DVORAK
Я
- работает IntelliJ 14
- с использованием макета Mac OS X
- работает на OS X (Yosemite)
IntelliJ использует DVORAK вообще, но не для быстрых клавиш.
сочетания клавиш находятся в QWERTY. Как будто они были основаны на scancode вместо значения ключа после отображения.
Идеи?
изменить 1
@gabriel трудно сказать, но вот несколько примеров...
примечание: m, a и 0-9 одинаковы для DVORAK и QWERTY
cmd+/ 'comment line' flashes code menu and sometimes moves to a brace (/ == {)
cmd+b works, goes to definition (b == n)
cmd+opt+l 'reformat' flashes code menu (l == p)
Ответы
Ответ 1
Оказывается, это проблема в Java, которая существует уже несколько лет и по-прежнему присутствует в Java 9. См. отчет об ошибке здесь: https://bugs.openjdk.java.net/browse/JDK-8022079
В течение нескольких лет JetBrains знает об этой проблеме, но ожидает, что Oracle ее исправит. См. Отчеты об ошибках JetBrains: https://youtrack.jetbrains.com/issue/IDEABKL-6493 и https://youtrack.jetbrains.com/issue/IDEA-63779
В этих отчетах вы найдете обход, используя бесплатный инструмент под названием Karabiner. Я только что проверил, что он работает для IntelliJ. Он, вероятно, также будет работать и для других инструментов на основе Java.
Для OSX раньше, чем Sierra Обход:
- Загрузите и установите Karabiner из https://pqrs.org/osx/karabiner/
- В Системных настройках OSX установите клавиатуру на компьютер по умолчанию "U.S. International". Если вы не часто набираете диакритические знаки и другие международные символы, проще просто установить клавиатуру на "U.S".
- В настройках карабина введите "dvorak" в поле поиска, затем прокрутите вниз до раздела
For U.S. Input Source
и проверьте Use Dvorak Keyboard Layout (QWERTY to Dvorak)
В macOS Sierra, как сообщается пользователем MithrilTuxedo в комментариях, процедура отличается. Вы должны использовать Karabiner Elements (новое ядро Karabiner) с конфигурационным файлом. Я описал процедуру https://cpbotha.net/2016/12/16/dvorak-remapping-with-karabiner-elements-on-macos-sierra-works/ и кратко изложил ее здесь:
- Загрузите и установите элементы Karabiner.
- Скопируйте qwerty_to_dvorak.json из примеров и установите его как новый конфигурационный файл karabiner.json.
- Если Karabiner Elements запущен, он подберет новый файл.
Эта ошибка затронет большинство Java-инструментов, таких как JetBrains (IntelliJ, PyCharm, WebStorm, AppCode) и, возможно, также Netbeans. Обход, описанный выше, должен облегчить проблему во всех случаях.
Ответ 2
JetBrains ждут исправления ошибки в JDK, что, конечно же, никогда не произойдет. другой ответ здесь информативен, но будет работать только в Mac OS, поэтому, если вы работаете в Linux или Windows, вам там не повезло.
Я написал script, чтобы обойти проблему, которую вы можете найти здесь здесь. Если вы обычно используете ключевую карту GNOME в pycharm на linux, то вам повезло - вы можете просто импортировать файл dvorak_settings.jar
и вернуться к кодированию.
В противном случае вы можете использовать script для генерации вашей собственной текстовой карты с ошибкой, считанной...
Оригинальные файлы раскладки клавиатуры расположены в <pycharm>/lib/resources.jar/idea/Keymap_*.xml
.
Пример использования:
./to_dvorak Keymap_Emacs.xml -o Keymap_Emacs_Dvorak.xml
Просматривайте сгенерированный файл и, если он выглядит разумно, упакуйте его в файл .jar
(см. пример dvorak_settings.jar
для требуемой структуры) и импортируйте его в свою среду IDE.
Ответ 3
У меня была аналогичная проблема с использованием комбинаций клавиш, таких как ctrl + n в intellij 16 на Linux (красная шляпа). Я использую клавиатуру Colemak. У меня было две установки источников ввода в моей операционной системе, системные настройки.
-
Английский (США)
-
Английский (Colemak)
Когда я изменил порядок исходных источников и сначала поставил Colemak, проблема, похоже, исчезла.
Системные инструменты > Настройки > Клавиатурa > Источники входных данных
Ответ 4
Эта проблема (наконец!) исправлена в IntelliJ IDEA 2017.1. См. JetBrains выдает JRE-172, "Неверные ключи выбираются на макет dvorak в Mac OSX 10.6.2" .
Он также кажется исправленным в других инструментах JetBrains. Я тестировал, что он исправлен в PyCharm 2017.1, CLion 2017.1 и AppCode 2017.1.