sxhkd (Español)
sxhkd es un demonio simple de teclas de acceso rápido para X, hecho por el desarrollador de bspwm, que reacciona a los eventos de entrada ejecutando comandos.
Instalación
Configuración
El archivo de configuración por defecto de sxhkd es $XDG_CONFIG_HOME/sxhkd/sxhkdrc. Se puede especificar un archivo de configuración alternativo con la opción -c.
Cada línea del archivo de configuración se interpreta así:
- Si empieza con
#, se ignora. - Si empieza con uno o más espacios en blanco, se lee como un comando.
- Si no, se interpreta como una tecla de acceso rápido: cada nombre de tecla se separa con espacios y/o caracteres
+.
Sintaxis general:
[MODIFICADOR + ]*[@]KEYSYM
COMANDO
Donde MODIFICADOR es uno de los siguientes nombres: super, hyper, meta, alt, control, ctrl, shift, mode_switch, lock, mod1, mod2, mod3, mod4, mod5. Si se añade @ al inicio del keysym, el comando se ejecutará en los eventos de soltar la tecla; si no, en los eventos de presionarla. Los nombres KEYSYM son los que obtendrá con xev.
Las teclas de acceso rápido del ratón se pueden definir usando uno de los siguientes nombres especiales de keysym: button1, button2, button3, ..., button24. La tecla de acceso rápido puede contener una secuencia de la forma STRING_1, ...,STRING_N}, en cuyo caso el comando también debe contener una secuencia con N elementos: el emparejamiento de las dos secuencias genera N teclas de acceso rápido. Si el comando incluye llaves ({, }), p. ej. awk '{print $1}', escápelas con una barra inversa \, p. ej. awk '\{print $1\}'. Además, las secuencias pueden contener rangos de la forma A-Z, donde A y Z son caracteres alfanuméricos.
Lo que realmente se ejecuta es SHELL -c COMANDO, lo que significa que puede usar variables de entorno en COMANDO. SHELL será el contenido de la primera variable de entorno definida en la siguiente lista: SXHKD_SHELL, SHELL. Si sxhkd recibe una señal SIGUSR1, volverá a cargar su archivo de configuración.
Ejemplo
$XDG_CONFIG_HOME/sxhkd/sxhkdrc
# Al presionar el botón 1 del ratón, presionar Alt_R+F1
button1
xte "keydown Alt_R" "keydown F1" "keyup Alt_R" "keyup F1"
# Al presionar el botón 2 del ratón, esperar 3 segundos y después presionar Alt_R+F2
button2
xte "sleep 3" "keydown Alt_R" "keydown F2" "keyup Alt_R" "keyup F2"
Asignar un comando a una sola pulsación de una tecla
Algunos usuarios pueden querer asignar un comando a una sola pulsación de tecla, de la misma forma en que la tecla Super abre el menú Inicio en Windows. En sxhkd, esto se logra asignando una cadena de acordes compuesta por los eventos de presionar y soltar un mismo keysym, como en el siguiente ejemplo:
$XDG_CONFIG_HOME/sxhkd/sxhkdrc
# Lanzador de programas
Super_L; @Super_L
rofi -show drun
Este patrón complicado es necesario porque, sin la cadena de acordes explícita (es decir, un único @Super_L), sxhkd activaría la asignación con cualquier liberación de la tecla, incluso cuando la tecla se usa en otro acorde. Además, se deben usar keysyms en lugar de modificadores (Super_L en lugar de super), porque sxhkd no admite el uso del símbolo @ (que indica soltar la tecla) con modificadores.
Utilización
Después de configurarlo, puede que quiera hacer que sxhkd se inicie automáticamente; consulte el artículo correspondiente de su entorno de escritorio o gestor de ventanas para más detalles.
Si su entorno de escritorio es compatible con la Desktop Application Autostart Specification, puede iniciar sxhkd creando un archivo sxhkd.desktop en el directorio apropiado:
~/.config/autostart/sxhkd.desktop
[Desktop Entry] Name=sxhkd Comment=Simple X hotkey daemon Exec=/usr/bin/sxhkd Terminal=false Type=Application
Véase también
- Página oficial: incluye opciones de configuración, combinaciones de ejemplo y código fuente.
- Hilo del foro de Arch Linux