7.7. Создание файла /etc/inputrc

7.7. Создание файла /etc/inputrc

Файл /etc/inputrc используется в планировании клавиатуры для специфических ситуаций. Этот файл является стартовым файлом, используемым библиотекой Readline, связанной с вводом и используемой Bash и большинством других оболочек.

Для большей информации смотрите info-страницу bash, раздел Readline Init File. Info-страница readline также хороший источник информации.

Глобальные значения устанавливаюются в /etc/inputrc, а личные значения пользователей - в ~/.inputrc. Файл ~/.inputrc будет заменять глобальный файл установок. Последняя страница настроит Bash для работы с /etc/inputrc если для пользователя нет файла .inputrc во время чтения /etc/profile (обычно при регистрации). Чтобы сделать систему, использующую оба файла, или отрицать глобальную поддерржку клавиатуры, хорошая идея разместить файл .inputrc в директории /etc/skel для использованя новыми пользователями.

Ниже приведен базовый файл /etc/inputrc с коментариями, объясняющими действия некоторых опций. Заметьте, что коментарии не могут быть в той же строке, что и команда.

Для создания .inputrc в /etc/skel, используя команду ниже, измените вывод команды в /etc/skel/.inputrc и после проверьте/установите права доступа. Скопируйте этот файл в /etc/inputrc и домашние директории всех имеющихся в системе пользователей, включая root, которому нужна собственная версия файла. Удостоверьтесь в использовании параметра -p команды cp для поддержки прав доступа и убедитесь в изменении владельца и присвоении группы.

cat > /etc/inputrc << "EOF"
# Begin /etc/inputrc
# Modified by Chris Lynn <roryo@roryo.dynup.net>

# Не выводим ничего в первой строке
set horizontal-scroll-mode Off

# Разрешает 8-и битный ввод
set meta-flag On 
set input-meta On

# Выключаем конвертацию 8-ого бита
set convert-meta Off

# Оставляем 8-ой бит для экрана
set output-meta On

# ничего, видимый или слышимый
set bell-style none

# Все следующее - карта соответствий escape-последовательностей значений, 
# содержащихся внутри первого аргумента, к специфическим функциям 
# readline

"\eOd": backward-word
"\eOc": forward-word

# for linux console
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": beginning-of-history
"\e[6~": end-of-history
"\e[3~": delete-char
"\e[2~": quoted-insert

# for xterm
"\eOH": beginning-of-line
"\eOF": end-of-line

# for Konsole
"\e[H": beginning-of-line
"\e[F": end-of-line

# End /etc/inputrc
EOF