diff options
| author | Vinicius Jose Latorre | 2004-11-21 22:30:00 +0000 |
|---|---|---|
| committer | Vinicius Jose Latorre | 2004-11-21 22:30:00 +0000 |
| commit | b6d0ac875cd0851a855a3c9f4922f83f36fb74d0 (patch) | |
| tree | 9b23a0d956016bdeb4585eb56d841f8c554f0165 | |
| parent | c1aa486418412c6e6eff46ceb7ff8b9276fa5263 (diff) | |
| download | emacs-b6d0ac875cd0851a855a3c9f4922f83f36fb74d0.tar.gz emacs-b6d0ac875cd0851a855a3c9f4922f83f36fb74d0.zip | |
:version & eval-and-compile & featurep
| -rw-r--r-- | lisp/ChangeLog | 7 | ||||
| -rw-r--r-- | lisp/ps-print.el | 553 |
2 files changed, 327 insertions, 233 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2d2bc722885..fb1277c957c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,10 @@ | |||
| 1 | 2004-11-21 Vinicius Jose Latorre <viniciusjl@ig.com.br> | ||
| 2 | |||
| 3 | * ps-print.el: Insert :version tag into all defgroup and defcustom. | ||
| 4 | Use (featurep 'xemacs) instead of (eq ps-print-emacs-type 'xemacs). | ||
| 5 | Eliminate eval-and-compile usage. | ||
| 6 | (ps-insert-file): Use insert-file-contents instead of insert-file. | ||
| 7 | |||
| 1 | 2004-11-21 Jay Belanger <belanger@truman.edu> | 8 | 2004-11-21 Jay Belanger <belanger@truman.edu> |
| 2 | 9 | ||
| 3 | * calc/calc-prog.el (math-integral-cache-state, calc-lang) | 10 | * calc/calc-prog.el (math-integral-cache-state, calc-lang) |
diff --git a/lisp/ps-print.el b/lisp/ps-print.el index 78a558baebe..d238421798a 100644 --- a/lisp/ps-print.el +++ b/lisp/ps-print.el | |||
| @@ -1443,115 +1443,115 @@ Please send all bug fixes and enhancements to | |||
| 1443 | 1443 | ||
| 1444 | ;;; Code: | 1444 | ;;; Code: |
| 1445 | 1445 | ||
| 1446 | (eval-and-compile | ||
| 1447 | (require 'lpr) | ||
| 1448 | 1446 | ||
| 1449 | (or (featurep 'lisp-float-type) | 1447 | (require 'lpr) |
| 1450 | (error "`ps-print' requires floating point support")) | ||
| 1451 | 1448 | ||
| 1449 | (or (featurep 'lisp-float-type) | ||
| 1450 | (error "`ps-print' requires floating point support")) | ||
| 1452 | 1451 | ||
| 1453 | (defvar ps-print-emacs-type | ||
| 1454 | (let ((case-fold-search t)) | ||
| 1455 | (cond ((string-match "XEmacs" emacs-version) 'xemacs) | ||
| 1456 | ((string-match "Lucid" emacs-version) | ||
| 1457 | (error "`ps-print' doesn't support Lucid")) | ||
| 1458 | ((string-match "Epoch" emacs-version) | ||
| 1459 | (error "`ps-print' doesn't support Epoch")) | ||
| 1460 | (t | ||
| 1461 | (unless (and (boundp 'emacs-major-version) | ||
| 1462 | (> emacs-major-version 19)) | ||
| 1463 | (error "`ps-print' only supports Emacs 20 and higher")) | ||
| 1464 | 'emacs)))) | ||
| 1465 | 1452 | ||
| 1453 | (defvar ps-print-emacs-type | ||
| 1454 | (let ((case-fold-search t)) | ||
| 1455 | (cond ((string-match "XEmacs" emacs-version) 'xemacs) | ||
| 1456 | ((string-match "Lucid" emacs-version) | ||
| 1457 | (error "`ps-print' doesn't support Lucid")) | ||
| 1458 | ((string-match "Epoch" emacs-version) | ||
| 1459 | (error "`ps-print' doesn't support Epoch")) | ||
| 1460 | (t | ||
| 1461 | (unless (and (boundp 'emacs-major-version) | ||
| 1462 | (> emacs-major-version 19)) | ||
| 1463 | (error "`ps-print' only supports Emacs 20 and higher")) | ||
| 1464 | 'emacs)))) | ||
| 1466 | 1465 | ||
| 1467 | ;; For Emacs 20.2 and the earlier version. | ||
| 1468 | 1466 | ||
| 1469 | (or (fboundp 'set-buffer-multibyte) | 1467 | ;; For Emacs 20.2 and the earlier version. |
| 1470 | (defun set-buffer-multibyte (arg) | ||
| 1471 | (setq enable-multibyte-characters arg))) | ||
| 1472 | 1468 | ||
| 1473 | (or (fboundp 'string-as-unibyte) | 1469 | (or (fboundp 'set-buffer-multibyte) |
| 1474 | (defun string-as-unibyte (arg) arg)) | 1470 | (defun set-buffer-multibyte (arg) |
| 1471 | (setq enable-multibyte-characters arg))) | ||
| 1475 | 1472 | ||
| 1476 | (or (fboundp 'string-as-multibyte) | 1473 | (or (fboundp 'string-as-unibyte) |
| 1477 | (defun string-as-multibyte (arg) arg)) | 1474 | (defun string-as-unibyte (arg) arg)) |
| 1478 | 1475 | ||
| 1479 | (or (fboundp 'char-charset) | 1476 | (or (fboundp 'string-as-multibyte) |
| 1480 | (defun char-charset (arg) 'ascii)) | 1477 | (defun string-as-multibyte (arg) arg)) |
| 1481 | 1478 | ||
| 1482 | (or (fboundp 'charset-after) | 1479 | (or (fboundp 'char-charset) |
| 1483 | (defun charset-after (&optional arg) | 1480 | (defun char-charset (arg) 'ascii)) |
| 1484 | (char-charset (char-after arg)))) | ||
| 1485 | 1481 | ||
| 1482 | (or (fboundp 'charset-after) | ||
| 1483 | (defun charset-after (&optional arg) | ||
| 1484 | (char-charset (char-after arg)))) | ||
| 1486 | 1485 | ||
| 1487 | ;; GNU Emacs | 1486 | |
| 1488 | (or (fboundp 'line-beginning-position) | 1487 | ;; GNU Emacs |
| 1489 | (defun line-beginning-position (&optional n) | 1488 | (or (fboundp 'line-beginning-position) |
| 1490 | (save-excursion | 1489 | (defun line-beginning-position (&optional n) |
| 1491 | (and n (/= n 1) (forward-line (1- n))) | 1490 | (save-excursion |
| 1492 | (beginning-of-line) | 1491 | (and n (/= n 1) (forward-line (1- n))) |
| 1493 | (point)))) | 1492 | (beginning-of-line) |
| 1494 | 1493 | (point)))) | |
| 1495 | 1494 | ||
| 1496 | ;; to avoid compilation gripes | 1495 | |
| 1497 | 1496 | ;; to avoid compilation gripes | |
| 1498 | ;; XEmacs | 1497 | |
| 1499 | (defalias 'ps-x-color-instance-p 'color-instance-p) | 1498 | ;; XEmacs |
| 1500 | (defalias 'ps-x-color-instance-rgb-components 'color-instance-rgb-components) | 1499 | (defalias 'ps-x-color-instance-p 'color-instance-p) |
| 1501 | (defalias 'ps-x-color-name 'color-name) | 1500 | (defalias 'ps-x-color-instance-rgb-components 'color-instance-rgb-components) |
| 1502 | (defalias 'ps-x-color-specifier-p 'color-specifier-p) | 1501 | (defalias 'ps-x-color-name 'color-name) |
| 1503 | (defalias 'ps-x-copy-coding-system 'copy-coding-system) | 1502 | (defalias 'ps-x-color-specifier-p 'color-specifier-p) |
| 1504 | (defalias 'ps-x-device-class 'device-class) | 1503 | (defalias 'ps-x-copy-coding-system 'copy-coding-system) |
| 1505 | (defalias 'ps-x-extent-end-position 'extent-end-position) | 1504 | (defalias 'ps-x-device-class 'device-class) |
| 1506 | (defalias 'ps-x-extent-face 'extent-face) | 1505 | (defalias 'ps-x-extent-end-position 'extent-end-position) |
| 1507 | (defalias 'ps-x-extent-priority 'extent-priority) | 1506 | (defalias 'ps-x-extent-face 'extent-face) |
| 1508 | (defalias 'ps-x-extent-start-position 'extent-start-position) | 1507 | (defalias 'ps-x-extent-priority 'extent-priority) |
| 1509 | (defalias 'ps-x-face-font-instance 'face-font-instance) | 1508 | (defalias 'ps-x-extent-start-position 'extent-start-position) |
| 1510 | (defalias 'ps-x-find-coding-system 'find-coding-system) | 1509 | (defalias 'ps-x-face-font-instance 'face-font-instance) |
| 1511 | (defalias 'ps-x-font-instance-properties 'font-instance-properties) | 1510 | (defalias 'ps-x-find-coding-system 'find-coding-system) |
| 1512 | (defalias 'ps-x-make-color-instance 'make-color-instance) | 1511 | (defalias 'ps-x-font-instance-properties 'font-instance-properties) |
| 1513 | (defalias 'ps-x-map-extents 'map-extents) | 1512 | (defalias 'ps-x-make-color-instance 'make-color-instance) |
| 1514 | 1513 | (defalias 'ps-x-map-extents 'map-extents) | |
| 1515 | ;; GNU Emacs | 1514 | |
| 1516 | (defalias 'ps-e-face-bold-p 'face-bold-p) | 1515 | ;; GNU Emacs |
| 1517 | (defalias 'ps-e-face-italic-p 'face-italic-p) | 1516 | (defalias 'ps-e-face-bold-p 'face-bold-p) |
| 1518 | (defalias 'ps-e-next-overlay-change 'next-overlay-change) | 1517 | (defalias 'ps-e-face-italic-p 'face-italic-p) |
| 1519 | (defalias 'ps-e-overlays-at 'overlays-at) | 1518 | (defalias 'ps-e-next-overlay-change 'next-overlay-change) |
| 1520 | (defalias 'ps-e-overlay-get 'overlay-get) | 1519 | (defalias 'ps-e-overlays-at 'overlays-at) |
| 1521 | (defalias 'ps-e-overlay-end 'overlay-end) | 1520 | (defalias 'ps-e-overlay-get 'overlay-get) |
| 1522 | (defalias 'ps-e-x-color-values 'x-color-values) | 1521 | (defalias 'ps-e-overlay-end 'overlay-end) |
| 1523 | (defalias 'ps-e-color-values 'color-values) | 1522 | (defalias 'ps-e-x-color-values 'x-color-values) |
| 1524 | (if (fboundp 'find-composition) | 1523 | (defalias 'ps-e-color-values 'color-values) |
| 1525 | (defalias 'ps-e-find-composition 'find-composition) | 1524 | (if (fboundp 'find-composition) |
| 1526 | (defalias 'ps-e-find-composition 'ignore)) | 1525 | (defalias 'ps-e-find-composition 'find-composition) |
| 1527 | 1526 | (defalias 'ps-e-find-composition 'ignore)) | |
| 1528 | 1527 | ||
| 1529 | (defconst ps-windows-system | 1528 | |
| 1530 | (memq system-type '(emx win32 w32 mswindows ms-dos windows-nt))) | 1529 | (defconst ps-windows-system |
| 1531 | (defconst ps-lp-system | 1530 | (memq system-type '(emx win32 w32 mswindows ms-dos windows-nt))) |
| 1532 | (memq system-type '(usg-unix-v dgux hpux irix))) | 1531 | (defconst ps-lp-system |
| 1533 | 1532 | (memq system-type '(usg-unix-v dgux hpux irix))) | |
| 1534 | 1533 | ||
| 1535 | (defun ps-xemacs-color-name (color) | 1534 | |
| 1536 | (if (ps-x-color-specifier-p color) | 1535 | (defun ps-xemacs-color-name (color) |
| 1537 | (ps-x-color-name color) | 1536 | (if (ps-x-color-specifier-p color) |
| 1538 | color)) | 1537 | (ps-x-color-name color) |
| 1539 | 1538 | color)) | |
| 1540 | 1539 | ||
| 1541 | (cond ((eq ps-print-emacs-type 'emacs) ; emacs | 1540 | |
| 1542 | (defvar mark-active nil) | 1541 | (cond ((featurep 'xemacs) ; xemacs |
| 1543 | (defun ps-mark-active-p () | 1542 | (defalias 'ps-mark-active-p 'region-active-p) |
| 1544 | mark-active) | 1543 | (defun ps-face-foreground-name (face) |
| 1545 | (defalias 'ps-face-foreground-name 'face-foreground) | 1544 | (ps-xemacs-color-name (face-foreground face))) |
| 1546 | (defalias 'ps-face-background-name 'face-background) | 1545 | (defun ps-face-background-name (face) |
| 1547 | ) | 1546 | (ps-xemacs-color-name (face-background face))) |
| 1548 | (t ; xemacs | 1547 | ) |
| 1549 | (defalias 'ps-mark-active-p 'region-active-p) | 1548 | (t ; emacs |
| 1550 | (defun ps-face-foreground-name (face) | 1549 | (defvar mark-active nil) |
| 1551 | (ps-xemacs-color-name (face-foreground face))) | 1550 | (defun ps-mark-active-p () |
| 1552 | (defun ps-face-background-name (face) | 1551 | mark-active) |
| 1553 | (ps-xemacs-color-name (face-background face))) | 1552 | (defalias 'ps-face-foreground-name 'face-foreground) |
| 1554 | ))) | 1553 | (defalias 'ps-face-background-name 'face-background) |
| 1554 | )) | ||
| 1555 | 1555 | ||
| 1556 | 1556 | ||
| 1557 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 1557 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| @@ -1563,12 +1563,14 @@ Please send all bug fixes and enhancements to | |||
| 1563 | (defgroup postscript nil | 1563 | (defgroup postscript nil |
| 1564 | "PostScript Group" | 1564 | "PostScript Group" |
| 1565 | :tag "PostScript" | 1565 | :tag "PostScript" |
| 1566 | :version "20" | ||
| 1566 | :group 'emacs) | 1567 | :group 'emacs) |
| 1567 | 1568 | ||
| 1568 | (defgroup ps-print nil | 1569 | (defgroup ps-print nil |
| 1569 | "PostScript generator for Emacs" | 1570 | "PostScript generator for Emacs" |
| 1570 | :link '(emacs-library-link :tag "Source Lisp File" "ps-print.el") | 1571 | :link '(emacs-library-link :tag "Source Lisp File" "ps-print.el") |
| 1571 | :prefix "ps-" | 1572 | :prefix "ps-" |
| 1573 | :version "20" | ||
| 1572 | :group 'wp | 1574 | :group 'wp |
| 1573 | :group 'postscript) | 1575 | :group 'postscript) |
| 1574 | 1576 | ||
| @@ -1576,36 +1578,42 @@ Please send all bug fixes and enhancements to | |||
| 1576 | "Horizontal page layout" | 1578 | "Horizontal page layout" |
| 1577 | :prefix "ps-" | 1579 | :prefix "ps-" |
| 1578 | :tag "Horizontal" | 1580 | :tag "Horizontal" |
| 1581 | :version "20" | ||
| 1579 | :group 'ps-print) | 1582 | :group 'ps-print) |
| 1580 | 1583 | ||
| 1581 | (defgroup ps-print-vertical nil | 1584 | (defgroup ps-print-vertical nil |
| 1582 | "Vertical page layout" | 1585 | "Vertical page layout" |
| 1583 | :prefix "ps-" | 1586 | :prefix "ps-" |
| 1584 | :tag "Vertical" | 1587 | :tag "Vertical" |
| 1588 | :version "20" | ||
| 1585 | :group 'ps-print) | 1589 | :group 'ps-print) |
| 1586 | 1590 | ||
| 1587 | (defgroup ps-print-headers nil | 1591 | (defgroup ps-print-headers nil |
| 1588 | "Headers & footers layout" | 1592 | "Headers & footers layout" |
| 1589 | :prefix "ps-" | 1593 | :prefix "ps-" |
| 1590 | :tag "Header & Footer" | 1594 | :tag "Header & Footer" |
| 1595 | :version "20" | ||
| 1591 | :group 'ps-print) | 1596 | :group 'ps-print) |
| 1592 | 1597 | ||
| 1593 | (defgroup ps-print-font nil | 1598 | (defgroup ps-print-font nil |
| 1594 | "Fonts customization" | 1599 | "Fonts customization" |
| 1595 | :prefix "ps-" | 1600 | :prefix "ps-" |
| 1596 | :tag "Font" | 1601 | :tag "Font" |
| 1602 | :version "20" | ||
| 1597 | :group 'ps-print) | 1603 | :group 'ps-print) |
| 1598 | 1604 | ||
| 1599 | (defgroup ps-print-color nil | 1605 | (defgroup ps-print-color nil |
| 1600 | "Color customization" | 1606 | "Color customization" |
| 1601 | :prefix "ps-" | 1607 | :prefix "ps-" |
| 1602 | :tag "Color" | 1608 | :tag "Color" |
| 1609 | :version "20" | ||
| 1603 | :group 'ps-print) | 1610 | :group 'ps-print) |
| 1604 | 1611 | ||
| 1605 | (defgroup ps-print-face nil | 1612 | (defgroup ps-print-face nil |
| 1606 | "Faces customization" | 1613 | "Faces customization" |
| 1607 | :prefix "ps-" | 1614 | :prefix "ps-" |
| 1608 | :tag "PS Faces" | 1615 | :tag "PS Faces" |
| 1616 | :version "20" | ||
| 1609 | :group 'ps-print | 1617 | :group 'ps-print |
| 1610 | :group 'faces) | 1618 | :group 'faces) |
| 1611 | 1619 | ||
| @@ -1613,36 +1621,42 @@ Please send all bug fixes and enhancements to | |||
| 1613 | "N-up customization" | 1621 | "N-up customization" |
| 1614 | :prefix "ps-" | 1622 | :prefix "ps-" |
| 1615 | :tag "N-Up" | 1623 | :tag "N-Up" |
| 1624 | :version "20" | ||
| 1616 | :group 'ps-print) | 1625 | :group 'ps-print) |
| 1617 | 1626 | ||
| 1618 | (defgroup ps-print-zebra nil | 1627 | (defgroup ps-print-zebra nil |
| 1619 | "Zebra customization" | 1628 | "Zebra customization" |
| 1620 | :prefix "ps-" | 1629 | :prefix "ps-" |
| 1621 | :tag "Zebra" | 1630 | :tag "Zebra" |
| 1631 | :version "20" | ||
| 1622 | :group 'ps-print) | 1632 | :group 'ps-print) |
| 1623 | 1633 | ||
| 1624 | (defgroup ps-print-background nil | 1634 | (defgroup ps-print-background nil |
| 1625 | "Background customization" | 1635 | "Background customization" |
| 1626 | :prefix "ps-" | 1636 | :prefix "ps-" |
| 1627 | :tag "Background" | 1637 | :tag "Background" |
| 1638 | :version "20" | ||
| 1628 | :group 'ps-print) | 1639 | :group 'ps-print) |
| 1629 | 1640 | ||
| 1630 | (defgroup ps-print-printer '((lpr custom-group)) | 1641 | (defgroup ps-print-printer '((lpr custom-group)) |
| 1631 | "Printer customization" | 1642 | "Printer customization" |
| 1632 | :prefix "ps-" | 1643 | :prefix "ps-" |
| 1633 | :tag "Printer" | 1644 | :tag "Printer" |
| 1645 | :version "20" | ||
| 1634 | :group 'ps-print) | 1646 | :group 'ps-print) |
| 1635 | 1647 | ||
| 1636 | (defgroup ps-print-page nil | 1648 | (defgroup ps-print-page nil |
| 1637 | "Page customization" | 1649 | "Page customization" |
| 1638 | :prefix "ps-" | 1650 | :prefix "ps-" |
| 1639 | :tag "Page" | 1651 | :tag "Page" |
| 1652 | :version "20" | ||
| 1640 | :group 'ps-print) | 1653 | :group 'ps-print) |
| 1641 | 1654 | ||
| 1642 | (defgroup ps-print-miscellany nil | 1655 | (defgroup ps-print-miscellany nil |
| 1643 | "Miscellany customization" | 1656 | "Miscellany customization" |
| 1644 | :prefix "ps-" | 1657 | :prefix "ps-" |
| 1645 | :tag "Miscellany" | 1658 | :tag "Miscellany" |
| 1659 | :version "20" | ||
| 1646 | :group 'ps-print) | 1660 | :group 'ps-print) |
| 1647 | 1661 | ||
| 1648 | 1662 | ||
| @@ -1669,6 +1683,7 @@ Any other value is treated as `paper'." | |||
| 1669 | :tag "Error Handler Message" | 1683 | :tag "Error Handler Message" |
| 1670 | (const none) (const paper) | 1684 | (const none) (const paper) |
| 1671 | (const system) (const paper-and-system)) | 1685 | (const system) (const paper-and-system)) |
| 1686 | :version "20" | ||
| 1672 | :group 'ps-print-miscellany) | 1687 | :group 'ps-print-miscellany) |
| 1673 | 1688 | ||
| 1674 | (defcustom ps-user-defined-prologue nil | 1689 | (defcustom ps-user-defined-prologue nil |
| @@ -1700,6 +1715,7 @@ As an example for `ps-user-defined-prologue' setting: | |||
| 1700 | :type '(choice :menu-tag "User Defined Prologue" | 1715 | :type '(choice :menu-tag "User Defined Prologue" |
| 1701 | :tag "User Defined Prologue" | 1716 | :tag "User Defined Prologue" |
| 1702 | (const :tag "none" nil) string symbol) | 1717 | (const :tag "none" nil) string symbol) |
| 1718 | :version "20" | ||
| 1703 | :group 'ps-print-miscellany) | 1719 | :group 'ps-print-miscellany) |
| 1704 | 1720 | ||
| 1705 | (defcustom ps-print-prologue-header nil | 1721 | (defcustom ps-print-prologue-header nil |
| @@ -1729,6 +1745,7 @@ For more information about PostScript document comments, see: | |||
| 1729 | :type '(choice :menu-tag "Prologue Header" | 1745 | :type '(choice :menu-tag "Prologue Header" |
| 1730 | :tag "Prologue Header" | 1746 | :tag "Prologue Header" |
| 1731 | (const :tag "none" nil) string symbol) | 1747 | (const :tag "none" nil) string symbol) |
| 1748 | :version "20" | ||
| 1732 | :group 'ps-print-miscellany) | 1749 | :group 'ps-print-miscellany) |
| 1733 | 1750 | ||
| 1734 | (defcustom ps-printer-name (and (boundp 'printer-name) | 1751 | (defcustom ps-printer-name (and (boundp 'printer-name) |
| @@ -1760,6 +1777,7 @@ See also `ps-printer-name-option' for documentation." | |||
| 1760 | (const :tag "No Printer Name" t) | 1777 | (const :tag "No Printer Name" t) |
| 1761 | (file :tag "Print to file") | 1778 | (file :tag "Print to file") |
| 1762 | (string :tag "Pipe to ps-lpr-command")) | 1779 | (string :tag "Pipe to ps-lpr-command")) |
| 1780 | :version "20" | ||
| 1763 | :group 'ps-print-printer) | 1781 | :group 'ps-print-printer) |
| 1764 | 1782 | ||
| 1765 | (defcustom ps-printer-name-option | 1783 | (defcustom ps-printer-name-option |
| @@ -1803,6 +1821,7 @@ Novell Netware respectively) are handled specially, using `ps-printer-name' as | |||
| 1803 | the destination for output; any other program is treated like `lpr' except that | 1821 | the destination for output; any other program is treated like `lpr' except that |
| 1804 | an explicit filename is given as the last argument." | 1822 | an explicit filename is given as the last argument." |
| 1805 | :type 'string | 1823 | :type 'string |
| 1824 | :version "20" | ||
| 1806 | :group 'ps-print-printer) | 1825 | :group 'ps-print-printer) |
| 1807 | 1826 | ||
| 1808 | (defcustom ps-lpr-switches lpr-switches | 1827 | (defcustom ps-lpr-switches lpr-switches |
| @@ -1811,6 +1830,7 @@ an explicit filename is given as the last argument." | |||
| 1811 | (choice :menu-tag "PostScript lpr Switch" | 1830 | (choice :menu-tag "PostScript lpr Switch" |
| 1812 | :tag "PostScript lpr Switch" | 1831 | :tag "PostScript lpr Switch" |
| 1813 | string symbol (repeat sexp))) | 1832 | string symbol (repeat sexp))) |
| 1833 | :version "20" | ||
| 1814 | :group 'ps-print-printer) | 1834 | :group 'ps-print-printer) |
| 1815 | 1835 | ||
| 1816 | (defcustom ps-print-region-function nil | 1836 | (defcustom ps-print-region-function nil |
| @@ -1818,6 +1838,7 @@ an explicit filename is given as the last argument." | |||
| 1818 | See definition of `call-process-region' for calling conventions. The fourth | 1838 | See definition of `call-process-region' for calling conventions. The fourth |
| 1819 | and the sixth arguments are both nil." | 1839 | and the sixth arguments are both nil." |
| 1820 | :type '(choice (const nil) function) | 1840 | :type '(choice (const nil) function) |
| 1841 | :version "20" | ||
| 1821 | :group 'ps-print-printer) | 1842 | :group 'ps-print-printer) |
| 1822 | 1843 | ||
| 1823 | (defcustom ps-manual-feed nil | 1844 | (defcustom ps-manual-feed nil |
| @@ -1825,12 +1846,14 @@ and the sixth arguments are both nil." | |||
| 1825 | 1846 | ||
| 1826 | If it's nil, automatic feeding takes place." | 1847 | If it's nil, automatic feeding takes place." |
| 1827 | :type 'boolean | 1848 | :type 'boolean |
| 1849 | :version "20" | ||
| 1828 | :group 'ps-print-printer) | 1850 | :group 'ps-print-printer) |
| 1829 | 1851 | ||
| 1830 | (defcustom ps-end-with-control-d (and ps-windows-system t) | 1852 | (defcustom ps-end-with-control-d (and ps-windows-system t) |
| 1831 | "*Non-nil means insert C-d at end of PostScript file generated." | 1853 | "*Non-nil means insert C-d at end of PostScript file generated." |
| 1832 | :version "21.1" | 1854 | :version "21.1" |
| 1833 | :type 'boolean | 1855 | :type 'boolean |
| 1856 | :version "20" | ||
| 1834 | :group 'ps-print-printer) | 1857 | :group 'ps-print-printer) |
| 1835 | 1858 | ||
| 1836 | ;;; Page layout | 1859 | ;;; Page layout |
| @@ -1874,6 +1897,7 @@ See `ps-paper-type'." | |||
| 1874 | (number :tag "Width") | 1897 | (number :tag "Width") |
| 1875 | (number :tag "Height") | 1898 | (number :tag "Height") |
| 1876 | (string :tag "Media"))) | 1899 | (string :tag "Media"))) |
| 1900 | :version "20" | ||
| 1877 | :group 'ps-print-page) | 1901 | :group 'ps-print-page) |
| 1878 | 1902 | ||
| 1879 | ;;;###autoload | 1903 | ;;;###autoload |
| @@ -1887,6 +1911,7 @@ example `letter', `legal' or `a4'." | |||
| 1887 | nil | 1911 | nil |
| 1888 | (widget-put wid :error "Unknown paper size") | 1912 | (widget-put wid :error "Unknown paper size") |
| 1889 | wid))) | 1913 | wid))) |
| 1914 | :version "20" | ||
| 1890 | :group 'ps-print-page) | 1915 | :group 'ps-print-page) |
| 1891 | 1916 | ||
| 1892 | (defcustom ps-warn-paper-type t | 1917 | (defcustom ps-warn-paper-type t |
| @@ -1894,11 +1919,13 @@ example `letter', `legal' or `a4'." | |||
| 1894 | 1919 | ||
| 1895 | It's used when `ps-spool-config' is set to `setpagedevice'." | 1920 | It's used when `ps-spool-config' is set to `setpagedevice'." |
| 1896 | :type 'boolean | 1921 | :type 'boolean |
| 1922 | :version "20" | ||
| 1897 | :group 'ps-print-page) | 1923 | :group 'ps-print-page) |
| 1898 | 1924 | ||
| 1899 | (defcustom ps-landscape-mode nil | 1925 | (defcustom ps-landscape-mode nil |
| 1900 | "*Non-nil means print in landscape mode." | 1926 | "*Non-nil means print in landscape mode." |
| 1901 | :type 'boolean | 1927 | :type 'boolean |
| 1928 | :version "20" | ||
| 1902 | :group 'ps-print-page) | 1929 | :group 'ps-print-page) |
| 1903 | 1930 | ||
| 1904 | (defcustom ps-print-upside-down nil | 1931 | (defcustom ps-print-upside-down nil |
| @@ -1931,6 +1958,7 @@ See also `ps-even-or-odd-pages'." | |||
| 1931 | (cons :tag "Range" | 1958 | (cons :tag "Range" |
| 1932 | (integer :tag "From") | 1959 | (integer :tag "From") |
| 1933 | (integer :tag "To")))) | 1960 | (integer :tag "To")))) |
| 1961 | :version "20" | ||
| 1934 | :group 'ps-print-page) | 1962 | :group 'ps-print-page) |
| 1935 | 1963 | ||
| 1936 | (defcustom ps-even-or-odd-pages nil | 1964 | (defcustom ps-even-or-odd-pages nil |
| @@ -1989,6 +2017,7 @@ sheet parity." | |||
| 1989 | (const :tag "Only Odd Pages" odd-page) | 2017 | (const :tag "Only Odd Pages" odd-page) |
| 1990 | (const :tag "Only Even Sheets" even-sheet) | 2018 | (const :tag "Only Even Sheets" even-sheet) |
| 1991 | (const :tag "Only Odd Sheets" odd-sheet)) | 2019 | (const :tag "Only Odd Sheets" odd-sheet)) |
| 2020 | :version "20" | ||
| 1992 | :group 'ps-print-page) | 2021 | :group 'ps-print-page) |
| 1993 | 2022 | ||
| 1994 | (defcustom ps-print-control-characters 'control-8-bit | 2023 | (defcustom ps-print-control-characters 'control-8-bit |
| @@ -2020,6 +2049,7 @@ Any other value is treated as nil." | |||
| 2020 | :tag "Control Char" | 2049 | :tag "Control Char" |
| 2021 | (const 8-bit) (const control-8-bit) | 2050 | (const 8-bit) (const control-8-bit) |
| 2022 | (const control) (const :tag "nil" nil)) | 2051 | (const control) (const :tag "nil" nil)) |
| 2052 | :version "20" | ||
| 2023 | :group 'ps-print-miscellany) | 2053 | :group 'ps-print-miscellany) |
| 2024 | 2054 | ||
| 2025 | (defcustom ps-n-up-printing 1 | 2055 | (defcustom ps-n-up-printing 1 |
| @@ -2035,16 +2065,19 @@ Any other value is treated as nil." | |||
| 2035 | wid :error | 2065 | wid :error |
| 2036 | "Number of pages per sheet paper must be between 1 and 100.") | 2066 | "Number of pages per sheet paper must be between 1 and 100.") |
| 2037 | wid))) | 2067 | wid))) |
| 2068 | :version "20" | ||
| 2038 | :group 'ps-print-n-up) | 2069 | :group 'ps-print-n-up) |
| 2039 | 2070 | ||
| 2040 | (defcustom ps-n-up-margin (/ (* 72 1.0) 2.54) ; 1 cm | 2071 | (defcustom ps-n-up-margin (/ (* 72 1.0) 2.54) ; 1 cm |
| 2041 | "*Specify the margin in points between the sheet border and n-up printing." | 2072 | "*Specify the margin in points between the sheet border and n-up printing." |
| 2042 | :type 'number | 2073 | :type 'number |
| 2074 | :version "20" | ||
| 2043 | :group 'ps-print-n-up) | 2075 | :group 'ps-print-n-up) |
| 2044 | 2076 | ||
| 2045 | (defcustom ps-n-up-border-p t | 2077 | (defcustom ps-n-up-border-p t |
| 2046 | "*Non-nil means a border is drawn around each page." | 2078 | "*Non-nil means a border is drawn around each page." |
| 2047 | :type 'boolean | 2079 | :type 'boolean |
| 2080 | :version "20" | ||
| 2048 | :group 'ps-print-n-up) | 2081 | :group 'ps-print-n-up) |
| 2049 | 2082 | ||
| 2050 | (defcustom ps-n-up-filling 'left-top | 2083 | (defcustom ps-n-up-filling 'left-top |
| @@ -2076,23 +2109,27 @@ Any other value is treated as `left-top'." | |||
| 2076 | (const right-top) (const right-bottom) | 2109 | (const right-top) (const right-bottom) |
| 2077 | (const top-left) (const bottom-left) | 2110 | (const top-left) (const bottom-left) |
| 2078 | (const top-right) (const bottom-right)) | 2111 | (const top-right) (const bottom-right)) |
| 2112 | :version "20" | ||
| 2079 | :group 'ps-print-n-up) | 2113 | :group 'ps-print-n-up) |
| 2080 | 2114 | ||
| 2081 | (defcustom ps-number-of-columns (if ps-landscape-mode 2 1) | 2115 | (defcustom ps-number-of-columns (if ps-landscape-mode 2 1) |
| 2082 | "*Specify the number of columns." | 2116 | "*Specify the number of columns." |
| 2083 | :type 'number | 2117 | :type 'number |
| 2118 | :version "20" | ||
| 2084 | :group 'ps-print-miscellany) | 2119 | :group 'ps-print-miscellany) |
| 2085 | 2120 | ||
| 2086 | (defcustom ps-zebra-stripes nil | 2121 | (defcustom ps-zebra-stripes nil |
| 2087 | "*Non-nil means print zebra stripes. | 2122 | "*Non-nil means print zebra stripes. |
| 2088 | See also documentation for `ps-zebra-stripe-height' and `ps-zebra-color'." | 2123 | See also documentation for `ps-zebra-stripe-height' and `ps-zebra-color'." |
| 2089 | :type 'boolean | 2124 | :type 'boolean |
| 2125 | :version "20" | ||
| 2090 | :group 'ps-print-zebra) | 2126 | :group 'ps-print-zebra) |
| 2091 | 2127 | ||
| 2092 | (defcustom ps-zebra-stripe-height 3 | 2128 | (defcustom ps-zebra-stripe-height 3 |
| 2093 | "*Number of zebra stripe lines. | 2129 | "*Number of zebra stripe lines. |
| 2094 | See also documentation for `ps-zebra-stripes' and `ps-zebra-color'." | 2130 | See also documentation for `ps-zebra-stripes' and `ps-zebra-color'." |
| 2095 | :type 'number | 2131 | :type 'number |
| 2132 | :version "20" | ||
| 2096 | :group 'ps-print-zebra) | 2133 | :group 'ps-print-zebra) |
| 2097 | 2134 | ||
| 2098 | (defcustom ps-zebra-color 0.95 | 2135 | (defcustom ps-zebra-color 0.95 |
| @@ -2106,6 +2143,7 @@ See also documentation for `ps-zebra-stripes' and `ps-zebra-stripe-height'." | |||
| 2106 | (number :tag "Red") | 2143 | (number :tag "Red") |
| 2107 | (number :tag "Green") | 2144 | (number :tag "Green") |
| 2108 | (number :tag "Blue"))) | 2145 | (number :tag "Blue"))) |
| 2146 | :version "20" | ||
| 2109 | :group 'ps-print-zebra) | 2147 | :group 'ps-print-zebra) |
| 2110 | 2148 | ||
| 2111 | (defcustom ps-zebra-stripe-follow nil | 2149 | (defcustom ps-zebra-stripe-follow nil |
| @@ -2149,11 +2187,13 @@ Any other value is treated as nil." | |||
| 2149 | (const :tag "Continue on Next Page" follow) | 2187 | (const :tag "Continue on Next Page" follow) |
| 2150 | (const :tag "Print Only Full Stripe" full) | 2188 | (const :tag "Print Only Full Stripe" full) |
| 2151 | (const :tag "Continue on Full Stripe" full-follow)) | 2189 | (const :tag "Continue on Full Stripe" full-follow)) |
| 2190 | :version "20" | ||
| 2152 | :group 'ps-print-zebra) | 2191 | :group 'ps-print-zebra) |
| 2153 | 2192 | ||
| 2154 | (defcustom ps-line-number nil | 2193 | (defcustom ps-line-number nil |
| 2155 | "*Non-nil means print line number." | 2194 | "*Non-nil means print line number." |
| 2156 | :type 'boolean | 2195 | :type 'boolean |
| 2196 | :version "20" | ||
| 2157 | :group 'ps-print-miscellany) | 2197 | :group 'ps-print-miscellany) |
| 2158 | 2198 | ||
| 2159 | (defcustom ps-line-number-step 1 | 2199 | (defcustom ps-line-number-step 1 |
| @@ -2183,6 +2223,7 @@ Any other value is treated as `zebra'." | |||
| 2183 | :tag "Line Number Step" | 2223 | :tag "Line Number Step" |
| 2184 | (integer :tag "Step Interval") | 2224 | (integer :tag "Step Interval") |
| 2185 | (const :tag "Synchronize Zebra" zebra)) | 2225 | (const :tag "Synchronize Zebra" zebra)) |
| 2226 | :version "20" | ||
| 2186 | :group 'ps-print-miscellany) | 2227 | :group 'ps-print-miscellany) |
| 2187 | 2228 | ||
| 2188 | (defcustom ps-line-number-start 1 | 2229 | (defcustom ps-line-number-start 1 |
| @@ -2212,6 +2253,7 @@ The values for `ps-line-number-start': | |||
| 2212 | value of `ps-zebra-strip-height' inclusive. Use this combination if you | 2253 | value of `ps-zebra-strip-height' inclusive. Use this combination if you |
| 2213 | wish that line number be relative to zebra stripes." | 2254 | wish that line number be relative to zebra stripes." |
| 2214 | :type '(integer :tag "Start Step Interval") | 2255 | :type '(integer :tag "Start Step Interval") |
| 2256 | :version "20" | ||
| 2215 | :group 'ps-print-miscellany) | 2257 | :group 'ps-print-miscellany) |
| 2216 | 2258 | ||
| 2217 | (defcustom ps-print-background-image nil | 2259 | (defcustom ps-print-background-image nil |
| @@ -2258,6 +2300,7 @@ For example, if you wish to print an EPS image on all pages do: | |||
| 2258 | (cons :tag "Range" | 2300 | (cons :tag "Range" |
| 2259 | (integer :tag "From") | 2301 | (integer :tag "From") |
| 2260 | (integer :tag "To")))))) | 2302 | (integer :tag "To")))))) |
| 2303 | :version "20" | ||
| 2261 | :group 'ps-print-background) | 2304 | :group 'ps-print-background) |
| 2262 | 2305 | ||
| 2263 | (defcustom ps-print-background-text nil | 2306 | (defcustom ps-print-background-text nil |
| @@ -2309,6 +2352,7 @@ For example, if you wish to print text \"Preliminary\" on all pages do: | |||
| 2309 | (cons :tag "Range" | 2352 | (cons :tag "Range" |
| 2310 | (integer :tag "From") | 2353 | (integer :tag "From") |
| 2311 | (integer :tag "To")))))) | 2354 | (integer :tag "To")))))) |
| 2355 | :version "20" | ||
| 2312 | :group 'ps-print-background) | 2356 | :group 'ps-print-background) |
| 2313 | 2357 | ||
| 2314 | ;;; Horizontal layout | 2358 | ;;; Horizontal layout |
| @@ -2322,16 +2366,19 @@ For example, if you wish to print text \"Preliminary\" on all pages do: | |||
| 2322 | (defcustom ps-left-margin (/ (* 72 2.0) 2.54) ; 2 cm | 2366 | (defcustom ps-left-margin (/ (* 72 2.0) 2.54) ; 2 cm |
| 2323 | "*Left margin in points (1/72 inch)." | 2367 | "*Left margin in points (1/72 inch)." |
| 2324 | :type 'number | 2368 | :type 'number |
| 2369 | :version "20" | ||
| 2325 | :group 'ps-print-horizontal) | 2370 | :group 'ps-print-horizontal) |
| 2326 | 2371 | ||
| 2327 | (defcustom ps-right-margin (/ (* 72 2.0) 2.54) ; 2 cm | 2372 | (defcustom ps-right-margin (/ (* 72 2.0) 2.54) ; 2 cm |
| 2328 | "*Right margin in points (1/72 inch)." | 2373 | "*Right margin in points (1/72 inch)." |
| 2329 | :type 'number | 2374 | :type 'number |
| 2375 | :version "20" | ||
| 2330 | :group 'ps-print-horizontal) | 2376 | :group 'ps-print-horizontal) |
| 2331 | 2377 | ||
| 2332 | (defcustom ps-inter-column (/ (* 72 2.0) 2.54) ; 2 cm | 2378 | (defcustom ps-inter-column (/ (* 72 2.0) 2.54) ; 2 cm |
| 2333 | "*Horizontal space between columns in points (1/72 inch)." | 2379 | "*Horizontal space between columns in points (1/72 inch)." |
| 2334 | :type 'number | 2380 | :type 'number |
| 2381 | :version "20" | ||
| 2335 | :group 'ps-print-horizontal) | 2382 | :group 'ps-print-horizontal) |
| 2336 | 2383 | ||
| 2337 | ;;; Vertical layout | 2384 | ;;; Vertical layout |
| @@ -2351,16 +2398,19 @@ For example, if you wish to print text \"Preliminary\" on all pages do: | |||
| 2351 | (defcustom ps-bottom-margin (/ (* 72 1.5) 2.54) ; 1.5 cm | 2398 | (defcustom ps-bottom-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
| 2352 | "*Bottom margin in points (1/72 inch)." | 2399 | "*Bottom margin in points (1/72 inch)." |
| 2353 | :type 'number | 2400 | :type 'number |
| 2401 | :version "20" | ||
| 2354 | :group 'ps-print-vertical) | 2402 | :group 'ps-print-vertical) |
| 2355 | 2403 | ||
| 2356 | (defcustom ps-top-margin (/ (* 72 1.5) 2.54) ; 1.5 cm | 2404 | (defcustom ps-top-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
| 2357 | "*Top margin in points (1/72 inch)." | 2405 | "*Top margin in points (1/72 inch)." |
| 2358 | :type 'number | 2406 | :type 'number |
| 2407 | :version "20" | ||
| 2359 | :group 'ps-print-vertical) | 2408 | :group 'ps-print-vertical) |
| 2360 | 2409 | ||
| 2361 | (defcustom ps-header-offset (/ (* 72 1.0) 2.54) ; 1.0 cm | 2410 | (defcustom ps-header-offset (/ (* 72 1.0) 2.54) ; 1.0 cm |
| 2362 | "*Vertical space in points (1/72 inch) between the main text and the header." | 2411 | "*Vertical space in points (1/72 inch) between the main text and the header." |
| 2363 | :type 'number | 2412 | :type 'number |
| 2413 | :version "20" | ||
| 2364 | :group 'ps-print-vertical) | 2414 | :group 'ps-print-vertical) |
| 2365 | 2415 | ||
| 2366 | (defcustom ps-header-line-pad 0.15 | 2416 | (defcustom ps-header-line-pad 0.15 |
| @@ -2368,11 +2418,13 @@ For example, if you wish to print text \"Preliminary\" on all pages do: | |||
| 2368 | The insertion is done between the header frame and the text it contains, | 2418 | The insertion is done between the header frame and the text it contains, |
| 2369 | both in the vertical and horizontal directions." | 2419 | both in the vertical and horizontal directions." |
| 2370 | :type 'number | 2420 | :type 'number |
| 2421 | :version "20" | ||
| 2371 | :group 'ps-print-vertical) | 2422 | :group 'ps-print-vertical) |
| 2372 | 2423 | ||
| 2373 | (defcustom ps-footer-offset (/ (* 72 1.0) 2.54) ; 1.0 cm | 2424 | (defcustom ps-footer-offset (/ (* 72 1.0) 2.54) ; 1.0 cm |
| 2374 | "*Vertical space in points (1/72 inch) between the main text and the footer." | 2425 | "*Vertical space in points (1/72 inch) between the main text and the footer." |
| 2375 | :type 'number | 2426 | :type 'number |
| 2427 | :version "20" | ||
| 2376 | :group 'ps-print-vertical) | 2428 | :group 'ps-print-vertical) |
| 2377 | 2429 | ||
| 2378 | (defcustom ps-footer-line-pad 0.15 | 2430 | (defcustom ps-footer-line-pad 0.15 |
| @@ -2380,6 +2432,7 @@ both in the vertical and horizontal directions." | |||
| 2380 | The insertion is done between the footer frame and the text it contains, | 2432 | The insertion is done between the footer frame and the text it contains, |
| 2381 | both in the vertical and horizontal directions." | 2433 | both in the vertical and horizontal directions." |
| 2382 | :type 'number | 2434 | :type 'number |
| 2435 | :version "20" | ||
| 2383 | :group 'ps-print-vertical) | 2436 | :group 'ps-print-vertical) |
| 2384 | 2437 | ||
| 2385 | ;;; Header/Footer setup | 2438 | ;;; Header/Footer setup |
| @@ -2390,11 +2443,13 @@ By default, the header displays the buffer name, page number, and, if the | |||
| 2390 | buffer is visiting a file, the file's directory. Headers are customizable by | 2443 | buffer is visiting a file, the file's directory. Headers are customizable by |
| 2391 | changing variables `ps-left-header' and `ps-right-header'." | 2444 | changing variables `ps-left-header' and `ps-right-header'." |
| 2392 | :type 'boolean | 2445 | :type 'boolean |
| 2446 | :version "20" | ||
| 2393 | :group 'ps-print-headers) | 2447 | :group 'ps-print-headers) |
| 2394 | 2448 | ||
| 2395 | (defcustom ps-print-header-frame t | 2449 | (defcustom ps-print-header-frame t |
| 2396 | "*Non-nil means draw a gaudy frame around the header." | 2450 | "*Non-nil means draw a gaudy frame around the header." |
| 2397 | :type 'boolean | 2451 | :type 'boolean |
| 2452 | :version "20" | ||
| 2398 | :group 'ps-print-headers) | 2453 | :group 'ps-print-headers) |
| 2399 | 2454 | ||
| 2400 | (defcustom ps-header-frame-alist | 2455 | (defcustom ps-header-frame-alist |
| @@ -2474,11 +2529,13 @@ Don't change this alist directly, instead use customization, or `ps-value', | |||
| 2474 | (number :tag "Red") | 2529 | (number :tag "Red") |
| 2475 | (number :tag "Green") | 2530 | (number :tag "Green") |
| 2476 | (number :tag "Blue")))))) | 2531 | (number :tag "Blue")))))) |
| 2532 | :version "20" | ||
| 2477 | :group 'ps-print-headers) | 2533 | :group 'ps-print-headers) |
| 2478 | 2534 | ||
| 2479 | (defcustom ps-header-lines 2 | 2535 | (defcustom ps-header-lines 2 |
| 2480 | "*Number of lines to display in page header, when generating PostScript." | 2536 | "*Number of lines to display in page header, when generating PostScript." |
| 2481 | :type 'integer | 2537 | :type 'integer |
| 2538 | :version "20" | ||
| 2482 | :group 'ps-print-headers) | 2539 | :group 'ps-print-headers) |
| 2483 | 2540 | ||
| 2484 | (defcustom ps-print-footer nil | 2541 | (defcustom ps-print-footer nil |
| @@ -2486,14 +2543,14 @@ Don't change this alist directly, instead use customization, or `ps-value', | |||
| 2486 | By default, the footer displays page number. | 2543 | By default, the footer displays page number. |
| 2487 | Footers are customizable by changing variables `ps-left-footer' and | 2544 | Footers are customizable by changing variables `ps-left-footer' and |
| 2488 | `ps-right-footer'." | 2545 | `ps-right-footer'." |
| 2489 | :version "21.1" | ||
| 2490 | :type 'boolean | 2546 | :type 'boolean |
| 2547 | :version "21.1" | ||
| 2491 | :group 'ps-print-headers) | 2548 | :group 'ps-print-headers) |
| 2492 | 2549 | ||
| 2493 | (defcustom ps-print-footer-frame t | 2550 | (defcustom ps-print-footer-frame t |
| 2494 | "*Non-nil means draw a gaudy frame around the footer." | 2551 | "*Non-nil means draw a gaudy frame around the footer." |
| 2495 | :version "21.1" | ||
| 2496 | :type 'boolean | 2552 | :type 'boolean |
| 2553 | :version "21.1" | ||
| 2497 | :group 'ps-print-headers) | 2554 | :group 'ps-print-headers) |
| 2498 | 2555 | ||
| 2499 | (defcustom ps-footer-frame-alist | 2556 | (defcustom ps-footer-frame-alist |
| @@ -2508,7 +2565,6 @@ Don't change this alist directly, instead use customization, or `ps-value', | |||
| 2508 | `ps-get', `ps-put' and `ps-del' functions (see them for documentation). | 2565 | `ps-get', `ps-put' and `ps-del' functions (see them for documentation). |
| 2509 | 2566 | ||
| 2510 | See also `ps-header-frame-alist' for documentation." | 2567 | See also `ps-header-frame-alist' for documentation." |
| 2511 | :version "21.1" | ||
| 2512 | :type '(repeat | 2568 | :type '(repeat |
| 2513 | (choice :menu-tag "Header Frame Element" | 2569 | (choice :menu-tag "Header Frame Element" |
| 2514 | :tag "" | 2570 | :tag "" |
| @@ -2555,12 +2611,13 @@ See also `ps-header-frame-alist' for documentation." | |||
| 2555 | (number :tag "Red") | 2611 | (number :tag "Red") |
| 2556 | (number :tag "Green") | 2612 | (number :tag "Green") |
| 2557 | (number :tag "Blue")))))) | 2613 | (number :tag "Blue")))))) |
| 2614 | :version "21.1" | ||
| 2558 | :group 'ps-print-headers) | 2615 | :group 'ps-print-headers) |
| 2559 | 2616 | ||
| 2560 | (defcustom ps-footer-lines 2 | 2617 | (defcustom ps-footer-lines 2 |
| 2561 | "*Number of lines to display in page footer, when generating PostScript." | 2618 | "*Number of lines to display in page footer, when generating PostScript." |
| 2562 | :version "21.1" | ||
| 2563 | :type 'integer | 2619 | :type 'integer |
| 2620 | :version "21.1" | ||
| 2564 | :group 'ps-print-headers) | 2621 | :group 'ps-print-headers) |
| 2565 | 2622 | ||
| 2566 | (defcustom ps-print-only-one-header nil | 2623 | (defcustom ps-print-only-one-header nil |
| @@ -2569,6 +2626,7 @@ This is useful when printing more than one column, so it is possible to have | |||
| 2569 | only one header/footer over all columns or one header/footer per column. | 2626 | only one header/footer over all columns or one header/footer per column. |
| 2570 | See also `ps-print-header' and `ps-print-footer'." | 2627 | See also `ps-print-header' and `ps-print-footer'." |
| 2571 | :type 'boolean | 2628 | :type 'boolean |
| 2629 | :version "20" | ||
| 2572 | :group 'ps-print-headers) | 2630 | :group 'ps-print-headers) |
| 2573 | 2631 | ||
| 2574 | (defcustom ps-switch-header 'duplex | 2632 | (defcustom ps-switch-header 'duplex |
| @@ -2591,6 +2649,7 @@ See also `ps-print-header' and `ps-print-footer'." | |||
| 2591 | (const :tag "Never Switch" nil) | 2649 | (const :tag "Never Switch" nil) |
| 2592 | (const :tag "Always Switch" t) | 2650 | (const :tag "Always Switch" t) |
| 2593 | (const :tag "Switch When Duplexing" duplex)) | 2651 | (const :tag "Switch When Duplexing" duplex)) |
| 2652 | :version "20" | ||
| 2594 | :group 'ps-print-headers) | 2653 | :group 'ps-print-headers) |
| 2595 | 2654 | ||
| 2596 | (defcustom ps-show-n-of-n t | 2655 | (defcustom ps-show-n-of-n t |
| @@ -2598,6 +2657,7 @@ See also `ps-print-header' and `ps-print-footer'." | |||
| 2598 | NOTE: page numbers are displayed as part of headers, | 2657 | NOTE: page numbers are displayed as part of headers, |
| 2599 | see variable `ps-print-header'." | 2658 | see variable `ps-print-header'." |
| 2600 | :type 'boolean | 2659 | :type 'boolean |
| 2660 | :version "20" | ||
| 2601 | :group 'ps-print-headers) | 2661 | :group 'ps-print-headers) |
| 2602 | 2662 | ||
| 2603 | (defcustom ps-spool-config | 2663 | (defcustom ps-spool-config |
| @@ -2633,6 +2693,7 @@ WARNING: The setpagedevice PostScript operator affects ghostview utility when | |||
| 2633 | :tag "Spool Config" | 2693 | :tag "Spool Config" |
| 2634 | (const lpr-switches) (const setpagedevice) | 2694 | (const lpr-switches) (const setpagedevice) |
| 2635 | (const :tag "nil" nil)) | 2695 | (const :tag "nil" nil)) |
| 2696 | :version "20" | ||
| 2636 | :group 'ps-print-headers) | 2697 | :group 'ps-print-headers) |
| 2637 | 2698 | ||
| 2638 | (defcustom ps-spool-duplex nil ; Not many people have duplex printers, | 2699 | (defcustom ps-spool-duplex nil ; Not many people have duplex printers, |
| @@ -2646,6 +2707,7 @@ even-numbered pages. | |||
| 2646 | 2707 | ||
| 2647 | See also `ps-spool-tumble'." | 2708 | See also `ps-spool-tumble'." |
| 2648 | :type 'boolean | 2709 | :type 'boolean |
| 2710 | :version "20" | ||
| 2649 | :group 'ps-print-headers) | 2711 | :group 'ps-print-headers) |
| 2650 | 2712 | ||
| 2651 | (defcustom ps-spool-tumble nil | 2713 | (defcustom ps-spool-tumble nil |
| @@ -2656,6 +2718,7 @@ binding at the top or bottom. | |||
| 2656 | 2718 | ||
| 2657 | It has effect only when `ps-spool-duplex' is non-nil." | 2719 | It has effect only when `ps-spool-duplex' is non-nil." |
| 2658 | :type 'boolean | 2720 | :type 'boolean |
| 2721 | :version "20" | ||
| 2659 | :group 'ps-print-headers) | 2722 | :group 'ps-print-headers) |
| 2660 | 2723 | ||
| 2661 | ;;; Fonts | 2724 | ;;; Fonts |
| @@ -2806,11 +2869,13 @@ uses the fonts resident in your printer." | |||
| 2806 | (cons :format "%v" | 2869 | (cons :format "%v" |
| 2807 | (const :format "" avg-char-width) | 2870 | (const :format "" avg-char-width) |
| 2808 | (number :tag "Average Character Width")))) | 2871 | (number :tag "Average Character Width")))) |
| 2872 | :version "20" | ||
| 2809 | :group 'ps-print-font) | 2873 | :group 'ps-print-font) |
| 2810 | 2874 | ||
| 2811 | (defcustom ps-font-family 'Courier | 2875 | (defcustom ps-font-family 'Courier |
| 2812 | "*Font family name for ordinary text, when generating PostScript." | 2876 | "*Font family name for ordinary text, when generating PostScript." |
| 2813 | :type 'symbol | 2877 | :type 'symbol |
| 2878 | :version "20" | ||
| 2814 | :group 'ps-print-font) | 2879 | :group 'ps-print-font) |
| 2815 | 2880 | ||
| 2816 | (defcustom ps-font-size '(7 . 8.5) | 2881 | (defcustom ps-font-size '(7 . 8.5) |
| @@ -2821,11 +2886,13 @@ uses the fonts resident in your printer." | |||
| 2821 | (cons :tag "Landscape/Portrait" | 2886 | (cons :tag "Landscape/Portrait" |
| 2822 | (number :tag "Landscape Text Size") | 2887 | (number :tag "Landscape Text Size") |
| 2823 | (number :tag "Portrait Text Size"))) | 2888 | (number :tag "Portrait Text Size"))) |
| 2889 | :version "20" | ||
| 2824 | :group 'ps-print-font) | 2890 | :group 'ps-print-font) |
| 2825 | 2891 | ||
| 2826 | (defcustom ps-header-font-family 'Helvetica | 2892 | (defcustom ps-header-font-family 'Helvetica |
| 2827 | "*Font family name for text in the header, when generating PostScript." | 2893 | "*Font family name for text in the header, when generating PostScript." |
| 2828 | :type 'symbol | 2894 | :type 'symbol |
| 2895 | :version "20" | ||
| 2829 | :group 'ps-print-font) | 2896 | :group 'ps-print-font) |
| 2830 | 2897 | ||
| 2831 | (defcustom ps-header-font-size '(10 . 12) | 2898 | (defcustom ps-header-font-size '(10 . 12) |
| @@ -2836,6 +2903,7 @@ uses the fonts resident in your printer." | |||
| 2836 | (cons :tag "Landscape/Portrait" | 2903 | (cons :tag "Landscape/Portrait" |
| 2837 | (number :tag "Landscape Header Size") | 2904 | (number :tag "Landscape Header Size") |
| 2838 | (number :tag "Portrait Header Size"))) | 2905 | (number :tag "Portrait Header Size"))) |
| 2906 | :version "20" | ||
| 2839 | :group 'ps-print-font) | 2907 | :group 'ps-print-font) |
| 2840 | 2908 | ||
| 2841 | (defcustom ps-header-title-font-size '(12 . 14) | 2909 | (defcustom ps-header-title-font-size '(12 . 14) |
| @@ -2846,23 +2914,24 @@ uses the fonts resident in your printer." | |||
| 2846 | (cons :tag "Landscape/Portrait" | 2914 | (cons :tag "Landscape/Portrait" |
| 2847 | (number :tag "Landscape Header Title Size") | 2915 | (number :tag "Landscape Header Title Size") |
| 2848 | (number :tag "Portrait Header Title Size"))) | 2916 | (number :tag "Portrait Header Title Size"))) |
| 2917 | :version "20" | ||
| 2849 | :group 'ps-print-font) | 2918 | :group 'ps-print-font) |
| 2850 | 2919 | ||
| 2851 | (defcustom ps-footer-font-family 'Helvetica | 2920 | (defcustom ps-footer-font-family 'Helvetica |
| 2852 | "*Font family name for text in the footer, when generating PostScript." | 2921 | "*Font family name for text in the footer, when generating PostScript." |
| 2853 | :version "21.1" | ||
| 2854 | :type 'symbol | 2922 | :type 'symbol |
| 2923 | :version "21.1" | ||
| 2855 | :group 'ps-print-font) | 2924 | :group 'ps-print-font) |
| 2856 | 2925 | ||
| 2857 | (defcustom ps-footer-font-size '(10 . 12) | 2926 | (defcustom ps-footer-font-size '(10 . 12) |
| 2858 | "*Font size, in points, for text in the footer, when generating PostScript." | 2927 | "*Font size, in points, for text in the footer, when generating PostScript." |
| 2859 | :version "21.1" | ||
| 2860 | :type '(choice :menu-tag "Footer Font Size" | 2928 | :type '(choice :menu-tag "Footer Font Size" |
| 2861 | :tag "Footer Font Size" | 2929 | :tag "Footer Font Size" |
| 2862 | (number :tag "Footer Size") | 2930 | (number :tag "Footer Size") |
| 2863 | (cons :tag "Landscape/Portrait" | 2931 | (cons :tag "Landscape/Portrait" |
| 2864 | (number :tag "Landscape Footer Size") | 2932 | (number :tag "Landscape Footer Size") |
| 2865 | (number :tag "Portrait Footer Size"))) | 2933 | (number :tag "Portrait Footer Size"))) |
| 2934 | :version "21.1" | ||
| 2866 | :group 'ps-print-font) | 2935 | :group 'ps-print-font) |
| 2867 | 2936 | ||
| 2868 | (defcustom ps-line-number-color "black" | 2937 | (defcustom ps-line-number-color "black" |
| @@ -2882,6 +2951,7 @@ uses the fonts resident in your printer." | |||
| 2882 | (defcustom ps-line-number-font "Times-Italic" | 2951 | (defcustom ps-line-number-font "Times-Italic" |
| 2883 | "*Font for line-number, when generating PostScript." | 2952 | "*Font for line-number, when generating PostScript." |
| 2884 | :type 'string | 2953 | :type 'string |
| 2954 | :version "20" | ||
| 2885 | :group 'ps-print-font | 2955 | :group 'ps-print-font |
| 2886 | :group 'ps-print-miscellany) | 2956 | :group 'ps-print-miscellany) |
| 2887 | 2957 | ||
| @@ -2893,6 +2963,7 @@ uses the fonts resident in your printer." | |||
| 2893 | (cons :tag "Landscape/Portrait" | 2963 | (cons :tag "Landscape/Portrait" |
| 2894 | (number :tag "Landscape Font Size") | 2964 | (number :tag "Landscape Font Size") |
| 2895 | (number :tag "Portrait Font Size"))) | 2965 | (number :tag "Portrait Font Size"))) |
| 2966 | :version "20" | ||
| 2896 | :group 'ps-print-font | 2967 | :group 'ps-print-font |
| 2897 | :group 'ps-print-miscellany) | 2968 | :group 'ps-print-miscellany) |
| 2898 | 2969 | ||
| @@ -2923,6 +2994,7 @@ Any other value is treated as t." | |||
| 2923 | (const :tag "Do NOT Print Color" nil) | 2994 | (const :tag "Do NOT Print Color" nil) |
| 2924 | (const :tag "Print Always Color" t) | 2995 | (const :tag "Print Always Color" t) |
| 2925 | (const :tag "Print Black/White Color" black-white)) | 2996 | (const :tag "Print Black/White Color" black-white)) |
| 2997 | :version "20" | ||
| 2926 | :group 'ps-print-color) | 2998 | :group 'ps-print-color) |
| 2927 | 2999 | ||
| 2928 | (defcustom ps-default-fg '(0.0 0.0 0.0) ; black | 3000 | (defcustom ps-default-fg '(0.0 0.0 0.0) ; black |
| @@ -2962,6 +3034,7 @@ It's used only when `ps-print-color-p' is non-nil." | |||
| 2962 | (number :tag "Red") | 3034 | (number :tag "Red") |
| 2963 | (number :tag "Green") | 3035 | (number :tag "Green") |
| 2964 | (number :tag "Blue"))) | 3036 | (number :tag "Blue"))) |
| 3037 | :version "20" | ||
| 2965 | :group 'ps-print-color) | 3038 | :group 'ps-print-color) |
| 2966 | 3039 | ||
| 2967 | (defcustom ps-default-bg '(1.0 1.0 1.0) ; white | 3040 | (defcustom ps-default-bg '(1.0 1.0 1.0) ; white |
| @@ -3003,6 +3076,7 @@ See also `ps-use-face-background'." | |||
| 3003 | (number :tag "Red") | 3076 | (number :tag "Red") |
| 3004 | (number :tag "Green") | 3077 | (number :tag "Green") |
| 3005 | (number :tag "Blue"))) | 3078 | (number :tag "Blue"))) |
| 3079 | :version "20" | ||
| 3006 | :group 'ps-print-color) | 3080 | :group 'ps-print-color) |
| 3007 | 3081 | ||
| 3008 | (defcustom ps-auto-font-detect t | 3082 | (defcustom ps-auto-font-detect t |
| @@ -3010,6 +3084,7 @@ See also `ps-use-face-background'." | |||
| 3010 | If nil, we rely solely on the lists `ps-bold-faces', `ps-italic-faces', and | 3084 | If nil, we rely solely on the lists `ps-bold-faces', `ps-italic-faces', and |
| 3011 | `ps-underlined-faces'." | 3085 | `ps-underlined-faces'." |
| 3012 | :type 'boolean | 3086 | :type 'boolean |
| 3087 | :version "20" | ||
| 3013 | :group 'ps-print-font) | 3088 | :group 'ps-print-font) |
| 3014 | 3089 | ||
| 3015 | (defcustom ps-black-white-faces | 3090 | (defcustom ps-black-white-faces |
| @@ -3049,6 +3124,7 @@ This variable is used only when `ps-print-color-p' is set to `black-white'." | |||
| 3049 | (const shadow) | 3124 | (const shadow) |
| 3050 | (const box) | 3125 | (const box) |
| 3051 | (const outline))))) | 3126 | (const outline))))) |
| 3127 | :version "20" | ||
| 3052 | :group 'ps-print-face) | 3128 | :group 'ps-print-face) |
| 3053 | 3129 | ||
| 3054 | (defcustom ps-bold-faces | 3130 | (defcustom ps-bold-faces |
| @@ -3061,6 +3137,7 @@ This variable is used only when `ps-print-color-p' is set to `black-white'." | |||
| 3061 | "*A list of the \(non-bold\) faces that should be printed in bold font. | 3137 | "*A list of the \(non-bold\) faces that should be printed in bold font. |
| 3062 | This applies to generating PostScript." | 3138 | This applies to generating PostScript." |
| 3063 | :type '(repeat face) | 3139 | :type '(repeat face) |
| 3140 | :version "20" | ||
| 3064 | :group 'ps-print-face) | 3141 | :group 'ps-print-face) |
| 3065 | 3142 | ||
| 3066 | (defcustom ps-italic-faces | 3143 | (defcustom ps-italic-faces |
| @@ -3073,6 +3150,7 @@ This applies to generating PostScript." | |||
| 3073 | "*A list of the \(non-italic\) faces that should be printed in italic font. | 3150 | "*A list of the \(non-italic\) faces that should be printed in italic font. |
| 3074 | This applies to generating PostScript." | 3151 | This applies to generating PostScript." |
| 3075 | :type '(repeat face) | 3152 | :type '(repeat face) |
| 3153 | :version "20" | ||
| 3076 | :group 'ps-print-face) | 3154 | :group 'ps-print-face) |
| 3077 | 3155 | ||
| 3078 | (defcustom ps-underlined-faces | 3156 | (defcustom ps-underlined-faces |
| @@ -3083,6 +3161,7 @@ This applies to generating PostScript." | |||
| 3083 | "*A list of the \(non-underlined\) faces that should be printed underlined. | 3161 | "*A list of the \(non-underlined\) faces that should be printed underlined. |
| 3084 | This applies to generating PostScript." | 3162 | This applies to generating PostScript." |
| 3085 | :type '(repeat face) | 3163 | :type '(repeat face) |
| 3164 | :version "20" | ||
| 3086 | :group 'ps-print-face) | 3165 | :group 'ps-print-face) |
| 3087 | 3166 | ||
| 3088 | (defcustom ps-use-face-background nil | 3167 | (defcustom ps-use-face-background nil |
| @@ -3102,6 +3181,7 @@ Any other value will be treated as t." | |||
| 3102 | (repeat :menu-tag "Face Background List" | 3181 | (repeat :menu-tag "Face Background List" |
| 3103 | :tag "Face Background List" | 3182 | :tag "Face Background List" |
| 3104 | face)) | 3183 | face)) |
| 3184 | :version "20" | ||
| 3105 | :group 'ps-print-face) | 3185 | :group 'ps-print-face) |
| 3106 | 3186 | ||
| 3107 | (defcustom ps-left-header | 3187 | (defcustom ps-left-header |
| @@ -3125,6 +3205,7 @@ If symbols are unbounded, they are silently ignored." | |||
| 3125 | :type '(repeat (choice :menu-tag "Left Header" | 3205 | :type '(repeat (choice :menu-tag "Left Header" |
| 3126 | :tag "Left Header" | 3206 | :tag "Left Header" |
| 3127 | string symbol)) | 3207 | string symbol)) |
| 3208 | :version "20" | ||
| 3128 | :group 'ps-print-headers) | 3209 | :group 'ps-print-headers) |
| 3129 | 3210 | ||
| 3130 | (defcustom ps-right-header | 3211 | (defcustom ps-right-header |
| @@ -3155,6 +3236,7 @@ You can also create your own time stamp function by using `format-time-string' | |||
| 3155 | :type '(repeat (choice :menu-tag "Right Header" | 3236 | :type '(repeat (choice :menu-tag "Right Header" |
| 3156 | :tag "Right Header" | 3237 | :tag "Right Header" |
| 3157 | string symbol)) | 3238 | string symbol)) |
| 3239 | :version "20" | ||
| 3158 | :group 'ps-print-headers) | 3240 | :group 'ps-print-headers) |
| 3159 | 3241 | ||
| 3160 | (defcustom ps-left-footer | 3242 | (defcustom ps-left-footer |
| @@ -3175,10 +3257,10 @@ should be a string to be inserted into the array. In either case, function or | |||
| 3175 | variable, the string value has PostScript string delimiters added to it. | 3257 | variable, the string value has PostScript string delimiters added to it. |
| 3176 | 3258 | ||
| 3177 | If symbols are unbounded, they are silently ignored." | 3259 | If symbols are unbounded, they are silently ignored." |
| 3178 | :version "21.1" | ||
| 3179 | :type '(repeat (choice :menu-tag "Left Footer" | 3260 | :type '(repeat (choice :menu-tag "Left Footer" |
| 3180 | :tag "Left Footer" | 3261 | :tag "Left Footer" |
| 3181 | string symbol)) | 3262 | string symbol)) |
| 3263 | :version "21.1" | ||
| 3182 | :group 'ps-print-headers) | 3264 | :group 'ps-print-headers) |
| 3183 | 3265 | ||
| 3184 | (defcustom ps-right-footer | 3266 | (defcustom ps-right-footer |
| @@ -3206,15 +3288,16 @@ There are the following basic functions implemented: | |||
| 3206 | 3288 | ||
| 3207 | You can also create your own time stamp function by using `format-time-string' | 3289 | You can also create your own time stamp function by using `format-time-string' |
| 3208 | \(which see)." | 3290 | \(which see)." |
| 3209 | :version "21.1" | ||
| 3210 | :type '(repeat (choice :menu-tag "Right Footer" | 3291 | :type '(repeat (choice :menu-tag "Right Footer" |
| 3211 | :tag "Right Footer" | 3292 | :tag "Right Footer" |
| 3212 | string symbol)) | 3293 | string symbol)) |
| 3294 | :version "21.1" | ||
| 3213 | :group 'ps-print-headers) | 3295 | :group 'ps-print-headers) |
| 3214 | 3296 | ||
| 3215 | (defcustom ps-razzle-dazzle t | 3297 | (defcustom ps-razzle-dazzle t |
| 3216 | "*Non-nil means report progress while formatting buffer." | 3298 | "*Non-nil means report progress while formatting buffer." |
| 3217 | :type 'boolean | 3299 | :type 'boolean |
| 3300 | :version "20" | ||
| 3218 | :group 'ps-print-miscellany) | 3301 | :group 'ps-print-miscellany) |
| 3219 | 3302 | ||
| 3220 | (defcustom ps-adobe-tag "%!PS-Adobe-3.0\n" | 3303 | (defcustom ps-adobe-tag "%!PS-Adobe-3.0\n" |
| @@ -3222,6 +3305,7 @@ You can also create your own time stamp function by using `format-time-string' | |||
| 3222 | By default, `ps-adobe-tag' contains the standard identifier. Some printers | 3305 | By default, `ps-adobe-tag' contains the standard identifier. Some printers |
| 3223 | require slightly different versions of this line." | 3306 | require slightly different versions of this line." |
| 3224 | :type 'string | 3307 | :type 'string |
| 3308 | :version "20" | ||
| 3225 | :group 'ps-print-miscellany) | 3309 | :group 'ps-print-miscellany) |
| 3226 | 3310 | ||
| 3227 | (defcustom ps-build-face-reference t | 3311 | (defcustom ps-build-face-reference t |
| @@ -3236,6 +3320,7 @@ You should set this value back to t after you change the attributes of any | |||
| 3236 | face, or create new faces. Most users shouldn't have to worry about its | 3320 | face, or create new faces. Most users shouldn't have to worry about its |
| 3237 | setting, though." | 3321 | setting, though." |
| 3238 | :type 'boolean | 3322 | :type 'boolean |
| 3323 | :version "20" | ||
| 3239 | :group 'ps-print-face) | 3324 | :group 'ps-print-face) |
| 3240 | 3325 | ||
| 3241 | (defcustom ps-always-build-face-reference nil | 3326 | (defcustom ps-always-build-face-reference nil |
| @@ -3245,28 +3330,30 @@ If this variable is non-nil, ps-print will rebuild its internal reference lists | |||
| 3245 | of bold and italic faces *every* time one of the ...-with-faces commands is | 3330 | of bold and italic faces *every* time one of the ...-with-faces commands is |
| 3246 | called. Most users shouldn't need to set this variable." | 3331 | called. Most users shouldn't need to set this variable." |
| 3247 | :type 'boolean | 3332 | :type 'boolean |
| 3333 | :version "20" | ||
| 3248 | :group 'ps-print-face) | 3334 | :group 'ps-print-face) |
| 3249 | 3335 | ||
| 3250 | (defcustom ps-banner-page-when-duplexing nil | 3336 | (defcustom ps-banner-page-when-duplexing nil |
| 3251 | "*Non-nil means the very first page is skipped. | 3337 | "*Non-nil means the very first page is skipped. |
| 3252 | It's like the very first character of buffer (or region) is ^L (\\014)." | 3338 | It's like the very first character of buffer (or region) is ^L (\\014)." |
| 3253 | :type 'boolean | 3339 | :type 'boolean |
| 3340 | :version "20" | ||
| 3254 | :group 'ps-print-headers) | 3341 | :group 'ps-print-headers) |
| 3255 | 3342 | ||
| 3256 | (defcustom ps-postscript-code-directory | 3343 | (defcustom ps-postscript-code-directory |
| 3257 | (or (cond | 3344 | (or (if (featurep 'xemacs) |
| 3258 | ((eq ps-print-emacs-type 'emacs) ; emacs | 3345 | (cond ((fboundp 'locate-data-directory) ; xemacs |
| 3259 | data-directory) | 3346 | (locate-data-directory "ps-print")) |
| 3260 | ((fboundp 'locate-data-directory) ; xemacs | 3347 | ((boundp 'data-directory) ; xemacs |
| 3261 | (locate-data-directory "ps-print")) | 3348 | data-directory) |
| 3262 | ((boundp 'data-directory) ; xemacs | 3349 | (t ; don't know what to do |
| 3263 | data-directory) | 3350 | nil)) |
| 3264 | (t ; don't know what to do | 3351 | data-directory) ; emacs |
| 3265 | nil)) | ||
| 3266 | (error "`ps-postscript-code-directory' isn't set properly")) | 3352 | (error "`ps-postscript-code-directory' isn't set properly")) |
| 3267 | "*Directory where it's located the PostScript prologue file used by ps-print. | 3353 | "*Directory where it's located the PostScript prologue file used by ps-print. |
| 3268 | By default, this directory is the same as in the variable `data-directory'." | 3354 | By default, this directory is the same as in the variable `data-directory'." |
| 3269 | :type 'directory | 3355 | :type 'directory |
| 3356 | :version "20" | ||
| 3270 | :group 'ps-print-miscellany) | 3357 | :group 'ps-print-miscellany) |
| 3271 | 3358 | ||
| 3272 | (defcustom ps-line-spacing 0 | 3359 | (defcustom ps-line-spacing 0 |
| @@ -3749,106 +3836,105 @@ It can be retrieved with `(ps-get ALIST-SYM KEY)'." | |||
| 3749 | (format-time-string "%T")) | 3836 | (format-time-string "%T")) |
| 3750 | 3837 | ||
| 3751 | 3838 | ||
| 3752 | (eval-and-compile | 3839 | (and (featurep 'xemacs) |
| 3753 | (and (eq ps-print-emacs-type 'xemacs) | 3840 | ;; XEmacs change: Need to check for emacs-major-version too. |
| 3754 | ;; XEmacs change: Need to check for emacs-major-version too. | 3841 | (or (< emacs-major-version 19) |
| 3755 | (or (< emacs-major-version 19) | 3842 | (and (= emacs-major-version 19) (< emacs-minor-version 12))) |
| 3756 | (and (= emacs-major-version 19) (< emacs-minor-version 12))) | 3843 | (setq ps-print-color-p nil)) |
| 3757 | (setq ps-print-color-p nil)) | 3844 | |
| 3758 | 3845 | ||
| 3759 | 3846 | ;; Return t if the device (which can be changed during an emacs session) | |
| 3760 | ;; Return t if the device (which can be changed during an emacs session) | 3847 | ;; can handle colors. |
| 3761 | ;; can handle colors. | 3848 | ;; This function is not yet implemented for GNU emacs. |
| 3762 | ;; This function is not yet implemented for GNU emacs. | 3849 | (cond ((and (featurep 'xemacs) |
| 3763 | (cond ((and (eq ps-print-emacs-type 'xemacs) | 3850 | ;; XEmacs change: Need to check for emacs-major-version too. |
| 3764 | ;; XEmacs change: Need to check for emacs-major-version too. | 3851 | (or (> emacs-major-version 19) |
| 3765 | (or (> emacs-major-version 19) | 3852 | (and (= emacs-major-version 19) |
| 3766 | (and (= emacs-major-version 19) | 3853 | (>= emacs-minor-version 12)))) ; xemacs >= 19.12 |
| 3767 | (>= emacs-minor-version 12)))) ; xemacs >= 19.12 | 3854 | (defun ps-color-device () |
| 3768 | (defun ps-color-device () | 3855 | (eq (ps-x-device-class) 'color))) |
| 3769 | (eq (ps-x-device-class) 'color))) | 3856 | |
| 3770 | 3857 | (t ; emacs | |
| 3771 | (t ; emacs | 3858 | (defun ps-color-device () |
| 3772 | (defun ps-color-device () | 3859 | (if (fboundp 'color-values) |
| 3773 | (if (fboundp 'color-values) | 3860 | (ps-e-color-values "Green") |
| 3774 | (ps-e-color-values "Green") | 3861 | t)))) |
| 3775 | t)))) | 3862 | |
| 3776 | 3863 | ||
| 3777 | 3864 | (defun ps-mapper (extent list) | |
| 3778 | (defun ps-mapper (extent list) | 3865 | (nconc list |
| 3779 | (nconc list | 3866 | (list (list (ps-x-extent-start-position extent) 'push extent) |
| 3780 | (list (list (ps-x-extent-start-position extent) 'push extent) | 3867 | (list (ps-x-extent-end-position extent) 'pull extent))) |
| 3781 | (list (ps-x-extent-end-position extent) 'pull extent))) | 3868 | nil) |
| 3782 | nil) | 3869 | |
| 3783 | 3870 | (defun ps-extent-sorter (a b) | |
| 3784 | (defun ps-extent-sorter (a b) | 3871 | (< (ps-x-extent-priority a) (ps-x-extent-priority b))) |
| 3785 | (< (ps-x-extent-priority a) (ps-x-extent-priority b))) | 3872 | |
| 3786 | 3873 | (defun ps-xemacs-face-kind-p (face kind kind-regex) | |
| 3787 | (defun ps-xemacs-face-kind-p (face kind kind-regex) | 3874 | (let* ((frame-font (or (ps-x-face-font-instance face) |
| 3788 | (let* ((frame-font (or (ps-x-face-font-instance face) | 3875 | (ps-x-face-font-instance 'default))) |
| 3789 | (ps-x-face-font-instance 'default))) | 3876 | (kind-cons |
| 3790 | (kind-cons | 3877 | (and frame-font |
| 3791 | (and frame-font | 3878 | (assq kind |
| 3792 | (assq kind | 3879 | (ps-x-font-instance-properties frame-font)))) |
| 3793 | (ps-x-font-instance-properties frame-font)))) | 3880 | (kind-spec (cdr-safe kind-cons)) |
| 3794 | (kind-spec (cdr-safe kind-cons)) | 3881 | (case-fold-search t)) |
| 3795 | (case-fold-search t)) | 3882 | (and kind-spec (string-match kind-regex kind-spec)))) |
| 3796 | (and kind-spec (string-match kind-regex kind-spec)))) | 3883 | |
| 3797 | 3884 | (cond ((featurep 'xemacs) ; xemacs | |
| 3798 | (cond ((eq ps-print-emacs-type 'emacs) ; emacs | 3885 | |
| 3799 | 3886 | ;; to avoid XEmacs compilation gripes | |
| 3800 | (defun ps-color-values (x-color) | 3887 | (defvar coding-system-for-write nil) |
| 3888 | (defvar coding-system-for-read nil) | ||
| 3889 | (defvar buffer-file-coding-system nil) | ||
| 3890 | |||
| 3891 | (and (fboundp 'find-coding-system) | ||
| 3892 | (or (ps-x-find-coding-system 'raw-text-unix) | ||
| 3893 | (ps-x-copy-coding-system 'no-conversion-unix 'raw-text-unix))) | ||
| 3894 | |||
| 3895 | (defun ps-color-values (x-color) | ||
| 3896 | (let ((color (ps-xemacs-color-name x-color))) | ||
| 3801 | (cond | 3897 | (cond |
| 3802 | ((fboundp 'color-values) | ||
| 3803 | (ps-e-color-values x-color)) | ||
| 3804 | ((fboundp 'x-color-values) | 3898 | ((fboundp 'x-color-values) |
| 3805 | (ps-e-x-color-values x-color)) | 3899 | (ps-e-x-color-values color)) |
| 3900 | ((and (fboundp 'color-instance-rgb-components) | ||
| 3901 | (ps-color-device)) | ||
| 3902 | (ps-x-color-instance-rgb-components | ||
| 3903 | (if (ps-x-color-instance-p x-color) | ||
| 3904 | x-color | ||
| 3905 | (ps-x-make-color-instance color)))) | ||
| 3806 | (t | 3906 | (t |
| 3807 | (error "No available function to determine X color values")))) | 3907 | (error "No available function to determine X color values"))))) |
| 3808 | 3908 | ||
| 3809 | (defun ps-face-bold-p (face) | 3909 | (defun ps-face-bold-p (face) |
| 3810 | (or (ps-e-face-bold-p face) | 3910 | (or (ps-xemacs-face-kind-p face 'WEIGHT_NAME "bold\\|demibold") |
| 3811 | (memq face ps-bold-faces))) | 3911 | (memq face ps-bold-faces))) ; Kludge-compatible |
| 3912 | |||
| 3913 | (defun ps-face-italic-p (face) | ||
| 3914 | (or (ps-xemacs-face-kind-p face 'ANGLE_NAME "i\\|o") | ||
| 3915 | (ps-xemacs-face-kind-p face 'SLANT "i\\|o") | ||
| 3916 | (memq face ps-italic-faces))) ; Kludge-compatible | ||
| 3917 | ) | ||
| 3918 | |||
| 3919 | (t ; emacs | ||
| 3920 | |||
| 3921 | (defun ps-color-values (x-color) | ||
| 3922 | (cond | ||
| 3923 | ((fboundp 'color-values) | ||
| 3924 | (ps-e-color-values x-color)) | ||
| 3925 | ((fboundp 'x-color-values) | ||
| 3926 | (ps-e-x-color-values x-color)) | ||
| 3927 | (t | ||
| 3928 | (error "No available function to determine X color values")))) | ||
| 3812 | 3929 | ||
| 3813 | (defun ps-face-italic-p (face) | 3930 | (defun ps-face-bold-p (face) |
| 3814 | (or (ps-e-face-italic-p face) | 3931 | (or (ps-e-face-bold-p face) |
| 3815 | (memq face ps-italic-faces))) | 3932 | (memq face ps-bold-faces))) |
| 3816 | ) | ||
| 3817 | 3933 | ||
| 3818 | (t ; xemacs | 3934 | (defun ps-face-italic-p (face) |
| 3819 | 3935 | (or (ps-e-face-italic-p face) | |
| 3820 | ;; to avoid XEmacs compilation gripes | 3936 | (memq face ps-italic-faces))) |
| 3821 | (defvar coding-system-for-write nil) | 3937 | )) |
| 3822 | (defvar coding-system-for-read nil) | ||
| 3823 | (defvar buffer-file-coding-system nil) | ||
| 3824 | |||
| 3825 | (and (fboundp 'find-coding-system) | ||
| 3826 | (or (ps-x-find-coding-system 'raw-text-unix) | ||
| 3827 | (ps-x-copy-coding-system 'no-conversion-unix 'raw-text-unix))) | ||
| 3828 | |||
| 3829 | (defun ps-color-values (x-color) | ||
| 3830 | (let ((color (ps-xemacs-color-name x-color))) | ||
| 3831 | (cond | ||
| 3832 | ((fboundp 'x-color-values) | ||
| 3833 | (ps-e-x-color-values color)) | ||
| 3834 | ((and (fboundp 'color-instance-rgb-components) | ||
| 3835 | (ps-color-device)) | ||
| 3836 | (ps-x-color-instance-rgb-components | ||
| 3837 | (if (ps-x-color-instance-p x-color) | ||
| 3838 | x-color | ||
| 3839 | (ps-x-make-color-instance color)))) | ||
| 3840 | (t | ||
| 3841 | (error "No available function to determine X color values"))))) | ||
| 3842 | |||
| 3843 | (defun ps-face-bold-p (face) | ||
| 3844 | (or (ps-xemacs-face-kind-p face 'WEIGHT_NAME "bold\\|demibold") | ||
| 3845 | (memq face ps-bold-faces))) ; Kludge-compatible | ||
| 3846 | |||
| 3847 | (defun ps-face-italic-p (face) | ||
| 3848 | (or (ps-xemacs-face-kind-p face 'ANGLE_NAME "i\\|o") | ||
| 3849 | (ps-xemacs-face-kind-p face 'SLANT "i\\|o") | ||
| 3850 | (memq face ps-italic-faces))) ; Kludge-compatible | ||
| 3851 | ))) | ||
| 3852 | 3938 | ||
| 3853 | 3939 | ||
| 3854 | (defvar ps-print-color-scale 1.0) | 3940 | (defvar ps-print-color-scale 1.0) |
| @@ -3931,15 +4017,14 @@ Note: No major/minor-mode is activated and no local variables are evaluated for | |||
| 3931 | 4017 | ||
| 3932 | (defvar ps-color-p nil) | 4018 | (defvar ps-color-p nil) |
| 3933 | (defvar ps-color-format | 4019 | (defvar ps-color-format |
| 3934 | (if (eq ps-print-emacs-type 'emacs) | 4020 | (if (featurep 'xemacs) |
| 3935 | 4021 | ;; XEmacs will have to make do with %s (princ) for floats. | |
| 3936 | ;; Emacs understands the %f format; we'll use it to limit color RGB | 4022 | "%s %s %s" |
| 3937 | ;; values to three decimals to cut down some on the size of the | ||
| 3938 | ;; PostScript output. | ||
| 3939 | "%0.3f %0.3f %0.3f" | ||
| 3940 | 4023 | ||
| 3941 | ;; XEmacs will have to make do with %s (princ) for floats. | 4024 | ;; Emacs understands the %f format; we'll use it to limit color RGB |
| 3942 | "%s %s %s")) | 4025 | ;; values to three decimals to cut down some on the size of the |
| 4026 | ;; PostScript output. | ||
| 4027 | "%0.3f %0.3f %0.3f")) | ||
| 3943 | 4028 | ||
| 3944 | ;; These values determine how much print-height to deduct when headers/footers | 4029 | ;; These values determine how much print-height to deduct when headers/footers |
| 3945 | ;; are turned on. This is a pretty clumsy way of handling it, but it'll do for | 4030 | ;; are turned on. This is a pretty clumsy way of handling it, but it'll do for |
| @@ -4723,7 +4808,7 @@ page-height == ((floor print-height ((th + ls) * zh)) * ((th + ls) * zh)) - th | |||
| 4723 | (save-excursion | 4808 | (save-excursion |
| 4724 | (set-buffer ps-spool-buffer) | 4809 | (set-buffer ps-spool-buffer) |
| 4725 | (goto-char (point-max)) | 4810 | (goto-char (point-max)) |
| 4726 | (insert-file fname))) | 4811 | (insert-file-contents fname))) |
| 4727 | 4812 | ||
| 4728 | ;; These functions are used in `ps-mule' to get charset of header and footer. | 4813 | ;; These functions are used in `ps-mule' to get charset of header and footer. |
| 4729 | ;; To avoid unnecessary calls to functions in `ps-left-header', | 4814 | ;; To avoid unnecessary calls to functions in `ps-left-header', |
| @@ -4855,9 +4940,9 @@ page-height == ((floor print-height ((th + ls) * zh)) * ((th + ls) * zh)) - th | |||
| 4855 | ;; to three decimals to cut down some on the size of the PostScript output. | 4940 | ;; to three decimals to cut down some on the size of the PostScript output. |
| 4856 | ;; XEmacs will have to make do with %s (princ) for floats. | 4941 | ;; XEmacs will have to make do with %s (princ) for floats. |
| 4857 | 4942 | ||
| 4858 | (defvar ps-float-format (if (eq ps-print-emacs-type 'emacs) | 4943 | (defvar ps-float-format (if (featurep 'xemacs) |
| 4859 | "%0.3f " ; emacs | 4944 | "%s " ; xemacs |
| 4860 | "%s ")) ; xemacs | 4945 | "%0.3f ")) ; emacs |
| 4861 | 4946 | ||
| 4862 | 4947 | ||
| 4863 | (defun ps-float-format (value &optional default) | 4948 | (defun ps-float-format (value &optional default) |
| @@ -6360,14 +6445,16 @@ If FACE is not a valid face name, it is used default face." | |||
| 6360 | 6445 | ||
| 6361 | 6446 | ||
| 6362 | ;; to avoid compilation gripes | 6447 | ;; to avoid compilation gripes |
| 6448 | (defalias 'ps-jitify 'jit-lock-fontify-now) | ||
| 6449 | (defalias 'ps-lazify 'lazy-lock-fontify-region) | ||
| 6450 | |||
| 6451 | |||
| 6452 | ;; to avoid compilation gripes | ||
| 6363 | (defun ps-print-ensure-fontified (start end) | 6453 | (defun ps-print-ensure-fontified (start end) |
| 6364 | (cond | 6454 | (cond ((and (boundp 'jit-lock-mode) (symbol-value 'jit-lock-mode)) |
| 6365 | ((and (boundp 'jit-lock-mode) (symbol-value 'jit-lock-mode)) | 6455 | (ps-jitify start end)) |
| 6366 | (defalias 'ps-jitify 'jit-lock-fontify-now) ; avoid compilation gripes | 6456 | ((and (boundp 'lazy-lock-mode) (symbol-value 'lazy-lock-mode)) |
| 6367 | (ps-jitify start end)) | 6457 | (ps-lazify start end)))) |
| 6368 | ((and (boundp 'lazy-lock-mode) (symbol-value 'lazy-lock-mode)) | ||
| 6369 | (defalias 'ps-lazify 'lazy-lock-fontify-region) ; avoid compilation gripes | ||
| 6370 | (ps-lazify start end)))) | ||
| 6371 | 6458 | ||
| 6372 | 6459 | ||
| 6373 | (defun ps-generate-postscript-with-faces (from to) | 6460 | (defun ps-generate-postscript-with-faces (from to) |
| @@ -6393,7 +6480,7 @@ If FACE is not a valid face name, it is used default face." | |||
| 6393 | (let ((face 'default) | 6480 | (let ((face 'default) |
| 6394 | (position to)) | 6481 | (position to)) |
| 6395 | (cond | 6482 | (cond |
| 6396 | ((eq ps-print-emacs-type 'xemacs) | 6483 | ((featurep 'xemacs) ; xemacs |
| 6397 | ;; Build the list of extents... | 6484 | ;; Build the list of extents... |
| 6398 | (let ((a (cons 'dummy nil)) | 6485 | (let ((a (cons 'dummy nil)) |
| 6399 | record type extent extent-list) | 6486 | record type extent extent-list) |
| @@ -6437,7 +6524,7 @@ If FACE is not a valid face name, it is used default face." | |||
| 6437 | from position | 6524 | from position |
| 6438 | a (cdr a))))) | 6525 | a (cdr a))))) |
| 6439 | 6526 | ||
| 6440 | ((eq ps-print-emacs-type 'emacs) | 6527 | (t ; emacs |
| 6441 | (let ((property-change from) | 6528 | (let ((property-change from) |
| 6442 | (overlay-change from) | 6529 | (overlay-change from) |
| 6443 | (save-buffer-invisibility-spec buffer-invisibility-spec) | 6530 | (save-buffer-invisibility-spec buffer-invisibility-spec) |
| @@ -6714,11 +6801,11 @@ If FACE is not a valid face name, it is used default face." | |||
| 6714 | ;; Don't use it unless you understand what it does! | 6801 | ;; Don't use it unless you understand what it does! |
| 6715 | 6802 | ||
| 6716 | (defmacro ps-prsc () | 6803 | (defmacro ps-prsc () |
| 6717 | `(if (eq ps-print-emacs-type 'emacs) [f22] 'f22)) | 6804 | `(if (featurep 'xemacs) 'f22 [f22])) |
| 6718 | (defmacro ps-c-prsc () | 6805 | (defmacro ps-c-prsc () |
| 6719 | `(if (eq ps-print-emacs-type 'emacs) [C-f22] '(control f22))) | 6806 | `(if (featurep 'xemacs) '(control f22) [C-f22])) |
| 6720 | (defmacro ps-s-prsc () | 6807 | (defmacro ps-s-prsc () |
| 6721 | `(if (eq ps-print-emacs-type 'emacs) [S-f22] '(shift f22))) | 6808 | `(if (featurep 'xemacs) '(shift f22) [S-f22])) |
| 6722 | 6809 | ||
| 6723 | ;; A hook to bind to `rmail-mode-hook' to locally bind prsc and set the | 6810 | ;; A hook to bind to `rmail-mode-hook' to locally bind prsc and set the |
| 6724 | ;; `ps-left-headers' specially for mail messages. | 6811 | ;; `ps-left-headers' specially for mail messages. |