Я пользователь макета Dvorak, и я доволен переключателем. Я избежал недостатка «отменить / вырезать / копировать / вставить» (z, c, x и v значительно отличаются друг от друга в макете Dvorak) в Windows с помощью средства создания макетов клавиатуры Microsoft для сопоставления сочетаний клавиш с их аналогами qwerty, но это ошибка мне, что я не могу сделать то же самое в Ubuntu / Linux, хотя он имеет более продвинутую структуру ввода.
dvorak-querty должен выполнить это, но не работает для меня.
Комментарии к ошибкам , на которые ссылается предыдущий аналогичный вопрос , не обеспечивают приемлемого обходного пути для этого.
Так есть ли что-то, что я могу сделать, не дожидаясь (годами) исправления ошибок, как, например, написание пользовательской раскладки клавиатуры или плагина ibus?
Разъяснение (еще один способ задаю мой вопрос)
Есть ли способ использовать позицию сочетания клавиш QWERTY, когда раскладка Dvorak активна? Например, чтобы «Скопировать», я должен нажать Ctrl + I (позиция «I» на QWERTY - это «C» на Дворжаке, что является неловким натяжением), затем для «Вставить» я должен нажать Ctrl + , (еще одна неловкая позиция). Я хочу нажать Ctrl + C и Ctrl + V. В настоящее время я использую ярлыки в старом стиле, которые я выучил из DOS-эры, Shift-Del для вырезки и Ctrl + Insert для копирования ...
Моя первая попытка состояла в том, чтобы заставить клавиши CTRL действовать одновременно как Управление и как дважды косвенный селектор, затем определить раскладку клавиатуры с Dvorak на уровнях 1 и 2 и Стандартным расположением букв на клавиатуре на уровнях 3 и 4. Это не кажется возможным в XKB, как бы то ни было. Кроме того, комментарии в источнике программы стандартного расположения букв на клавиатуре Дворака Вы связали состояние это
Хотя возможно определить расположение XKB, которое реализует Стандартное расположение букв на клавиатуре Дворака, делание так выставляет угнетающее количество ошибок через плату в X приложениях. Так как это - обязанность каждых X приложений интерпретировать саму раскладку клавиатуры, вместо того, чтобы иметь X-сервер делают работу, различные платформы GUI на самом деле имеют тенденцию иметь различные ошибки, которые умирают при использовании такого расположения. Фиксация их всех была бы неосуществима.
Ваш лучший выбор состоит в том, чтобы, вероятно, получить работу взлома стандартного расположения букв на клавиатуре Дворака. Большая часть того, что я собираюсь записать Вам, вероятно, знает. Источник говорит для компиляции его с
gcc xdq.c -o xdq -std=c99 -O2 -lX11
затем выполните его с
./xdq
или дайте полный путь, таким образом, можно поместить его в объекты запуска.
Когда я запустил программу, она дала мне соблюдающее предупреждение:
Не удалось захватить 35 сочетаний клавиш. Это, вероятно, потому что некоторые горячие клавиши уже захватываются за систему. К сожалению, эти горячие клавиши в масштабе всей системы не могут быть автоматически повторно отображены этим инструментом. Однако можно обычно настраивать их вручную.
Однако я протестировал его с ^W
, ^Q
, ^C
, ^X
, и ^V
, и это работало как ожидалось. Если Вы хотите, чтобы это захватило другие модификаторы (ALt+Ctrl
и Super
) комбинации, которые система уже использует для других вещей, добавляют -DXQD_GREEDY
(нет -DXDQ_GREEDY
как источник говорит) к команде компиляции.
Если этому не удалось скомпилировать с ошибкой
xdq.c:87:22: фатальная ошибка: X11/Xlib.h: Никакая такая компиляция файла или каталога не завершается.
затем необходимо установить пакет libx11-dev
с
sudo apt-get install libx11-dev
Если это не получает работу программы, сообщите мне, и мы можем попытаться разработать его.
Вам необходимо отключить NumLock.
Дворак-Кверти работает, «захватывая» (более «похищая») комбинации клавиш из других программ. Комбинации, которые включают определенные модификаторы (Control, Control + Shift, Alt и Alt + Shift), украдены, "qwerty'd" и возвращены в исходную программу.
Проблема в том, что эти и только те, являются единственными комбинациями модификаторов, которые украдены. Другие модификаторы, такие как CapsLock и NumLock, не украдены.
Поэтому, если у вас активен NumLock и вы нажали Ctrl + C, dvorak-qwery «воспримет» NumLock + Ctrl + C и, следовательно, не украдет его.
Поэтому отключите любые дополнительные неявные модификаторы, которые вы видите на клавиатуре.
Если вы хотите запустить dvorak-qwerty и одновременно включить NumLock, вы можете попробовать мою версию кода (см. Аргументы )
:)
Для тех, кто смотрит на этот вопрос 7 лет спустя и вне, вот то, что работало на меня (никакое необходимое кодирование!):