Пользовательский стол

Пользовательский стол

Можно ли в терминале Unix изменить некоторые клавиши клавиатуры?

Например: когда я нажимаю ,, что _печатается?

Если это действительно возможно, как мне это сделать?

Я использую Ubuntu.

решение1

Цитата изздесь:

Пользовательский стол

Вы можете создать свою собственную карту и сохранить ее в своем домашнем каталоге (например, ~/.Xmodmap). Распечатать текущую таблицу раскладки в файл конфигурации:

xmodmap -pke > ~/.Xmodmap

Внесите необходимые изменения в ~/.Xmodmap, а затем протестируйте новую конфигурацию с помощью:

xmodmap ~/.Xmodmap

Чтобы активировать пользовательскую таблицу при запуске Xorg, добавьте следующее:

~/.xinitrc
if [ -f $HOME/.Xmodmap ]; then
    /usr/bin/xmodmap $HOME/.Xmodmap
fi

Либо отредактируйте глобальный сценарий запуска /etc/X11/xinit/xinitrc.

Тестовые изменения

Вы также можете внести временные изменения для текущего сеанса. Например:

xmodmap -e "keycode  46 = l L l L lstroke Lstroke lstroke"
xmodmap -e "keysym a = e E"

Также:

man xmodmapБолее подробную информацию см .

РЕДАКТИРОВАТЬ:

Для ясности: xmodmap ~/.Xmodmapможет использоваться во многих местах, не только при запуске Xorg. Например, у меня есть эти две функции в моем ~/.bashrc:

   # map caps to esc

   mapcaps(){
      xmodmap -e "clear lock"
      xmodmap -e "keycode 0x42 = Escape"
      echo mapcaps: caps-lock set to Escape via xmodmap
   }
   unmapcaps(){
      xmodmap -e "keycode 0x42 = Caps_Lock"
      xmodmap -e "add lock = Caps_Lock"
      echo unmapcaps: caps-lock set to caps-lock via xmodmap
   }

Это нужно для того, чтобы я мог динамически сопоставлять Caps с Esc.

На самом деле ограничений нет. Можете свободно вызывать xmodmap из ~/.xinitrc, ~/.bash_profile, из пользовательского скрипта и т. д.

решение2

Честно говоря, я никогда не пытался сделать то, что вы пытаетесь. Я уже добавлял альтернативные привязки клавиш (комбинации клавиш) для терминала (не X).

Вы можете просмотреть свои привязки клавиш с помощью: showkeyилиshowkey -s

Для проведения дополнительных исследований и внесения изменений вы будете использовать соответствующие программы.

loadkeys dumpkeys keymaps setkeycodes

Для меня сделать изменение в Slackware довольно просто Я потратил некоторое время на поиски в Ubuntu, но не нашел тех же файлов files /usr/share/kbd/keymaps/i386/qwerty/*map.gz. Хотя у меня был доступ только к загруженной системе Ubuntu. У вас может получиться лучше.

решение3

Если вы хотите сделать это в X Windowing System, вы можете использовать Xmodmap. Я никогда не разбирался в синтаксисе, поэтому найдитерабочий пример, и исходить из этого.

Связанный контент