2009-06-27 12 views
10

Używam Gnus w Emacs jako mój klient poczty. Mam swój plik .gnus.el skonfigurowany tak, aby okresowo sprawdzał pocztę [1], ale w tej chwili nie mam możliwości sprawdzenia, czy otrzymałem nową pocztę przed przejściem do bufora grupy. Chciałbym otrzymać jakieś powiadomienie, gdy mam nową pocztę w określonej grupie lub grupach. Znalazłem gnus-notify.el [2], ale nie udało mi się go uruchomić (zapewne z powodu braku zrozumienia, jak poprawnie go skonfigurować - jestem nowy dla Emacsa i Gnusa). Czy każdy może podać kroki, które muszę wykonać, aby powiadomienie gnus działało poprawnie lub inny sposób uzyskania wskaźnika nowego typu poczty za pomocą Gnus?Nowe powiadomienia pocztowe w Gnus dla 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

Odpowiedz

6

Istnieje kilka dodatkowych szczegółów tutaj:

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

Jeśli jesteś na mac, można prawdopodobnie wystarczy użyć polecenie growlnotify, aby uzyskać ładną wiadomość o nowej poczcie. Zaktualizowana funkcja MAC-Biff-update będzie prawdopodobnie wyglądać tak:

(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))))) 

Komenda growlnotify jest opcjonalny pakiet, który można zainstalować z pliku pełnej Growl dmg.

+0

Nice. Udało mi się uzyskać powiadomienia w wariancie z powyższym kodem i trochę pomocy ze strony emacswiki. Dzięki. –

3

mogę polecić gnus-desktop-notify

Jest też przykładem konfiguracji Growl setup/Mac.

Należy również zauważyć, że podczas sprawdzania co 2 minuty (2 * 60s, patrz gnus-demon-timestep), tylko na razie nie chcą być przerwane co 2 minuty;)

+0

To powinna być zaakceptowana odpowiedź. 'Pakiet instalacyjny M-x RET' jest obecnie standardem. – yPhil

2
  • Pobierz gnus zgłasza .el here i umieść go tam, gdzie może go znaleźć emacs (nie mogłem do końca życia zrobić zainstalowanej wersji verion, no cóż, musiałem to zhakować, czytaj dalej).
  • umieścić to w swoim .gnus.el:
(setq gnus-parameters 
'(("INBOX" 
    (gnus-use-adaptive-scoring nil) 
    (gnus-use-scoring nil) 
    (visible . t) 
    (display . all) 
    (modeline-notify . t) 
    ))) 

następnie spróbuj M-x gnus-mst-show-groups-with-new-messages aby sprawdzić, czy jest prawidłowo zainstalowana.

(Jeśli masz inne gnus-parameters definicje, niech będzie ten ostatni)

Normalnie powinniśmy używać tego parametru na podstawie na grupy, przechodząc do bufora *groups*, umieścić kursor nad grupą, naciśnij G p, wpisz (modeline-notify t) (tak, bez kropki tym razem, i otoczona przez inną parę parenów, jeśli jest to jedyny parametr dla grupy - i tak, usuń tę końcową "zero") i wyjdź i zapisz przez C-c C-c, ale uważam, że to rozwiązanie jest bardziej elastyczne i przenośne.

Być może trzeba będzie dostosować do wyrażenia regularnego, który wyświetla nazwę grupy, gdyż jest ono przeznaczone do przedstawienia alt.comp.sys.amiga jak [A.C.S.a 2] (tak, to naprawdę martwe), aby powiedzieć coś takiego jak [perso 12] [praca 8] jak ja. Możesz kliknąć etykietę, aby przejść do grupy. Bardzo fajne.

Powiązane problemy