| Standards, Environments and Macros |
icewm-keys - конфигурационный файл клавиш icewm
$ICEWM_PRIVCFG/keys
$XDG_CONFIG_HOME/icewm/keys
$HOME/.icewm/keys
/etc/icewm/keys
/usr/share/icewm/keys
Файл keys определяет глобальные сочетания клавиш для запуска приложений. Определение сочетания клавиш состоит из трёх частей: слова key, строки в двойных кавычках с комбинацией клавиш X11 и программы с её аргументами. Они разделяются одним или более пробелами. Пустые строки разрешены. Строки комментариев начинаются с хэша (#).
Например, следующая строка определяет горячую клавишу для перезапуска icewm:
key "Ctrl+Shift+r" icesh restart
См. вывод xmodmap -pk для просмотра списка множества названий нажимаемых клавиш, которые Вы можете использовать в определениях клавиш icewm. Начиная с IceWM версии 3.4.0, сочетания могут быть определены не только названиями их клавиш, но также их метками клавиш. Дополнительно теперь могут быть определены клавиши, меняющие значение при нажатии Shift. Например, клавиша с "+" и "=" может быть связана любым из следующих четырёх идентичных способов:
key "Ctrl+Shift+equal" xterm
key "Ctrl+Shift+=" xterm
key "Ctrl+plus" xterm
key "Ctrl++" xterm
Чтобы привязать мышь, используйте Pointer_Button1 для кнопки 1 и т.д. Это работает только когда указатель мыши находится над корневым окном. См. примеры ниже.
Иногда вы можете захотеть запустить только один экземпляр приложения. Для этого используйте ключевое слово runonce, которое получает дополнительный аргумент ресурса.
Команда icesh keys даёт инструкцию icewm перечитать этот файл.
Синтаксис файла keys следующий:
- key "key_combination" program options
Где,
Слово key начинает определение комбинации клавиш.
Комбинация модификаторов и клавиш, наподобие Ctrl+Alt+Delete. Допустимыми модификаторами являются Alt, AltGr, Ctrl, Hyper, Meta, Shift, Super. За каждым модификатором должен следовать одиночный знак плюс, за ним клавиша - это или название клавиши, или метка клавиши. Вместо клавиш могут быть определены кнопки указателя мыши с, как показано выше, Pointer_Button1 или, например, Shift+Pointer_Button3.
program - это имя исполняемого файла или путь к нему. Он может начинаться с тильды или переменной окружения, которые будут раскрыты. options будут восприняты как аргументы program.
Это альтернатива key. Его синтаксис:
- runonce "key_combination" "wmclass" program options
Здесь wmclass это имя и/или класс ресурса. Классу должна предшествовать точка. Программа запустится только когда нет других окон приложений с тем же самым wmclass. Icewm игнорирует повторы нажатий клавиш для этих комбинаций.
Это альтернатива слову key. В этом случае program должна напечатать на стандартный вывод определение динамического меню (см. icewm-menu(1)). Это меню будет представлено как всплывающее меню.
Далее идёт пример файла keys, который поставляется с icewm(1):
# This is an example for IceWM's hotkey definition file.
#
# A list of all valid keyboard symbols can be found in
# /usr/include/X11/keysymdef.h, XF86keysym.h, ...
# Omit the XK_ prefixs and replace XF86XK_ prefixes by XF86.
# Valid modifiers are Alt, AltGr, Ctrl, Shift, Meta, Super, Hyper.
#
key "Alt+Ctrl+t" xterm
key "Alt+Ctrl+b" xdg-open about:blank
key "Alt+Ctrl+s" xdg-open https://www.google.com
key "Super+KP_Subtract" amixer sset PCM 5%-
key "Super+KP_Add" amixer sset PCM 5%+
# "Multimedia key" bindings for XFree86. Gather the
# keycodes of your advanced function keys by watching the
# output of the xev command whilst pressing those keys
# and map those symbols using xmodmap.
key "XF86AudioLowerVolume" amixer sset PCM 5%-
key "XF86AudioRaiseVolume" amixer sset PCM 5%+
key "XF86AudioMute" amixer sset PCM 0%
key "XF86HomePage" xdg-open about:blank
key "XF86Search" xdg-open https://www.google.com
key "XF86Eject" eject
# display and select monitor setup configurations
switchkey "Super+p" icewm-menu-xrandr
# display and select from all terminals
switchkey "Super+q" icesh -Z switchmenu
Далее показано, как добавить привязки кнопки мыши на корневом окне, чтобы изменить текущее рабочее место поворотом колеса мыши на рабочем столе:
key "Pointer_Button4" icesh goto prev
key "Pointer_Button5" icesh goto next
Это комбинации клавиш для операций с одним окном как с плиткой, чтобы заменить комбинации клавиш KeyWinArrange из файла preferences:
key "Ctrl+Alt+KP_Home" icesh -f sizeto 49% 49% top left
key "Ctrl+Alt+KP_Up" icesh -f sizeto 100% 49% top left
key "Ctrl+Alt+KP_Prior" icesh -f sizeto 49% 49% top right
key "Ctrl+Alt+KP_Right" icesh -f sizeto 49% 100% top right
key "Ctrl+Alt+KP_Next" icesh -f sizeto 49% 49% bottom right
key "Ctrl+Alt+KP_Down" icesh -f sizeto 100% 49% bottom left
key "Ctrl+Alt+KP_End" icesh -f sizeto 49% 49% bottom left
key "Ctrl+Alt+KP_Left" icesh -f sizeto 49% 100% top left
key "Ctrl+Alt+KP_Begin" icesh -f sizeto 49% 49% center
Местоположения для файла keys могут быть следующими:
$ICEWM_PRIVCFG/keys
$XDG_CONFIG_HOME/icewm/keys
$HOME/.icewm/keys
/etc/icewm/keys
/usr/share/icewm/keys
Местоположения обследуются в указанном порядке; первый найденный файл прочитывается, а остальные игнорируются.
Brian Bidulock <bidulock@openss7.org>.
Перевод данного текста на русский язык, а также поддержка пакета программного обеспечения icewm в ALTLinux Dmitriy Khanzhin <jinn@altlinux.org>.
IceWM лицензирован под GNU Library General Public License. См. файл COPYING в комплекте поставки.
| Standards, Environments and Macros |