sxhkd (Русский)

Состояние перевода:
На этой странице представлен перевод статьи
sxhkd
. Дата последней синхронизации: 11 января 2023. Вы можете
помочь
синхронизировать перевод, если в английской версии произошли
изменения
.
Ссылки по теме
Xbindkeys (Русский)
Xmodmap (Русский)
sxhkd
— это простой демон горячих клавиш для
X
, созданный разработчиком
bspwm
.
Установка
Установите
sxhkd
или
sxhkd-git
AUR
.
Настройка
По умолчанию используется файл настроек
$XDG_CONFIG_HOME/sxhkd/sxhkdrc
. С помощью опции
-c
можно указать другой файл.
Каждая строка в файле интерпретируется так:
Если строка начинается на
#
, то она игнорируется.
Если строка начинается с пробельных символов, она считывается как команда для запуска.
Иначе строка считывается как сочетание клавиш: имена клавиш, разделённые пробелом или символом
+
.
Синтаксис:
[МОДИФИКАТОР + ]*[@]СИМВОЛ
    КОМАНДА
Где
МОДИФИКАТОР
может иметь одно из следующих значений:
super
,
hyper
,
meta
,
alt
,
control
,
ctrl
,
shift
,
mode_switch
,
lock
,
mod1
,
mod2
,
mod3
,
mod4
,
mod5
. Если перед символом клавиши добавить
@
, то команда будет выполнена в момент отпускания клавиши, а не сразу в момент нажатия.
СИМВОЛ
нужной вам клавиши можно узнать с помощью команды
xev
.
Для отслеживания кнопок мыши можно использовать специальные коды клавиш
button1
,
button2
,
button3
, ...,
button24
. Также можно задать сразу несколько кодов клавиш в виде последовательности
{СИМВОЛ_1,...,СИМВОЛ_N}
и добавить в команду последовательность строк (в фигурных скобках и разделённых запятыми) такой же длины — тогда в команду будет подставлен тот элемент последовательности, который соответствует заданному коду клавиши в указанном вами порядке. Если вам нужно добавить в команду обычные фигурные скобки, то, чтобы они не конфликтовали с синтаксисом последовательностей, экранируйте их с помощью обратной косой черты: например, если вы хотите добавить команду
awk '{print $1}'
, запишите её как
awk '\{print $1\}'
. Также можно задать последовательность в виде диапазона
A-Z
, где
A
и
Z
— буква или цифра.
Для выполнения команды sxhkd запускает
ОБОЛОЧКА -c КОМАНДА
, что означает, что вы можете использовать переменные окружения внутри команды.
ОБОЛОЧКА
считывается из переменной окружения
SXHKD_SHELL
или, если её нет, из
SHELL
. При получении сигнала
SIGUSR1
sxhkd заново прочитает файл настроек.
Пример
$XDG_CONFIG_HOME/sxhkd/sxhkdrc
# При нажатии левой кнопки мыши эмулировать нажатие Alt_R+F1
button1
    xte "keydown Alt_R" "keydown F1" "keyup Alt_R" "keyup F1"

# При нажатии средней кнопки мыши подождать 3 секунды и эмулировать нажатие Alt_R+F2
button2
    xte "sleep 3" "keydown Alt_R" "keydown F2" "keyup Alt_R" "keyup F2"
Использование
После настройки вы скорее всего захотите добавить sxhkd в
автозапуск
; смотрите соответствующую статью для вашей среды рабочего стола или вашего оконного менеджера.
Если ваша среда поддерживает
Desktop Application Autostart Specification
, можно создать файл автозапуска
sxhkd.desktop
:
~/.config/autostart/sxhkd.desktop
[Desktop Entry]
Name=sxhkd
Comment=Simple X hotkey daemon
Exec=/usr/bin/sxhkd
Terminal=false
Type=Application
Смотрите также
Репозиторий на GitHub
— исходный код, список опций и примеры настройки
Тема на форуме Arch Linux