Настройте Caps Lock как AltGr и стрелки как в vim

1. Как мне глобально сопоставить Caps Lock с AltGr ?

Мне не нужен CapsLock, и я бы хотел иметь легкий доступ к ключу AltGr там

2. Я хочу сопоставить все клавиши перемещения с позициями, подобными vim

  • AltGr + F = Backspace
  • AltGr + H = LeftArr
  • AltGr + J = DownArr
  • AltGr + L = RightArr
  • ] AltGr + K = UpArr
  • AltGr + U = PgUp
  • AltGr + D = PgDown
  • AltGr + S = Enter
  • AltGr + 3 = Pos1
  • AltGr + $ = End
  • AltGr + X = Del

Так что я могу легко пройти по своему коду, не отодвигая руку от позиции 10 пальцев (например, в редакторе vim)

Я нашел такой ответ: Как переназначить клавишу блокировки caps на клавишу Backspace?
предлагает использовать

xmodmap -e "keycode [code] = [new key]"

см .: http://wiki.linuxquestions.org/wiki/List_of_Keysyms_Recognised_by_Xmodmap

Но я не могу понять, как добавить это к комбинации например, AltGr + J

Другим началом было бы установить «Альтернативный символьный ключ» в unity-control-center -> Клавиатура-> Горячие клавиши-> Печатать как Caps Lock

Обновить : Я нашел несколько решений (см. Ниже), но все они не работают во всех приложениях, я думаю, это глобальная настройка под названием «XFree 4», которая используется некоторыми приложениями.

Как установить привязки клавиш также для XFree 4?

8
задан 14 July 2017 в 23:48

3 ответа

чтобы заставить AltGr+h, j, k, l или любой другой ключ без любого приложения как Автоключ выполнять ←↓↑→, можно настроить раскладку клавиатуры, найденную в/usr/share/X11/xkb/symbols/. В данный момент я использую немецкое расположение "de". Таким образом, в первую очередь, я был бы:

1-копируют стандартное расположение

cp /usr/share/X11/xkb/symbols/de /usr/share/X11/xkb/symbols/de.bak

2-открывают Ваше расположение с Вашим текстовым редактором предпочтения (здесь: gedit)

sudo gedit /usr/share/X11/xkb/symbols/de 

там Вы собираетесь видеть что-то как:

key <AD03>  { [         e,          E,     EuroSign,     EuroSign ] };
key <AD06>  { [         z,          Z,    leftarrow,          yen ] };
key <AD11>  { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] };
....
....
key <AD12>  { [      plus,   asterisk,   dead_tilde,  macron ]  };
key <AC02>  { [               s,               S,          ssharp,          U017F ] }; 
key <AC06>  { [               h,               H,            Left,             Left ]   }; 
key <AC07>  { [               j,               J,            Down,             Down ]   }; 
key <AC08>  { [               k,               K,              Up,               Up ]   }; 
key <AC09>  { [               l,               L,           Right,            Right ]   }; 
....
....
key <AB10>  { [     minus, underscore,               endash,     emdash ] };
key <LSGT>  { [     less,     greater,                  bar,     NoSymbol   ] };

Как Вы видите, AB, AC, AD, AE представляет строку, и число представляет свою позицию по клавиатуре (существуют некоторые специальные ключи, как менее ключевое, которое может быть повторно отображено на других ключах также..

Там Вы не найдете всю клавиатуру, просто те, который отличается, на основе которого расположение клавиатура. Немецкий основан "на латыни (type4)", как Вы видите на beggining файла:

include "latin(type4)"

Затем просто необходимо измениться согласно потребностям. Это работает как:

ключ {[ключ, key+shift, key+AltGr, key+Shift+AltGr]};

(его также возможный добавление 5-х модификаторов уровня, или больше)

если Вы хотите проверить изменения без перезапуска; (изменяющийся "de" для Вашего расположения... вот список с возможными разметками),

 setxkbmap -layout de

Стрелки маркированы точно так же, как "Покинутыми, Правильными, Вниз", как expeceted. Вот хороший список возможных значений.

вот пример моего пользовательского макета. (но не используемый в данный момент)

Затем необходимо ли было бы повторно отобразить Capslock и AltGr, или он уже работал после вопроса, который Вы отправили??

Если Вы также хотите сохранить "нормальное" немецкое расположение, можно сделать изменения в другом расположении, которое Вы обычно не используете, (или изменяете "немца никакие мертвые клавиши", которые можно найти далее вниз в том же "de" файле...),

Источник: свяжитесь с очень всесторонним объяснением xbk и пользовательских макетов.
свяжитесь с подобным вопросом с хорошим ответом.

0
ответ дан 15 July 2017 в 09:48
  • 1
    @Dan: Я отредактировал ответ 4-го июля для вставки обновленной версии снимка экрана от веб-сайта (точно для включения некоторых модификаций, которые произошли с Wiki). Где находится проблема для Вас в редактировании исходной Wiki, создании нового снимка экрана и затем предложении модификации этого ответа с новым снимком экрана? – Kurt Pfeifle 7 July 2018 в 23:11

Повторно отобразить CapsLock на использование AltGr

xmodmap -e "keycode 66 = ISO_Level3_Shift"

(источник: https://superuser.com/a/138757/160420)

Для отображения клавиш со стрелками на AltGr + h j, k и l, используют xmodmap -pke для нахождения правильных настроек:

xmodmap -pke|egrep "f F|j J|k K|h H|l L|o O|u U|d D|dollar|BackSpace"

и изменение пятый значение к новым ключам и добавляют это все в сценарии удара:

# xrandr needs the desktop to be fully loaded. add a delay, to be able to add it to Startup Applications:
sleep 15
# change BackSpace into AltGr
xmodmap -e "keycode 66 = ISO_Level3_Shift"
# set BackSpace on AltGr + F
xmodmap -e "keycode 41 = f F f F BackSpace BackSpace dstroke ordfeminine f F dstroke ordfeminine"
# create arrow keys at h,j,k,l
xmodmap -e "keycode  43 = h H h H Left Left"
xmodmap -e "keycode  44 = j J j J Down Down"
xmodmap -e "keycode  45 = k K k K Up Up"
xmodmap -e "keycode  46 = l L l L Right Right"
xmodmap -e "keycode  30 = u U u U Prior Prior"
xmodmap -e "keycode  40 = d D d D Next Next"
xmodmap -e "keycode  12 = 3 section 3 numbersign Home Home"
xmodmap -e "keycode  13 = 4 dollar 4 dollar End End"
xmodmap -e "keycode  53 = x X x X Delete Delete"

(источник: https://askubuntu.com/a/466315/34298)

Помещенный, что сценарий удара в Ваш Приложения Запуска (Тире Chooe> Приложения Запуска> Добавляют и добавляют команду.)

Примечание: странно в gnome-terminal это хорошо работает, но в yakuake это работает на BackSpace на AltGr+F, но это устанавливает AltGr+h, j, k и l к D, B, A и C, если Вы не устанавливаете Привязку клавиш на "Linux" вместо" XFree 4 (По умолчанию)", и в sublime-text, это не работает во всем

0
ответ дан 15 July 2017 в 09:48
  • 1
    Я действительно понимаю Вашу мысль - я мог отредактировать Wiki. Однако Ваш ответ является гигантским изображением, которое, по-видимому, останется как есть навсегда, как раз когда Wiki изменяется. Я думаю, что предвзятость стоит упоминания в контексте к Вашему ответу для будущего, Спрашивают читатели Ubuntu. – Dan 7 July 2018 в 08:14

Необходимо отредактировать /usr/share/X11/xkb/symbols/de (где /de язык), и добавьте этот раздел в первом блоке, который Вы используете на своем языке:

            # replace Caps with AltGr
            key <CAPS> { [ ISO_Level3_Shift            ] };
            # Add vim cursor keys to be accessed with AltGr
            key <AB02> { [ x, X, Delete, Delete        ] };
            key <AC02> { [ s, S, KP_Enter, KP_Enter    ] };
            key <AC03> { [ d, D, Next, Next            ] };
            key <AC04> { [ f, F, BackSpace, BackSpace  ] };
            key <AC06> { [ h, H , Left, Left           ] };
            key <AC07> { [ j, J, Down, Down            ] };
            key <AC08> { [ k, K, Up, Up                ] };
            key <AC09> { [ l, L, Right, Right          ] };
            key <AD07> { [ u, U, Prior, Prior          ] };
            key <AE03> { [ 3, section, Home, Home      ] };
            key <AE04> { [ 4, dollar, End, End         ] };

выходят и заходят снова, таким образом, это будет доступно. Только некоторые приложения не принимают настройки, например: yakuake, который может быть заменен guake, и sublime, который может быть заменен atom.

РЕДАКТИРОВАНИЕ: Я узнал, что в yakuake Привязки клавиш установлены на "XFree 4" при установке этого на Liux или Солярис, затем работы настроек XKB там также:

0
ответ дан 15 July 2017 в 09:48
  • 1
    I' m не уверенный, как можно сказать это @Kurt. Смотрите на " Objectives" раздел, как пример. Это показывает AppImage' s цели исключительно, как будто ни один из других проектов не имеет целей. Как будто только цели, что AppImage имеет вопрос. – Dan 4 May 2018 в 07:16

Другие вопросы по тегам:

Похожие вопросы: