diff options
author | Vinicius Jose Latorre <[email protected]> | 2007-11-21 15:16:55 +0000 |
---|---|---|
committer | Vinicius Jose Latorre <[email protected]> | 2007-11-21 15:16:55 +0000 |
commit | 7d5cb920d08d07a3e44c6893f1524352bc207ce3 (patch) | |
tree | 2ff27c7877a1fa127573deaafd2b11b83c894f0c /lisp | |
parent | 532729d52d6c62b11caf83b55d325587b05d6c15 (diff) |
ps-lpr-switches docstring fix.
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/ChangeLog.unicode | 6 | ||||
-rw-r--r-- | lisp/ps-print.el | 40 |
2 files changed, 43 insertions, 3 deletions
diff --git a/lisp/ChangeLog.unicode b/lisp/ChangeLog.unicode index 7816f099d9..3427854cac 100644 --- a/lisp/ChangeLog.unicode +++ b/lisp/ChangeLog.unicode @@ -1,3 +1,9 @@ +2007-11-21 Vinicius Jose Latorre <[email protected]> + + * ps-print.el (ps-lpr-switches): Docstring fix. + (ps-string-list): New fun. + (ps-do-despool): Code fix. + 2007-11-19 Kenichi Handa <[email protected]> * international/utf-7.el (utf-7-imap-post-read-conversion) diff --git a/lisp/ps-print.el b/lisp/ps-print.el index c327c25bf6..6be1f12d43 100644 --- a/lisp/ps-print.el +++ b/lisp/ps-print.el @@ -14,7 +14,7 @@ ;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre (defconst ps-print-version "7.3.1" - "ps-print.el, v 7.3.1 <2007/11/09 vinicius> + "ps-print.el, v 7.3.1 <2007/11/21 vinicius> Vinicius's last change version -- this file may have been edited as part of Emacs without changes to the version number. When reporting bugs, please also @@ -1752,7 +1752,28 @@ an explicit filename is given as the last argument." :group 'ps-print-printer) (defcustom ps-lpr-switches lpr-switches - "*A list of extra switches to pass to `ps-lpr-command'." + "*List of extra switches to pass to `ps-lpr-command'. + +The list element can be: + + string it should be an option for `ps-lpr-command' (which see). + For example: \"-o Duplex=DuplexNoTumble\" + + symbol it can be a function or variable symbol. If it's a function + symbol, it should be a function with no argument. The result + of the function or the variable value should be a string or a + list of strings. + + list the header should be a symbol function and the tail is the + arguments for this function. This function should return a + string or a list of strings. + +Any other value is silently ignored. + +It is recommended to set `ps-printer-name' (which see) instead of including an +explicit switch on this list. + +See `ps-lpr-command'." :type '(repeat :tag "PostScript lpr Switches" (choice :menu-tag "PostScript lpr Switch" :tag "PostScript lpr Switch" @@ -6526,10 +6547,23 @@ If FACE is not a valid face name, use default face." (and (fboundp 'start-process) 0) nil (ps-flatten-list ; dynamic evaluation - (mapcar 'ps-eval-switch ps-lpr-switches))))) + (ps-string-list + (mapcar 'ps-eval-switch ps-lpr-switches)))))) (and ps-razzle-dazzle (message "Printing...done"))) (kill-buffer ps-spool-buffer))) +(defun ps-string-list (arg) + (let (lstr) + (dolist (elm arg) + (cond ((stringp elm) + (setq lstr (cons elm lstr))) + ((listp elm) + (let ((s (ps-string-list elm))) + (when s + (setq lstr (cons s lstr))))) + (t ))) ; ignore any other value + (nreverse lstr))) + ;; Dynamic evaluation (defun ps-eval-switch (arg) (cond ((stringp arg) arg) |