Вот еще один вопрос о переназначении ключей в современных дистрибутивах Linux.

Фон:

Я был пользователем Mac последние шесть лет и пользователем Linux около 20 лет. Это вызвало две проблемы:

  • Кодирование на шведской клавиатуре на Mac ужасно, поэтому я был вынужден использовать американскую раскладку при кодировании
  • Постоянное переключение между раскладками клавиатуры на Linux и Mac

На Mac я сделал некоторые изменения в американском макете, чтобы получить доступ к шведским символам (å, ä, ö). Чтобы получить эти символы на шведской клавиатуре, обычно есть три клавиши справа от клавиатуры. Я переназначил их с помощью Ukelele, чтобы они обычно работали как на американском макете, но с нажатой клавишей "alt" (или «alt +shift») я получаю шведские символы. После некоторого времени, привыкнув к этому, он работает очень хорошо.

Во-вторых, пользователи Linux довольно часто перераспределяют клавиши ctrl-win-alt так, чтобы клавиша win действовала как вторая клавиша ctrl. Это позволяет большинству ярлыков работать одинаково на Mac и Linux. В GNOME (или в твиках GNOME) есть настройка для этого: "Ctrl сопоставлен с Win и обычными клавишами Ctrl".

Но порядок по-прежнему не такой, как на Mac-клавиатуре: у Mac есть "команда опции управления", а на клавиатуре ПК - "Ctrl Win Alt". В настройках GNOME есть еще одна опция: "Alt заменяется Win". К сожалению, GNOME Tweaks допускает только одну из этих опций.

Итак, вот полное переназначение, которое я хочу (на основе макета США):

  • Alt + "[" => å
  • Alt + Shift + "['" => Å
  • Alt + "'" => ä
  • Alt + Shift + "'" => Ä
  • Alt + ";" => ö
  • Alt + Shift + ";" => Ö
  • Левый Ctrl => Левый Ctrl
  • Left Win => Left Alt
  • Левый Alt => Левый Ctrl

К сожалению, кажется, что есть много вариантов, как этого добиться, и все они довольно сложны, поэтому я был бы признателен за любую помощь в этом!

(На Mac я смог сделать это с помощью графического инструмента Ukelele для создания раскладки клавиатуры, которая затем устанавливается, так что я могу переключаться на нее так же легко, как вы можете переключаться между раскладкой в США или Швеции. Очень хорошо.)

Обновить:

У меня есть часть Ctrl/Alt/Win решена. Я создал новый файл (в моем случае с именем "jomag") и поместил его в "/usr/share/X11/xkb/symbols/":

partial modifier_keys              
xkb_symbols "jomag" {     
        key <LALT> { [ Control_L, Control_L ] };     
        key <LWIN> { [ Alt_L, Alt_L ] };             
        modifier_map Control { <LALT>, <LWIN> };     
};                        

Я также добавил строку в /usr /share /X11 /xkb /rules /evdev:

! option     =    symbols
jomag:jomag  =    +jomag(jomag)    <--- this one

Я не уверен, что это было необходимо, хотя.

Я обнаружил, что лучший способ загрузить его - использовать setxkbmap:

setxkbmap -option jomag:jomag

Чтобы перезагрузить, запустите с пустой опцией:

setxkbmap -option
setxkbmap -option jomag:jomag

0