2009-06-27 16 views
10

Estoy usando Gnus dentro de Emacs como mi cliente de correo. Tengo mi .gnus.el configurado para revisar el correo periódicamente [1] pero, en este momento, no tengo forma de saber si he recibido un nuevo correo si no me cambio al buffer del Grupo. Me gustaría recibir algún tipo de notificación cuando tengo correo nuevo en un grupo o grupos específicos. Encontré gnus-notify.el [2] pero no lo logré (probablemente debido a mi falta de entendimiento sobre cómo configurarlo correctamente, soy nuevo en Emacs y Gnus). ¿Alguien puede proporcionar los pasos que debo seguir para que gnus-notify funcione correctamente u ofrecer otra forma de obtener algún tipo de nuevo indicador de correo usando Gnus?Nuevas notificaciones de correo en Gnus para Emacs

[1]

(gnus-demon-add-handler 'gnus-group-get-new-news 2 t) 
(gnus-demon-init) 

[2] http://www.emacswiki.org/cgi-bin/wiki/gnus-notify.el

Respuesta

6

Hay algún detalle adicional aquí:

http://www.emacswiki.org/emacs/GnusBiff

Si estás en un Mac, puede probablemente sólo tiene que utilizar el comando growlnotify para obtener una buena alerta de correo nuevo. La función mac-Biff-actualización actualizado, probablemente se vería algo como esto:

(defun mac-biff-update() 
    "Read the mail count from Gnus." 
    (let ((buffer (get-buffer "*Group*")) 
     (count 0)) 
    (when buffer 
     (with-current-buffer buffer 
     (goto-char (point-min)) 
     (while (re-search-forward mac-biff-mail-re nil t) 
      (setq count (+ count (string-to-number (match-string 1))))))) 
    (if (> count 0) 
      (shell-command 
      (format "/usr/local/bin/growlnotify -a Emacs.app -m 'You have %d new messages!'" count))))) 

El comando growlnotify es un paquete opcional que se puede instalar desde el archivo .dmg el gruñido completa.

+0

Agradable. Pude obtener notificaciones gruñidas trabajando con el código anterior y algo de ayuda de la página emacswiki. Gracias. –

3

puedo recomendar gnus-desktop-notify

Hay también un ejemplo para la configuración de configuración gruñido/Mac.

Tenga en cuenta también, que está comprobando cada 2 minutos (2 * 60, ver gnus-demon-timestep), sólo para el caso de que no desea ser interrumpido cada 2 minutos;)

+0

Esta debería ser la respuesta aceptada. 'M-x package-install RET' es estándar hoy en día. – yPhil

2
  • Descargar ñus a notificar .el here y colóquelo donde los emacs puedan encontrarlo (no podría, por mi vida, hacer el trabajo de verión instalado. Ah, bueno, tuve que hackearlo de todos modos, siga leyendo).
  • poner esto en su .gnus.el:
(setq gnus-parameters 
'(("INBOX" 
    (gnus-use-adaptive-scoring nil) 
    (gnus-use-scoring nil) 
    (visible . t) 
    (display . all) 
    (modeline-notify . t) 
    ))) 

continuación, intente M-x gnus-mst-show-groups-with-new-messages para ver si está instalado correctamente.

(Si usted tiene otras definiciones gnus-parameters, dejar que éste sea el último)

Normalmente se supone que debes utilizar este parámetro en función de cada grupo, yendo a la memoria intermedia *groups*, puesto el cursor sobre un grupo, presione G p, ingrese (modeline-notify t) (sí, sin el punto esta vez, y rodeado por otro par de parens si es el único parámetro para el grupo - y sí, elimine ese 'nil' posterior) y salga y guarde por C-c C-c, pero considero que esta solución es más flexible y portátil.

Es posible que tenga que modificar la expresión regular que se muestra el nombre del grupo, ya que está diseñado para presentar alt.comp.sys.amiga como [A.C.S.a 2] (sí, está realmente muerto ahora) para decir algo como [perso 12] [trabajo 8] como yo. Y puede hacer clic en la etiqueta para saltar al grupo. Muy ingenioso

Cuestiones relacionadas