Так. Наша ціль:
В віконних менеджарах аля wmii, fluxbox, openbox etc
1) налаштувати xxkb на роботу з розкладками для кожного вікна, показувати пропорці країн обраної мови-розкладки.
2) мати змогу перемикатись з варіанту розкладки en-ru на en-ru-ua та навпаки миттєво, не перезавантажуючи xorg.
PS: я рідко користуюсь українською, тому такі вимоги. Після цоьго маленького howto налаштуйте так, як вам треба.
Перше.
Встановити пакет xxkb.
Друге.
В xorg.conf додати параметри розкладок:
Option "XkbLayout" "us,ru,ua"
Option "XkbVariant" ",winkeys,winkeys"
та перезавантижити ікси.
Третє.
в ~ директорії створіть файл ~/.xxkbrc_ru такого змісту:
XXkb.group.base: 1
XXkb.group.alt: 2
XXkb.button.xpm.1: en15.xpm
XXkb.button.xpm.2: ru15.xpm
## XXkb.button.xpm.3: ua15.xpm
XXkb.button.xpm.4:
XXkb.button.enable: yes
XXkb.button.geometry: 15x15+22+3
XXkb.button.gravity: NorthEast
XXkb.bell.enable: no
XXkb.bell.percent: -50
XXkb.controls.mainwindow_delete: yes
XXkb.controls.button_delete: yes
XXkb.controls.add_when_create: yes
XXkb.controls.focusout: no
## XXkb.controls.two_state: no
XXkb.controls.two_state: yes
XXkb.controls.add_when_change: no
XXkb.controls.add_when_start: yes
XXkb.controls.button_delete_and_forget: yes
XXkb.app_list.wm_name.ignore: notification-area-applet Authentication Indicator mixer_applet2 Authentication Indicator Authentication Indicator Authentication Indicator Authentication Indicator kicker MPlayer
XXkb.app_list.wm_class_class.ignore: kdesktop xmms Stardict Grip
XXkb.app_list.wm_class_name.ignore: korgac klipper
XXkb.mousebutton.1.reverse: no
XXkb.mousebutton.3.reverse: no
XXkb.mainwindow.xpm.1: en48.xpm
XXkb.mainwindow.xpm.2: ru48.xpm
## XXkb.mainwindow.xpm.3: ua48.xpm
XXkb.mainwindow.xpm.4:
XXkb.mainwindow.enable: no
XXkb.mainwindow.appicon: no
XXkb.mainwindow.geometry: 48x48
XXkb.ignore.reverse: no
та файл ~/.xxkbrc_ua наступного змісту:
XXkb.group.base: 1
XXkb.group.alt: 2
XXkb.button.xpm.1: en15.xpm
XXkb.button.xpm.2: ru15.xpm
XXkb.button.xpm.3: ua15.xpm
XXkb.button.xpm.4:
XXkb.button.enable: yes
XXkb.button.geometry: 15x15+22+3
XXkb.button.gravity: NorthEast
XXkb.bell.enable: no
XXkb.bell.percent: -50
XXkb.controls.mainwindow_delete: yes
XXkb.controls.button_delete: yes
XXkb.controls.add_when_create: yes
XXkb.controls.focusout: no
XXkb.controls.two_state: no
## XXkb.controls.two_state: yes
XXkb.controls.add_when_change: no
XXkb.controls.add_when_start: yes
XXkb.controls.button_delete_and_forget: yes
XXkb.app_list.wm_name.ignore: notification-area-applet Authentication Indicator mixer_applet2 Authentication Indicator Authentication Indicator Authentication Indicator Authentication Indicator kicker MPlayer
XXkb.app_list.wm_class_class.ignore: kdesktop xmms Stardict Grip
XXkb.app_list.wm_class_name.ignore: korgac klipper
XXkb.mousebutton.1.reverse: no
XXkb.mousebutton.3.reverse: no
XXkb.mainwindow.xpm.1: en48.xpm
XXkb.mainwindow.xpm.2: ru48.xpm
XXkb.mainwindow.xpm.3: ua48.xpm
XXkb.mainwindow.xpm.4:
XXkb.mainwindow.enable: no
XXkb.mainwindow.appicon: no
XXkb.mainwindow.geometry: 48x48
XXkb.ignore.reverse: no
Параметри XXkb.app_list.wm_name.ignore, XXkb.app_list.wm_class_class.ignore та XXkb.app_list.wm_class_name.ignore я залишив для прикладу (read man xxkb)
Також, в директорії, де ви складуєте свої повсякденні скрипти, треба скласти такий виконуваний скриптик, в мене це ~/scripts/rxkb:
#!/bin/bash
cp ~/.xxkbrc_$1 ~/.xxkbrc
killall xxkb; xxkb &
Четверте:
Тепер все просто: в терміналі - ~/scripts/rxkb ru або ~/scripts/rxkb ua. На ці комбінації можна видумати кей-біндінги в WM, якцо він це дозволяє. Користуватись результатом можна миттєво.
- Розкладки перемикаются такими кнопками, як ви задали в xorg.conf;
- розкладок буде стільки, скільки вказано в поточному ~/.xxkbrc, лише в xorg.conf вони повинні бути всі.
- порядок розташування прапорців XXkb.mainwindow.xpm.N та кнопок XXkb.button.xpm.N на них повинні бути такими, як порядок розкладок в xorg.conf (кнопка потрібна, щоб можна було мишою клоцати по прапорцю, розкладка буде змінюватись на наступну);
- Розміри прапорців XXkb.button.geometry та їх розташування відносно краю верхньої панелі вікна редагуються, додавайте + або -, різні цифрі і ви все зрозумієте.
П'яте:
Не забудьте в startup скрипт свого WM написати щось тіпа xxkb & в потрибному місці, щоб xxkb стартував з менеджером вікон. В флюксі це стрипт ~/.fluxbox/startup
В мене все.
Востаннє редагувалося drfn (2007-08-31 21:43:05)