Некоторые ярлыки двораков не работают. 10.8.2

9

Я только что получил новый Macbook Air, и все были в восторге от написания кода: но потом.

Например, я не могу сделать command+, /что очень ценно при кодировании. Это относится к Command+{

Я пытаюсь использовать стандартный дворак, а не Dvorak-Qwerty (не то, что я тоже хочу), хотя у него точно такая же проблема.

Это происходит как в Netbeans, так и в PHPStorm, что наводит на мысль, что это может быть проблема Mac, а не проблема IDE. Довольно сложно пытаться кодировать, когда некоторые сочетания клавиш не работают. В то время как некоторые , как Command+ C, V, Zработа просто отлично.

Как заставить эти сочетания клавиш работать так же, как и в любой другой операционной системе?

Serhiy
источник
Так что - просто чтобы получить это прямо в моей голове: Вы хотите закомментировать строку с помощью Command Slash - и, поскольку вы используете макет Dvorak, вы фактически нажимаете Command и клавишу с [помечены на нем. Что запускает команду приложения [ярлык?
Диггори
Это правильно.
Сергей
1
Для следующих символов Дворжака: ',. знак равно JVM сообщает код ключа для эквивалента QWERTY в объекте KeyEvent, но отображает символ Дворжака в текстовых полях. Странно ...
kwiqsilver
Да, да, есть какие-нибудь мысли о резолюции?
Сергей

Ответы:

8

Я перепишу здесь мой ответ от SO на ту же проблему:

Оказывается, это проблема в 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.

Обходной путь :

  • Загрузите и установите Karabiner с https://pqrs.org/osx/karabiner/
  • В Системных настройках OSX установите для своей клавиатуры ПК по умолчанию "US International". Если вы не часто вводите диакритические знаки и другие международные символы, вместо этого проще просто установить клавиатуру на «US».
  • В настройках Карабинера введите «dvorak» в поле поиска, затем прокрутите вниз до раздела For U.S. Input Sourceи выберите «Раскладка клавиатуры Dvorak (QWERTY to Dvorak)».
Чарл Бота
источник
Спасибо за все детали, хотя, тьфу, я ненавижу обходные пути, я, скорее всего, просто буду избегать кодирования на своем macbook, как это было годами из-за этого. Я не могу поверить, что Oracle до сих пор не решил эту проблему.
Сергей
Я попытался обойти, но это делает странные вещи в одинарные и двойные кавычки. Когда я впервые нажимаю клавишу, я получаю странную отметку под персонажем. Когда я нажимаю пробел, отметка исчезает, но пробел не появляется, но после этого все в порядке. Когда я нажимаю другой символ, появляется символ, и все в порядке. Я сменил базовый макет в США, и все работает нормально.
kwiqsilver
@kwiqsilver вы должны установить клавиатуру на «US», а не «US International» - вы видите, что OSX помогает вам вводить диакритические знаки, потому что вы выбрали международную клавиатуру. Я использую этот режим, потому что мне часто приходится вводить диакритические знаки. Если нет, то просто установите «США»
Чарл Бота
2

ОК - Я только что загрузил NetBeans и вижу ту же проблему.

Я думаю, что это может быть проблемой JAVA, так как обе упомянутые вами IDE являются приложениями JAVA. Какао-приложения, такие как TextMate, работают нормально.

Это может быть не тот ответ, который вам нужен, но если вы хотите использовать макет Dvorak и правильно работать с клавишами-модификаторами, используйте IDE, которая не написана на JAVA.

Диггори
источник
Спасибо, что попробовали это. Я не думал, что это может быть Java, так как не знал, что PHPStorm построен на Java, но, похоже, это имеет смысл. Я не знаю, какую не-Java IDE использовать, так как я люблю PHPStorm и Netbeans. Считаете ли вы, что это сообщение об ошибке, поданное в Oracle или Apple?
Сергей
Извините - честно говоря, я не знаю, так как я не очень знаком с Java - попробуйте сообщить об этом на bugreport.apple.com. Однако, это может быть проблемой при обработке событий Java.
Диггори
Единственное, что заставляет меня задуматься, это то, как Java может определить, какой ключ вы нажимаете в первую очередь. Я чувствую, что, возможно, проблема со стороны Apple, так как я предполагаю, что об этом нужно позаботиться на более низком уровне событий.
Сергей
Другой вопрос, который меня интересует, заключается в том, что все обновления проходят через Apple. Я слышал, что это небольшая проблема: Oracle не может загружать обновления Java, если они не прошли через Apple в первую очередь, что вызывает серьезные задержки. Кто знает, может быть, это было исправлено и просто застрял в подвешенном состоянии. Хотя в то же время я чувствую, что Java не должна даже осознавать, какую клавишу я нажимаю, на самом деле мне кажется, что это проблема Mac. Я постараюсь сообщить об этом в эти выходные по предоставленной вами ссылке. Скорее всего, даст вам награду, так как никто даже не пытался ответить. Спасибо за помощь.
Сергей
Это не проблема Java. Я использую Eclipse на Mac (также написанный на Java) уже несколько лет без проблем. Установил NetBeans для работы над проектом, который был довольно привязан к NetBeans, и я получаю ту же проблему, упомянутую здесь. Таким образом, это то, что NetBeans делает (или не делает), а не ошибка языка, на котором он был написан.
crowmagnumb
0

Я видел похожую проблему с Xcode и норвежской клавиатурой. В предыдущем вопросе ОП сказал, что его ярлык комментария не работает, и что ярлык исчез из выпадающего списка в навигационной панели OS X.

То, что, казалось, работало, должно было повторно сопоставить ключи к чему-то другому как обходной путь. Вы выбрали « Системные настройки» > « Клавиатура» > « Сочетания клавиш» , а затем « Сочетания клавиш приложения» и добавили новый ярлык. Сделайте заголовок меню точно таким же, как в выпадающем списке OS X, и сопоставьте комбинацию клавиш.

введите описание изображения здесь

Допустим, я, например, хотел переназначить ключи New Tab в Firefox. Вот как это будет выглядеть.


Однако я не уверен, будет ли это работать для приложений Java.

TheBro21
источник
0

В macOS Sierra вы можете выбирать между командами Dvorak и Dvorak (Programmer Dvorak) в Системных настройках. Поэтому мне больше не нужен Карабинер.

devssh
источник