mu4e - कई खाते


22

मैं mu4eEmacs में ईमेल के लिए उपयोग कर रहा हूं , और यह वर्तमान में केवल एक मेल खाते के लिए कॉन्फ़िगर किया गया है, और मैंने अलग-अलग इनबॉक्स को देखने के लिए कुंजी सेट की है। मुझे आश्चर्य है कि कई ईमेल खातों के प्रबंधन के लिए mu4e का उपयोग कैसे करें?

जवाबों:


17

मैं दो खातों के साथ mu4e का उपयोग कर रहा हूं। प्रत्येक खाते का अपना मेल-खाता है:

~/Mail
|
+---- work
|
`---- private

खाता चुनने के लिए मैनुअल एक उदाहरण फ़ंक्शन के साथ आता है:

(defun my-mu4e-set-account ()
  "Set the account for composing a message."
  (let* ((account
          (if mu4e-compose-parent-message
              (let ((maildir (mu4e-message-field mu4e-compose-parent-message :maildir)))
                (string-match "/\\(.*?\\)/" maildir)
                (match-string 1 maildir))
            (completing-read (format "Compose with account: (%s) "
                                     (mapconcat #'(lambda (var) (car var))
                                                my-mu4e-account-alist "/"))
                             (mapcar #'(lambda (var) (car var)) my-mu4e-account-alist)
                             nil t nil nil (caar my-mu4e-account-alist))))
         (account-vars (cdr (assoc account my-mu4e-account-alist))))
    (if account-vars
        (mapc #'(lambda (var)
                  (set (car var) (cadr var)))
              account-vars)
      (error "No email account found"))))

;; ask for account when composing mail
(add-hook 'mu4e-compose-pre-hook 'my-mu4e-set-account)

उस काम के लिए आपको my-mu4e-account-alistनिम्न की भी आवश्यकता होगी :

(defvar my-mu4e-account-alist
  '(("private"
     (user-mail-address  "private@domain.net")
     (user-full-name     "My Name")
     (mu4e-sent-folder   "/private/Sent Items")
     (mu4e-drafts-folder "/private/Drafts")
     (mu4e-trash-folder  "/private/Deleted Items")
     (mu4e-refile-folder "/private/Archive"))
    ("work"
     (user-mail-address  "work@domain.net")
     (mu4e-sent-folder   "/work/Sent Items")
     (mu4e-drafts-folder "/work/Drafts")
     (mu4e-trash-folder  "/work/Deleted Items")
     (mu4e-refile-folder "/work/Archives"))))

(setq mu4e-user-mail-address-list
      (mapcar (lambda (account) (cadr (assq 'user-mail-address account)))
              my-mu4e-account-alist))

आप बस मेल फ़ोल्डर के बीच स्विच कर सकते हैं j, जब तक कि आपके सभी maildirs उप-सीमाएँ हैं mu4e-maildir

मैं वास्तव में के लिए एक से अधिक विस्तृत समारोह का उपयोग कर रहा हूं mu4e-trash-folderऔर mu4e-refile-folderएक से दूसरे मेलडिर से ईमेल को स्थानांतरित करने से बचने के लिए, लेकिन ऊपर की जानकारी कई खातों का उपयोग करने के लिए पर्याप्त होनी चाहिए।


मैं यह समझने के लिए संघर्ष कर रहा हूं कि कैसे m44 को पता है कि कौन सा इनबॉक्स दिखाना है। कोई mu4e-inbox-folderचर नहीं है, और जब मैं दबाता jiहूं तो मुझे मेरे सभी खातों से आने वाले मेल मिलते हैं, न कि केवल काम या निजी संदर्भ।
एस्ट्रोफॉइड

6

मैं दो अलग-अलग खातों का उपयोग कर रहा हूं जिन्हें मैं जितना संभव हो उतना कम मिश्रण करना चाहता हूं।

ऑफलाइनमैप को दो खातों के साथ कॉन्फ़िगर किया गया है, एक ~/.maildir-workदूसरे में मेल वितरित करता है ~/.maildir-home

Mu4e के लिए मेरा कॉन्फ़िगरेशन नए संदर्भ तंत्र का उपयोग करता है:

(setq mu4e-contexts
      `( ,(make-mu4e-context
           :name "home"
           :match-func (lambda (_) (string-equal "home" (mu4e-context-name mu4e~context-current)))
           :enter-func '()
           :leave-func (lambda () (mu4e-clear-caches))
           :vars '((mu4e-maildir . "~/.maildir-home")
                   (mu4e-mu-home . "~/.mu-home")
                   (mu4e-get-mail-command . "offlineimap -a Home")
                    ...))
         ,(make-mu4e-context
           :name "work"
           :match-func (lambda (_) (string-equal "work" (mu4e-context-name mu4e~context-current)))
           :enter-func '()
           :leave-func (lambda () (mu4e-clear-caches))
           :vars '((mu4e-maildir . "~/.maildir-work")
                   (mu4e-mu-home . "~/.mu-work")
                   (mu4e-get-mail-command . "offlineimap -a Work")
                   ...))))

मुझे इस उदाहरण को काम करने में परेशानी हो रही है। प्रति डॉक्सmu4e-maildir और mu4e-mu-homeचर पहले mu4e छोड़ने के बिना अस्थिर होना चाहिए नहीं कर रहे हैं। मैंने अपने सेट अप पर थोड़ा और विवरण यहाँ पोस्ट किया है ।
कोस्तजह

वास्तव में, मुझे स्विच करते समय Emacs को पुनरारंभ करने का सहारा लेना पड़ा है। मेरे लिए यह अभी भी इसके लायक है।
मैग्नस

2

मैं मैग्नस के समान एक सेटअप का उपयोग कर रहा हूं, और बस वह जोड़ना चाहता है जो (mu4e-quit)मौजूद है, और यह फिर से शुरू किए बिना खातों की सफाई के लिए ठीक काम करता है। वास्तविक तंत्र:

(defun mail-gmail ()
  (interactive)
  (setenv "MAILDIR" "/Users/foo/Maildir/gmail")
  (setenv "MU_HOME" "/Users/foo/.mu/gmail")
  (setq mu4e-maildir "/Users/foo/Maildir/gmail")
  (setq user-mail-address "...")
  (mu4e-quit))
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.