]> code.delx.au - gnu-emacs/blobdiff - lisp/ps-print.el
Doc fixes re alist-get. (Bug#23548)
[gnu-emacs] / lisp / ps-print.el
index 0a2c214690fbff5a76574c6be5cfcff07bf497dc..1167b9c0530179b9bf1b88d88f484e42930c8330 100644 (file)
@@ -1,6 +1,6 @@
 ;;; ps-print.el --- print text from the buffer as PostScript
 
-;; Copyright (C) 1993-2015 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
 
 ;; Author: Jim Thompson (was <thompson@wg2.waii.com>)
 ;;     Jacques Duthen (was <duthen@cegelec-red.fr>)
@@ -809,7 +809,7 @@ Please send all bug fixes and enhancements to
 ;; on next page.  Visually, valid values are (the character `+' at right of
 ;; each column indicates that a line is printed):
 ;;
-;;                `nil'        `follow'        `full'        `full-follow'
+;;                 nil         `follow'        `full'        `full-follow'
 ;; Current Page --------     -----------     ---------     ----------------
 ;;             1  XXXXX +   1  XXXXXXXX +   1  XXXXXX +   1  XXXXXXXXXXXXX +
 ;;             2  XXXXX +   2  XXXXXXXX +   2  XXXXXX +   2  XXXXXXXXXXXXX +
@@ -1684,7 +1684,7 @@ non-default settings would be \"LPT1\" to \"LPT3\" for parallel printers, or
 for a shared network printer.  You can also set it to a name of a file, in
 which case the output gets appended to that file.  \(Note that `ps-print'
 package already has facilities for printing to a file, so you might as well use
-them instead of changing the setting of this variable.\)  If you want to
+them instead of changing the setting of this variable.)  If you want to
 silently discard the printed output, set this to \"NUL\".
 
 Set to t, if the utility given by `ps-lpr-command' needs an empty printer name.
@@ -1953,7 +1953,7 @@ If you set option `ps-selected-pages', first the pages are
 filtered by option `ps-selected-pages' and then by `ps-even-or-odd-pages'.
 For example, if we have:
 
-   (setq ps-selected-pages '(1 4 (6 . 10) (12 . 16) 20))
+   (setq ps-selected-pages \\='(1 4 (6 . 10) (12 . 16) 20))
 
 Combining with `ps-even-or-odd-pages' and option `ps-n-up-printing', we have:
 
@@ -2117,7 +2117,7 @@ See also documentation for `ps-zebra-stripes' and `ps-zebra-stripe-height'."
 Visually, valid values are (the character `+' at right of each column indicates
 that a line is printed):
 
-                  `nil'        `follow'        `full'        `full-follow'
+                   nil         `follow'        `full'        `full-follow'
    Current Page --------     -----------     ---------     ----------------
                1  XXXXX +   1  XXXXXXXX +   1  XXXXXX +   1  XXXXXXXXXXXXX +
                2  XXXXX +   2  XXXXXXXX +   2  XXXXXX +   2  XXXXXXXXXXXXX +
@@ -2249,9 +2249,9 @@ X, Y, XSCALE, YSCALE and ROTATION may be a floating point number, an integer
 number or a string.  If it is a string, the string should contain PostScript
 programming that returns a float or integer value.
 
-For example, if you wish to print an EPS image on all pages do:
+For example, if you wish to print an EPS image on all pages use:
 
-   '((\"~/images/EPS-image.ps\"))"
+   ((\"~/images/EPS-image.ps\"))"
   :type '(repeat
          (list
           (file   :tag "EPS File")
@@ -2300,9 +2300,9 @@ X, Y, FONTSIZE, GRAY and ROTATION may be a floating point number, an integer
 number or a string.  If it is a string, the string should contain PostScript
 programming that returns a float or integer value.
 
-For example, if you wish to print text \"Preliminary\" on all pages do:
+For example, if you wish to print text \"Preliminary\" on all pages use:
 
-   '((\"Preliminary\"))"
+   ((\"Preliminary\"))"
   :type '(repeat
          (list
           (string :tag "Text")
@@ -3172,7 +3172,7 @@ This variable is used only when `ps-print-color-p' is set to `black-white'."
       font-lock-variable-name-face
       font-lock-keyword-face
       font-lock-warning-face))
-  "A list of the \(non-bold\) faces that should be printed in bold font.
+  "A list of the (non-bold) faces that should be printed in bold font.
 This applies to generating PostScript."
   :type '(repeat face)
   :version "20"
@@ -3185,7 +3185,7 @@ This applies to generating PostScript."
       font-lock-string-face
       font-lock-comment-face
       font-lock-warning-face))
-  "A list of the \(non-italic\) faces that should be printed in italic font.
+  "A list of the (non-italic) faces that should be printed in italic font.
 This applies to generating PostScript."
   :type '(repeat face)
   :version "20"
@@ -3196,7 +3196,7 @@ This applies to generating PostScript."
     '(font-lock-function-name-face
       font-lock-constant-face
       font-lock-warning-face))
-  "A list of the \(non-underlined\) faces that should be printed underlined.
+  "A list of the (non-underlined) faces that should be printed underlined.
 This applies to generating PostScript."
   :type '(repeat face)
   :version "20"
@@ -3232,7 +3232,7 @@ in the PostScript array HeaderLinesLeft.
 
 Strings are inserted unchanged into the array; those representing
 PostScript string literals should be delimited with PostScript string
-delimiters '(' and ')'.
+delimiters `(' and `)'.
 
 For symbols with bound functions, the function is called and should return a
 string to be inserted into the array.  For symbols with bound values, the value
@@ -3286,8 +3286,8 @@ The value should be a list of strings and symbols, each representing an entry
 in the PostScript array FooterLinesLeft.
 
 Strings are inserted unchanged into the array; those representing PostScript
-string literals should be delimited with PostScript string delimiters '(' and
-')'.
+string literals should be delimited with PostScript string delimiters `(' and
+`)'.
 
 For symbols with bound functions, the function is called and should return a
 string to be inserted into the array.  For symbols with bound values, the value
@@ -3601,7 +3601,7 @@ image in a file with that name."
 (defun ps-line-lengths ()
   "Display the correspondence between a line length and a font size.
 Done using the current ps-print setup.
-Try: pr -t file | awk '{printf \"%3d %s\n\", length($0), $0}' | sort -r | head"
+Try: pr -t file | awk \\='{printf \"%3d %s\n\", length($0), $0}\\=' | sort -r | head"
   (interactive)
   (ps-line-lengths-internal))
 
@@ -4308,7 +4308,7 @@ which long lines wrap around."
 (defun ps-line-lengths-internal ()
   "Display the correspondence between a line length and a font size.
 Done using the current ps-print setup.
-Try: pr -t file | awk '{printf \"%3d %s\n\", length($0), $0}' | sort -r | head"
+Try: pr -t file | awk \\='{printf \"%3d %s\n\", length($0), $0}\\=' | sort -r | head"
   (let* ((ps-font-size-internal
          (or ps-font-size-internal
              (ps-get-font-size 'ps-font-size)))
@@ -4604,8 +4604,8 @@ page-height == ((floor print-height ((th + ls) * zh)) * ((th + ls) * zh)) - th
                       (setq prompt "File is unwritable"))
                      ((file-exists-p res)
                       (setq prompt "File exists")
-                      (not (y-or-n-p (format "File `%s' exists; overwrite? "
-                                             res))))
+                      (not (y-or-n-p (format-message
+                                      "File `%s' exists; overwrite? " res))))
                      (t nil))
           (setq res (read-file-name
                      (format "%s; save PostScript to file: " prompt)
@@ -4759,7 +4759,11 @@ page-height == ((floor print-height ((th + ls) * zh)) * ((th + ls) * zh)) - th
    ;; Literal strings should be output as is -- the string must contain its own
    ;; PS string delimiters, '(' and ')', if necessary.
    ((stringp content)
-    (ps-output content))
+    (if (functionp ps-encode-header-string-function)
+        (dolist (elem (funcall ps-encode-header-string-function
+                               content fonttag))
+         (ps-output elem))
+      (ps-output content)))
 
    ;; Functions are called -- they should return strings; they will be inserted
    ;; as strings and the PS string delimiters added.
@@ -4775,7 +4779,7 @@ page-height == ((floor print-height ((th + ls) * zh)) * ((th + ls) * zh)) - th
    ((and (symbolp content) (boundp content))
     (if (fboundp ps-encode-header-string-function)
        (dolist (l (funcall ps-encode-header-string-function
-                            (symbol-value content) fonttag))
+                            (symbol-value content) fonttag))
          (ps-output-string l))
       (ps-output-string (symbol-value content))))
 
@@ -5711,7 +5715,7 @@ XSTART YSTART are the relative position for the first page in a sheet.")
         (error "Invalid %s `%S'%s"
                mess size
                (if arg
-                   (format " for `%S'" arg)
+                   (format-message " for `%S'" arg)
                  "")))
     siz))
 
@@ -6043,10 +6047,7 @@ XSTART YSTART are the relative position for the first page in a sheet.")
            (progn
              (setq ps-razchunk q-done)
              (message "Formatting...%3d%%"
-                      (if (< q-todo 100)
-                          (/ (* 100 q-done) q-todo)
-                        (/ q-done (/ q-todo 100)))
-                      ))))))
+                      (floor (* 100.0 q-done) q-todo)))))))
 
 (defvar ps-last-font nil)
 
@@ -6592,7 +6593,7 @@ If FACE is not a valid face name, use default face."
 ;; To make this file smaller, some commands go in a separate file.
 ;; But autoload them here to make the separation invisible.
 \f
-;;;### (autoloads nil "ps-mule" "ps-mule.el" "231b07356e5a37ebf517c613a3a12bba")
+;;;### (autoloads nil "ps-mule" "ps-mule.el" "4a263b7a727e853f2e6672922c4e5755")
 ;;; Generated autoloads from ps-mule.el
 
 (defvar ps-multibyte-buffer nil "\