]> git.notmuchmail.org Git - notmuch/blobdiff - emacs/notmuch-print.el
emacs: Increase consistency of library headers
[notmuch] / emacs / notmuch-print.el
index f96ccbeb2428425169ea21d3fd80f44a67a1ab82..6dd9f775a9ddba858c9358dc569f70b462f073b1 100644 (file)
@@ -1,4 +1,4 @@
-;; notmuch-print.el --- printing messages from notmuch.
+;;; notmuch-print.el --- printing messages from notmuch
 ;;
 ;; Copyright © David Edmondson
 ;;
 ;; General Public License for more details.
 ;;
 ;; You should have received a copy of the GNU General Public License
-;; along with Notmuch.  If not, see <http://www.gnu.org/licenses/>.
+;; along with Notmuch.  If not, see <https://www.gnu.org/licenses/>.
 ;;
 ;; Authors: David Edmondson <dme@dme.org>
 
+;;; Code:
+
+(require 'notmuch-lib)
+
+(declare-function notmuch-show-get-prop "notmuch-show" (prop &optional props))
+
 (defcustom notmuch-print-mechanism 'notmuch-print-lpr
   "How should printing be done?"
-  :group 'notmuch
+  :group 'notmuch-show
   :type '(choice
          (function :tag "Use lpr" notmuch-print-lpr)
          (function :tag "Use ps-print" notmuch-print-ps-print)
@@ -56,14 +62,16 @@ Optional OUTPUT allows passing a list of flags to muttprint."
 
 (defun notmuch-print-ps-print (msg)
   "Print a message buffer using the ps-print package."
-  (let ((subject (plist-get (notmuch-show-get-prop :headers msg) :Subject)))
+  (let ((subject (notmuch-prettify-subject
+                 (plist-get (notmuch-show-get-prop :headers msg) :Subject))))
     (rename-buffer subject t)
     (ps-print-buffer)))
 
 (defun notmuch-print-ps-print/evince (msg)
   "Preview a message buffer using ps-print and evince."
-  (let ((ps-file (make-temp-file "notmuch"))
-       (subject (plist-get (notmuch-show-get-prop :headers msg) :Subject)))
+  (let ((ps-file (make-temp-file "notmuch" nil ".ps"))
+       (subject (notmuch-prettify-subject
+                 (plist-get (notmuch-show-get-prop :headers msg) :Subject))))
     (rename-buffer subject t)
     (ps-print-buffer ps-file)
     (notmuch-print-run-evince ps-file)))
@@ -74,12 +82,15 @@ Optional OUTPUT allows passing a list of flags to muttprint."
 
 (defun notmuch-print-muttprint/evince (msg)
   "Preview a message buffer using muttprint and evince."
-  (let ((ps-file (make-temp-file "notmuch")))
+  (let ((ps-file (make-temp-file "notmuch" nil ".ps")))
     (notmuch-print-run-muttprint (list "--printer" (concat "TO_FILE:" ps-file)))
     (notmuch-print-run-evince ps-file)))
 
 (defun notmuch-print-message (msg)
   "Print a message using the user-selected mechanism."
+  (set-buffer-modified-p nil)
   (funcall notmuch-print-mechanism msg))
 
 (provide 'notmuch-print)
+
+;;; notmuch-print.el ends here