Как установить ограничение nofile на rsyslog с помощью upstart?

В этом ответе объясняется, как установить международную расширенную раскладку клавиатуры Дворака, найденную в этой статье Арьена ван Кола. Установка и настройка были довольно простыми с использованием XKB.

Установите новый макет

Загрузите файл макета dvorak_intl из статьи по ссылке. Затем скопируйте файл как суперпользователь в /usr/share/X11/xkb/symbols/ с тем же именем файла.

sudo cp dvorak_intl /usr/share/X11/xkb/symbols/dvorak_intl

Нет необходимости в дальнейшем изменении разрешения. Для любопытных пользователей используйте команду stat для проверки разрешения. Разрешение по умолчанию 644.

$ ls -l /usr/share/X11/xkb/symbols/dvorak_intl 
-rw-r--r-- 1 root root 2989 May 14 17:32 /usr/share/X11/xkb/symbols/dvorak_intl

$ stat -c '%a %n' /usr/share/X11/xkb/symbols/dvorak_intl 
644 /usr/share/X11/xkb/symbols/dvorak_intl

Применить новый макет

Перед внесением изменений запустите setxkbmap -query, чтобы проверить текущий макет на случай, если мы захотим отменить изменения позже. По умолчанию макет us.

$ setxkbmap -query
rules:      evdev
model:      pc105
layout:     us   <-- current layout

Теперь запустите команду setxkbmap, чтобы установить новую раскладку клавиатуры. Опция -verbose была добавлена ​​для просмотра вывода, который в противном случае ничего не покажет.

$ setxkbmap -verbose dvorak_intl
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+dvorak_intl+inet(evdev)
geometry:   pc(pc105)

Пользователь может снова запустить setxkbmap -query, чтобы проверить изменения, которые были сделаны и теперь отображаются в столбце макета.

$ setxkbmap -query
rules:      evdev
model:      pc105
layout:     dvorak_intl   <-- new layout

Тест нового макета

Изменения вступят в силу немедленно; вообще не нужно выходить из системы или перезагружать X-сервер. Откройте текстовый редактор, затем нажмите каждую клавишу из четырех рядов на клавиатуре, чтобы увидеть вывод.

Клавиши первого и второго уровня (без и с Shift):

`1234567890[]
~!@#$%^&*(){}

´,.pyfgcrl/=\
¨<>PYFGCRL?+|

aoeuidhtns-
AOEUIDHTNS_

;qjkxbmwvz
:QJKXBMWVZ

Клавиши третьего и четвертого уровня (с AltGr и Shift+ AltGr):

 ¡ ♯         
         []{}

´¸…    č     
 «»¶     ¿ 

å°əŭ     ß—
Å  Ŭ      ¯

   ĸ×     

Не уверен, что отсутствуют какие-либо клавиши для третьего и четвертого уровней раскладки клавиатуры dvorak_intl, так как я не привык печатать на этих уровнях.

Сделать макет постоянным

Команда setxkbmap сама по себе эффективна только для текущего сеанса. Однако можно добавить следующую команду для запуска приложений в соответствующей среде рабочего стола.

setxkbmap LAYOUTNAME

Чтобы LAYOUTNAME устанавливалось каждый раз, когда пользователь входит в систему и запускается сеанс рабочего стола. Выйдите из системы и войдите снова, затем откройте Терминал и запустите setxkbmap -query, чтобы убедиться, что новая раскладка клавиатуры применялась для каждого сеанса.

Настройка для системы, отличной от Debian

Если обновление системы перезаписывает файл конфигурации в /usr/share/X11/xkb/symbols, пользователь может переместить файл конфигурации макета в другое место. - возможно, домашний каталог - и удалить из системного каталога, чтобы быть уверенным.

$ mkdir -p ~/.xkb/symbols  
$ cp /usr/share/X11/xkb/symbols/dvorak_intl ~/.xkb/symbols  
$ sudo rm -i /usr/share/X11/xkb/symbols/dvorak_intl  

Затем загрузите оттуда конфигурацию макета, используя команду с параметром -I. Это работает аналогично.

$ setxkbmap -I ~/.xkb dvorak_intl
$ setxkbmap -query
rules:      evdev
model:      pc105
layout:     dvorak_intl

Таким образом, вместо setxkbmap ИМЯ ПЛАНЕТА добавьте setxkbmap -I ~/.xkb ИМЯ ПЛАНЕТА для запуска приложения в соответствующей среде рабочего стола, чтобы загружать конфигурацию клавиатуры для каждого сеанса.

Несоответствие в Debian

Если команда возвращает сообщение «Ошибка при загрузке нового описания клавиатуры» (как описано в этом старом сообщении на Unix.SE), используйте вместо этого следующую команду.

$ setxkbmap -I ~/.xkb dvorak_intl -print | xkbcomp -I$HOME/.xkb - $DISPLAY
Warning:          Type "ONE_LEVEL" has 1 levels, but  has 2 symbols
                  Ignoring extra symbols
Warning:          Key  not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
...
Warning:          No symbols defined for  (keycode 253)

Как ни странно, последняя команда возвращает много предупреждающих сообщений, которые могут быть связаны с моей иностранной моделью клавиатуры (японский вариант раскладки клавиатуры OADG 109A). Кроме того, изменения не будут отражены в setxkbmap -query, но при вводе работают должным образом.

Протестировано с использованием setxkbmap 1.3.0 в Xubuntu 14.04 (Xfce 4.10), Debian Xfce 8 (Xfce 4.10) и Debian 8.7 Gnome 3.14.

Отказ от ответственности: Этот ответ предназначен для того, чтобы показать, как использовать XKB для установки и настройки новой раскладки клавиатуры. Исходная инструкция была найдена в репозитории workman/xorg, в котором упоминались как устаревший, так и текущий пути (тогда для Ubuntu 10.04, GNOME 2.30). Тем не менее, инструкция была протестирована для среды, отличной от GNOME, то есть для Xfce.

Устаревшие инструкции, содержащиеся в файле dvorak_intl, скорее всего, предназначались для более старых выпусков GNOME и больше не действительны для современных дистрибутивов, которые мы используем сегодня. В то время как устаревший путь находится по адресу /etc/X11/xkb/symbols/, текущий путь находится по адресу /usr/share/X11/xkb/symbols/.

Клавиша AltGr относится к клавише создания сообщения. Он не назначается по умолчанию (по крайней мере, в Xfce) или обычно клавише Right Alt, в зависимости от используемого дистрибутива Linux.Хотя я включил клавишу создания для демонстрации клавиш третьего и четвертого уровней, настройка клавиши создания , а не показана выше.

1
15.12.2015, 21:37
0 ответов

Теги

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