Notificaciones sin demonios sin D-Bus. Mínimo y ligero.
Menos de 200 líneas de código
No se ejecuta en segundo plano, solo muestra la notificación y sale
Sin dependencias externas excepto Xlib y Xft
Configurable a través de config.h
o Xresources (usando este parche)
Apoyo a acciones
Extensible mediante parches
Uso
Parches
Descartar una notificación
Comportamiento
Nuevas líneas
Múltiples notificaciones
No aparecen las notificaciones
Instalación
Paquetes
Dependencias
Construir
Configuración
Contribuir
Lista de parches disponibles
Para crear un nuevo parche, deberá abrir una solicitud de extracción con sus cambios. Agregue .diff
a la URL de la solicitud de extracción para obtener un archivo de diferencias descargable. No olvide anteponer el título al patch:
y aplicarle la etiqueta patch
. Para inspirarte, mira mi parche Xresources. Gracias.
Nota: Este método de parcheo se inspiró en gran medida en la sowm de Dylan.
Se puede descartar una notificación haciendo clic en ella con DISMISS_BUTTON
(establecido en config.h, por defecto es el botón izquierdo del mouse) o enviándole una señal SIGUSR1
:
$ pkill -SIGUSR1 hierba
Las notificaciones descartadas devuelven el código de salida 2.
La acción es un fragmento de código shell que se ejecuta cuando se acepta una notificación. Aceptar una notificación es lo mismo que descartarla, pero debe usar ACTION_BUTTON
(por defecto, el botón derecho del mouse) o la señal SIGUSR2
. Una notificación aceptada siempre devuelve el código de salida 0. Para especificar una acción:
$ herbe "Cuerpo de la notificación" && echo "Esto es una acción"
Donde todo lo que sigue a &&
es la acción y se ejecutará después de que se acepte la notificación.
Cada argumento de la línea de comando se imprime en una línea separada de forma predeterminada, por ejemplo:
$ herbe "Primera línea" "Segunda línea" "Tercera línea" ...
También puedes usar n
, por ejemplo, en bash
:
$ herbe $'Primera ropaSegunda ropaTercera línea'
Pero por defecto herbe
imprime n
literalmente:
$ herbe "Primera ropaAún la primera línea"
La salida de otros programas se imprimirá correctamente, solo asegúrese de cerrarla (para no terminar con cada palabra en una línea separada):
$ herbe "$(ps axch -o cmd:15,%cpu --sort=-%cpu | head)"
Las notificaciones se colocan en una cola y se muestran una tras otra en orden de creación (primero en entrar, primero en salir). No se superponen y cada uno se muestra durante toda su duración.
Lo más probable es que una notificación en ejecución haya finalizado por la fuerza (SIGKILL o cualquier señal no detectada), lo que provocó que el semáforo no se desbloqueara. Primero, elimine cualquier instancia herbe
que esté atascada:
$ pkill -SIGKILL hierba
Entonces simplemente llama herbe
sin ningún argumento:
$ hierba
Las notificaciones ahora deberían aparecer como se esperaba.
Nunca envíes ninguna señal a herbe
excepto estas:
# Igual que pkill -SIGTERM herbe, finaliza todos los procesos de herbe en ejecución$ pkill herbe $ pkill -SIGUSR1 hierba $ pkill -SIGUSR2 hierba
Y deberías estar bien. Eso es todo lo que realmente necesitas para interactuar con herbe
.
Parche OpenBSD
Parche FreeBSD
Puerto de Wayland por muevoid
Solo mantengo el paquete herbe-git AUR.
X11 (Xlib)
xft
Los nombres de los paquetes son diferentes según la distribución que utilice. Por ejemplo, si usas Void Linux tendrás que instalar estas dependencias:
sudo xbps-install base-devel libX11-devel libXft-devel
clon de git https://github.com/dudik/herbecd herbe sudo hacer instalar
make install
requiere privilegios de root porque copia el binario resultante en /usr/local/bin
. Esto hace que herbe
sea accesible a nivel mundial.
También puede usar make clean
para eliminar el binario de la carpeta de compilación, sudo make uninstall
para eliminar el binario de /usr/local/bin
o simplemente make
para compilar el binario localmente.
herbe se configura en tiempo de compilación editando config.h
. Cada opción debe explicarse por sí misma. No hay opción height
porque la altura está determinada por el tamaño de fuente y el relleno del texto.
Parche de recursos X
Si desea informar un error o tiene una solicitud de función, no dude en abrir un problema.
qutebrowser admite la visualización de notificaciones web a través de herbe, a través de la configuración content.notifications.presenter
.