Закрепить определенную клавишу

Похоже, это проблема с upower. Я бы порекомендовал обновиться до последней версии upower -git, если она есть в вашем дистрибутиве. Я лично только что удалил менеджер xfce4 -power -Вы также можете попробовать изменить :GRUB _CMDLINE _LINUX _DEFAULT="тихий всплеск" к GRUB _CMDLINE _LINUX _DEFAULT="тихий процессор заставки.игнорировать _ppc=1" в /etc/default/grub и посмотрите, поможет ли это кому-нибудь.

1
26.12.2020, 22:01
1 ответ

В X11 один из способов добиться этого — использовать XKB и заставить правую клавишу Alt установить текущий режим фиксации как AltGr. Есть несколько способов сделать это:

Вариант 1

Вы можете экспортировать текущую раскладку клавиатуры в файл, изменить только поведение правой клавиши Alt (AltGr )и загрузить ее обратно в X, переопределив раскладку по умолчанию:

  1. Запустите xkbcomp $DISPLAY current.xkb, чтобы экспортировать текущую раскладку клавиатуры.

  2. Откройте файл current.xkbи найдите следующий фрагмент:

    key <RALT> {
        type= "ONE_LEVEL",
        symbols[Group1]= [ ISO_Level3_Shift ]
    };
    
  3. Измените его следующим образом:

    key <RALT> {
        type= "ONE_LEVEL",
        symbols[Group1]= [ ISO_Level3_Shift ],
        actions[Group1]= [ LatchMods(mods=AltGr) ]
    };
    
  4. Сохраните файл и запустите xkb current.xkb $DISPLAY, чтобы применить новый макет.

Предостережения

  1. Новый макет подходит только для текущего X-сеанса. Вы, вероятно, захотите перезагрузить его автоматически после входа в систему. Если вы используете оконный менеджер, просто добавьте xkb current.xkb $DISPLAYк вашему .xinitrcили .xprofile. Если вы используете среду рабочего стола, это может быть немного сложнее, потому что DE обычно обрабатывают раскладки клавиатуры по-своему и могут переопределять локальные конфигурации. Обязательно проверьте их документы или попробуйте Вариант 2 ниже.

  2. Если вы используете несколько языков клавиатуры, вам потребуется повторить шаги, описанные выше, для каждого экспортированного файла xkb и каким-либо образом загрузить их при необходимости (, например. используя ярлык для каждого языка ).

Вариант 2

Вы можете создать новую опцию XKB, которая активирует желаемое поведение клавиши AltGr, а затем активировать ее вместе с раскладкой языка:

  1. Создайте файл в /usr/share/X11/xkb/symbolsс именем altgrсо следующим содержимым:

    partial alphanumeric_keys
    xkb_symbols "latch" {
        key <RALT> {
            symbols = [ ISO_Level3_Shift ],
            actions = [ LatchMods(mods=AltGr) ]
        };
    };
    
  2. Откройте файл evdevв /usr/share/X11/xkb/rulesи найдите строку ! option = symbols. Добавьте после нее новую строку и вставьте altgr:latch = +altgr(latch). Это будет выглядеть следующим образом:

    ! option  = symbols
      altgr:latch = +altgr(latch)
     ...
    

    +altgr(latch)означает, что использует группу latchиз файла altgr, расположенного в/usr/share/X11/xkb/symbols.

Теперь вам нужно активировать новую опцию. Вы можете выполнить одно из следующих действий:

  1. Запустите setxkbmap -layout us -variant altgr-intl -option altgr:latch, чтобы активировать новую опцию, заменив usи altgr-intlвашим языком и вариантом. Это будет продолжаться для текущего X-сеанса (, полезного для тестирования ), и вы можете добавить его в .xinitrcили .xprofile, чтобы он загружался автоматически при входе в систему.

  2. Если вы используете systemd, запустите sudo localectl --no-convert set-x11-keymap us pc104 altgr-intl altgr:latch, чтобы обновить конфигурацию клавиатуры в /etc/X11/xorg.conf.d.

  3. При использовании среды рабочего стола может быть способ активировать параметр при загрузке раскладки клавиатуры. Я знаю, что GNOME использует dconf, и вы можете установить параметры для XKB в org.gnome.desktop.input-sources.xkb-options.

Внимание

Файлы XKB в /usr/share/X11/xkbне предназначены для прямого редактирования и могут быть переопределены при обновлении системы. «Правильный способ» изменить конфигурацию XKB слишком сложен , и я предлагаю вам просто создать сценарий, который (re )применяет новую опцию при необходимости.

2
28.05.2021, 04:21

Теги

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