wtorek, 30 października 2012

Gnus konfiguracja

Gnus jest częścią rozbudowanego edytora tekstu Emacs, który został stworzony przez Richarda Stallmana . Emacs może być uruchamiany w trybie tekstowym i graficznym. Gnus jest to czytnik grup dyskusyjnych i poczty elektronicznej.


Konfiguracja Emacsa

Domyślna czcionka Emacsa jest brzydka dlatego możesz ją zmienić na np. DejaVu Sans Mono: Options --> Set Default Font --> DejaVu Sans Mono.

Możesz też zmienić domyślne kodowanie znaków utf-8 na iso-8859-2: Options --> Mule --> Set Language Environment --> European --> Polish

Książka adresowa

Książkę adresową w gnus można zrealizować za pomocą bazy BBDB, konfiguracja jest już zawarta w moim pliku .gnus. Najprostszym sposobem dodania kontaktu jest dodanie nadawcy maila poprzez wciśnięcie klawisza : (dwukropek). Nowy kontakt dodajemy poprzez przełączenie się do bufora BBDB (M-x bbdb Enter) i naciśnięcie klawisza c.

Filtrowanie spamu

Filtrowanie spamu realizuję za pomocą SpamFilter z pakietu SpamBayes. Najpierw należy ze strony: http://www.mail-archive.com/spambayes-dev@python.org/msg00539/flo-spambayes.el skopiować cały takst do pliku o nazwie flo-spambayes.el, nastepnie plik ten należy umieścić w lokalizacji gdzie Emacs ładuje pliki z rozszerzeniem el. W openSUSE jest to /usr/share/emacs/site-lisp. Odpowiednia konfiguracja też jest zawarta w moim .gnus.

Trenowanie spamu

Oznacz jako spam   Bs
Oznacz jako nie spam   Bh

I na koniec należy utworzyć w katalogu domowym:

mkdir tmp
cd tmp
touch spambayes-stderr


Moja konfiguracja .gnus:

(setq user-mail-address "jlitwinski@vp.pl")
(setq user-full-name "Jan Litwiński")

(setq gnus-select-method '(nntp "news.task.gda.pl" ))

(setq send-mail-function 'smtpmail-send-it)
(setq message-send-mail-function 'smtpmail-send-it)
(setq smtpmail-default-smtp-server "smtp.poczta.onet.pl")

(setq gnus-summary-thread-gathering-function
      'gnus-gather-threads-by-subject)

(setq signature-file "~/.signature")

(setq gnus-visible-headers
      '("^From:"
    "^Newsgroups:"
    "^Subject:"
    "^Date:"
    "^Followup-To:"
    "^Reply-To:"
    "^Organization:"
    "^Summary:"
    "^Keywords:"
    "^To:"
    "^[BGF]?Cc:"
    "^Posted-To:"
    "^Mail-Copies-To:"
    "^Apparently-To:"
    "^X-Gnus-Warning:"
    "^Resent-From:"
    "^X-Sent:"
    "^X-Mailer:"
    "^X-Newsreader:"
    "^Content-Type:"
    "^X-User-Agent:"
    "^User-Agent:"
    "^X-Diary"))

(add-to-list 'gnus-secondary-select-methods '(nnimap "gmail"
                                  (nnimap-address "imap.gmail.com")
                                  (nnimap-server-port 993)
                  (nnimap-stream ssl)))

;; Make Gnus NOT ignore [Gmail] mailboxes
    (setq gnus-ignored-newsgroups "^to\\.\\|^[0-9. ]+\\( \\|$\\)\\|^[\"]\"[#'()]")


(add-to-list 'gnus-secondary-select-methods '(nnimap "netscape"
                                  (nnimap-address "imap.aol.com")
                                  (nnimap-server-port 993)
                                  (nnimap-stream ssl)))

(require 'pop3)

(add-to-list 'gnus-secondary-select-methods '(nnml ""))

(setq gnus-permanently-visible-groups "mail")

(setq gnus-posting-styles
   '((".*" (name "Jan Litwiński"))))

(setq mail-sources                   
      '((file :path "/var/mail/janek")
        (pop :server "pop3.poczta.onet.pl"
         :port 110
         :user "jlitwinski@vp.pl"
         :password "xxx"
         :connection ssl)))

(require 'smtpmail)
    (setq smtpmail-smtp-server "smtp.poczta.onet.pl"
          send-mail-function 'smtpmail-send-it
          smtpmail-auth-credentials "~/.authinfo")        

(setq nnmail-split-methods
      '(
        ("mail.Arch" "^To:.*arch-general@archlinux.org")
    ("mail.Arch" "^Cc:.*arch-general@archlinux.org")
    ("mail.Fedora" "^To:.*users@lists.fedoraproject.org")
    ("mail.Fedora" "^Cc:.*users@lists.fedoraproject.org")
    ("mail.Kubuntu" "^To:.*<kubuntu-users.lists.ubuntu.com>")
    ("mail.Kubuntu" "^Cc:.*<kubuntu-users.lists.ubuntu.com>")
    ("mail.SuSE" "^To:.*opensuse@opensuse.org")
    ("mail.SuSE" "^Cc:.*opensuse@opensuse.org")
        ("mail.Trinity" "^To:.*trinity-users@lists.pearsoncomputing.net")
    ("mail.Trinity" "^Cc:.*trinity-users@lists.pearsoncomputing.net")
    ("mail.Ubuntu" "^To:.*ubuntu-users@lists.ubuntu.com")
    ("mail.Ubuntu" "^Cc:.*ubuntu-users@lists.ubuntu.com")
    ("mail.Ubuntu-pl" "^To:.*ubuntu-pl@lists.ubuntu.com")
    ("mail.Ubuntu-pl" "^Cc:.*ubuntu-pl@lists.ubuntu.com")
    ("Spam" "^X-Spambayes-Classification: spam; ")
        ("Nieznany" "^X-Spambayes-Classification: unsure; ")

    ("mail.Waldek" "^From:.*\\(jan.kowalski@wp.pl\\)")))

(require 'bbdb)
(bbdb-initialize)
(add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus)
(add-hook 'gnus-startup-hook 'bbdb-insinuate-message)
(add-hook 'message-setup-hook 'bbdb-define-all-aliases)

(setq bbdb-complete-name-full-completion t)
(setq bbdb-completion-type 'primary-or-name)
(setq bbdb-complete-name-allow-cycling t)

(setq gnus-treat-display-smileys t)

(setq mm-text-html-renderer 'w3m)

(setq gnus-message-archive-group
    '((if (message-news-p)
          "nnml:Send-News"
        "nnml:Send-Mail")))


(require 'flo-spambayes)

(setq flo-spambayes-filter-program "/usr/bin/sb_filter.py")

(setq flo-spambayes-logfile-for-filter-stderr "~/tmp/spambayes-stderr")

(add-hook 'nnmail-prepare-incoming-message-hook
            'flo-spambayes-filter-buffer)

(define-key gnus-summary-mode-map "Bs"
#'(lambda () (interactive) (flo-spambayes-gnus-refile-as-spam t)))
(define-key gnus-summary-mode-map "Bh"
#'(lambda () (interactive) (flo-spambayes-gnus-refile-as-ham t)))
(define-key gnus-summary-mode-map "Bf"
#'(lambda () (interactive) (flo-spambayes-gnus-classify t)))

Moja konfiguracja pliku .authinfo do autoryzacji wygląda tak:

cat .authinfo
machine imap.gmail.com login jlitwinski@gmail.com password xxx port 993

machine smtp.gmail.com login jlitwinski@gmail.com password xxx port 587

machine pop3.poczta.onet.pl login jlitwinski@vp.pl password xxx port 110

machine smtp.poczta.onet.pl login jlitwinski@vp.pl password xxx port 25

machine imap.aol.com login netsjanek@netscape.net password xxx

Zamień xxx do swojej konfiguracji.

Brak komentarzy:

Prześlij komentarz