;; standard org <-> remember stuff, RTFM (org-remember-insinuate) (setq org-default-notes-file "~/org/gtd.org") (setq org-remember-templates ;; mail-specific note template, identified by "m" '(("Mail" ?m "* %?\n\n Source: %u, %c\n %i" nil))) ;; ensure that emacsclient will show just the note to be edited when invoked ;; from Mutt, and that it will shut down emacsclient once finished; ;; fallback to legacy behavior when not invoked via org-protocol. (add-hook 'org-remember-mode-hook 'delete-other-windows) (setq my-org-protocol-flag nil) (defadvice org-remember-finalize (after delete-frame-at-end activate) "Delete frame at remember finalization" (progn (if my-org-protocol-flag (delete-frame)) (setq my-org-protocol-flag nil))) (defadvice org-remember-kill (after delete-frame-at-end activate) "Delete frame at remember abort" (progn (if my-org-protocol-flag (delete-frame)) (setq my-org-protocol-flag nil))) (defadvice org-protocol-remember (before set-org-protocol-flag activate) (setq my-org-protocol-flag t)) (defun open-mail-in-mutt (message) "Open a mail message in Mutt, using an external terminal. Message can be specified either by a path pointing inside a Maildir, or by Message-ID." (interactive "MPath or Message-ID: ") (shell-command (format "gnome-terminal -e \"%s %s\"" (substitute-in-file-name "$HOME/bin/mutt-open") message))) ;; add support for "mutt:ID" links (org-add-link-type "mutt" 'open-mail-in-mutt)