]> git.cworth.org Git - notmuch-wiki/blobdiff - emacstips.mdwn
Add smtpmail
[notmuch-wiki] / emacstips.mdwn
index 03bb5b60d6b9ffa185b66b8add8b3362ff973dce..84d616189ced7b3129ed32bfe2d5c3f3b6722fc4 100644 (file)
@@ -218,7 +218,7 @@ displaying the count for the saved-search. For example
         (setq notmuch-saved-searches '((:name "inbox"
                                         :query "tag:inbox"
                                         :count-query "tag:inbox and tag:unread"
-                                        :sort-order 'oldest-first)))
+                                        :sort-order oldest-first)))
 
 specifies a single saved search for inbox, but the number displayed by
 the search will be the number of unread messages in the inbox, and the
@@ -274,6 +274,41 @@ With that in place, you need a `.msmtprc` with the accounts configured
 for the domains you want to send out using specific SMTP servers and
 the rest will go to the default account.
 
+## sending mail using smtpmail
+
+another option is to use remov
+
+<!-- By default message mode will use the system `sendmail` command to send
+mail. However, on a typical desktop machine there may not be local SMTP
+daemon running (nor it is configured to send mail outside of the system). -->
+
+If setting up local `sendmail` or `msmtp` is not feasible or desirable,
+the Emacs `smtpmail` package can be used to send email by talking to remote
+SMTP server via TCP connection. It is pretty easy to configure:
+
+1. `M-x customize-group smtpmail`
+
+   as as minimum, 'Smtpmail Smtp Server' needs to be set.
+
+   - then continue with `M-x load-library message` and
+     `M-x customize-variable message-send-mail-function`
+     -- choose `message-smtpmail-send-it` for that.
+
+1. Set some variables in .emacs or in [notmuch init file](/notmuch-emacs#notmuch_init_file)
+
+      (setq smtpmail-smtp-server "smtp.server.tld" ;; <-- edit this !!!
+      ;; smtpmail-smtp-service 25 ;; 25 is default -- uncomment and edit if needed
+      ;; smtpmail-stream-type 'starttls
+      ;; smtpmail-debug-info t
+      ;; smtpmail-debug-verb t
+         message-send-mail-function 'message-smtpmail-send-it)
+
+More information for smtpmail is available:
+
+* In Emacs: `M-x info-display-manual smtpmail`
+* At http://www.emacswiki.org/emacs/SendingMail
+
+
 ## <span id="address_completion">Address completion when composing</span>
 
 There are currently three solutions to this:
@@ -318,7 +353,7 @@ available:
     from notmuch.  It also includes a vim plugin.
 
 You can perform tab-completion using any of these programs.
-Just add the following to your [notmuch init file](#notmuch_init_file):
+Just add the following to your [notmuch init file](/notmuch-emacs#notmuch_init_file):
 
         (require 'notmuch-address)
         (setq notmuch-address-command "/path/to/address_fetching_program")
@@ -352,7 +387,7 @@ Enter the cloned repository and create a build directory:
 You will find the akonadimailsearch binary in the build/src directory. Copy it to ~/bin .
 
 You can now add the following settings to your
-[notmuch init file](#notmuch_init_file):
+[notmuch init file](/notmuch-emacs#notmuch_init_file):
 
         (require 'notmuch-address)
         (setq notmuch-address-command "~/bin/akonadimailsearch")
@@ -484,7 +519,7 @@ See also the **Usage:** section in `gnus-alias.el`.
 
 ## Resending (or bouncing) messages
 
-Add the following to your [notmuch init file](#notmuch_init_file) to be able
+Add the following to your [notmuch init file](/notmuch-emacs#notmuch_init_file) to be able
 to resend the current message in show mode.
 
         (define-key notmuch-show-mode-map "b"
@@ -496,7 +531,7 @@ to resend the current message in show mode.
 
 ## `notmuch-hello` refresh status message
 
-Add the following to your [notmuch init file](#notmuch_init_file) to get a
+Add the following to your [notmuch init file](/notmuch-emacs#notmuch_init_file) to get a
 status message about the change in the number of messages in the mail store
 when refreshing the `notmuch-hello` buffer.
 
@@ -526,7 +561,7 @@ when refreshing the `notmuch-hello` buffer.
 
 Mailman mailing list software rewrites and rewraps long message subjects in
 a way that causes TABs to appear in the middle of the subject and header
-lines. Add this to your [notmuch init file](#notmuch_init_file) to replace
+lines. Add this to your [notmuch init file](/notmuch-emacs#notmuch_init_file) to replace
 tabs with spaces in subject lines:
 
         (defun notmuch-show-subject-tabs-to-spaces ()
@@ -673,14 +708,14 @@ notmuch-show-stash-mlarchive-link-alist RET`.
 
 Add a new entry with "Function returning the URL:" set to:
 
-     (lambda (message-id)
-       (concat "http://patchwork.example.com/patch/"
-               (nth 0
-                    (process-lines "/path/to/pwclient" "search"
-                                   "-p" "the-project"
-                                   "-m" (concat "<" message-id ">")
-                                   "-n" "1"
-                                  "-f" "%{id}"))))
+    (lambda (message-id)
+      (concat "http://patchwork.example.com/patch/"
+              (nth 0
+                   (process-lines "/path/to/pwclient" "search"
+                                  "-p" "the-project"
+                                  "-m" (concat "<" message-id ">")
+                                  "-n" "1"
+                                  "-f" "%{id}"))))
 
 Replacing `http://patchwork.example.com/patch/`, `/path/to/pwclient`, and
 `the-project` appropiately. You should now be able to stash the Patchwork URL
@@ -689,22 +724,22 @@ using `c l`.
 Going further, if the patch has been committed, you can get the commit hash with
 this:
 
-     (lambda (message-id)
-       (nth 0
-            (process-lines "/path/to/pwclient" "search"
-                           "-p" "the-project"
-                           "-m" (concat "<" message-id ">")
-                           "-n" "1"
-                          "-f" "%{commit_ref}")))
+    (lambda (message-id)
+      (nth 0
+           (process-lines "/path/to/pwclient" "search"
+                          "-p" "the-project"
+                          "-m" (concat "<" message-id ">")
+                          "-n" "1"
+                          "-f" "%{commit_ref}")))
 
 And finally, if the project has a web interface to its source repository, you
 can turn the commit hash into a URL pointing there, for example:
 
-     (lambda (message-id)
-       (concat "http://cgit.example.com/the-project/commit/?id="
-               (nth 0
-                    (process-lines "/path/to/pwclient" "search"
-                                   "-p" "the-project"
-                                   "-m" (concat "<" message-id ">")
-                                   "-n" "1"
-                                  "-f" "%{commit_ref}"))))
+    (lambda (message-id)
+      (concat "http://cgit.example.com/the-project/commit/?id="
+              (nth 0
+                   (process-lines "/path/to/pwclient" "search"
+                                  "-p" "the-project"
+                                  "-m" (concat "<" message-id ">")
+                                  "-n" "1"
+                                  "-f" "%{commit_ref}"))))