Я попытался сделать это следующим образом (в автозапуске):
setxkbmap -option "ctrl:nocaps"
, и это работает, но только на некоторое время - затем настройка возвращается в исходное состояние. Как я могу сделать его постоянным?
Я использую xfce4-xkb-plugin
в качестве переключателя языка ввода, но, похоже, у него нет опции для установки функции клавиш caps.
Наконец, я нашел то, что искал. Решение: удалить апплет клавиатуры xfce (его не нужно было деинсталлировать, просто удалив его с работающей панели), установите xxkb. Убедитесь, что содержимое ~/.xxkbrc
выглядит примерно так:
XXkb.mainwindow.geometry: 20x20+0+0
XXkb.mainwindow.label.background: black
XXkb.mainwindow.label.foreground: white
XXkb.mainwindow.label.font: -misc-*-r-*-14-*
XXkb.mainwindow.label.text.1: en
XXkb.mainwindow.label.text.2: ru
XXkb.controls.add_when_start: yes
XXkb.controls.two_state: no
XXkb.button.enable: no
И добавьте следующее для запуска при запуске сеанса:
xxkb &
setxkbmap -layout us,<your layout> -option "grp:ctrl_shift_toggle,ctrl:nocaps"
Добавьте опцию setxkbmap в XKBOPTIONS
в /etc/default/keyboard
. Этот файл также используется при запуске sudo dpkg-reconfigure keyboard-configuration
, однако выполнение этой команды не позволяет интерактивно поменять местами Caps Lock и Ctrl, поэтому вам нужно будет отредактировать файл вручную.
Самым простым является создание файла с именем ~/.gconf/desktop/gnome/peripherals/keyboard/kbd/%gconf.xml
с содержанием:
<?xml version="1.0"?>
<gconf>
<entry name="options" mtime="1360937304" type="list" ltype="string">
<li type="string">
<stringvalue>ctrl ctrl:swapcaps</stringvalue>
</li>
</entry>
</gconf>
Если этот файл уже существует или если вы предпочитаете делать это вручную с помощью графического интерфейса пользователя, щелкните настройки Перейдите в верхний правый угол, выберите «Системные настройки», затем «Раскладка клавиатуры», нажмите «Параметры», разверните положение « Ctrl kbd>» и выберите «Swap Ctrl kbd> и Caps Lock kbd>.