403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.141
Web Server : Apache
System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64
User : sws1073854427 ( 1073854427)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/share/emacs/28.2/lisp/progmodes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/progmodes/ps-mode.elc
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(defconst ps-mode-version "1.1i, 17 May 2008")
(defconst ps-mode-maintainer-address "Peter Kleiweg <p.c.j.kleiweg@rug.nl>, bug-gnu-emacs@gnu.org")
(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310%\210\303\311\305\312\313\314\315\316\307\304&	\210\303\317\305\320\315\321\307\304&\210\322\323\324\325#\210\326\327\330\331\332DD\333\307\311\334\335&\210\326\336\330\331\337DD\340\307\311\334\341&\210\326\342\330\331\343DD\344\307\311\334\331&\210\326\345\330\331\346DD\347\307\317\334\350&\210\326\351\330\331\352DD\353\307\317\334\354&\210\326\355\330\331\356DD\357\307\317\334\360&\210\326\361\330\331\362DD\363\307\317\334\364&\210\326\365\330\331\366DD\367\307\317\334\370&\210\326\371\330\331\372DD\373\307\317\334\374&\210\326\375\330\331\376DD\377\307\317\334\201@&\207" [require comint smie custom-declare-group PostScript nil "PostScript mode for Emacs." :group languages PostScript-edit "PostScript editing." :link (custom-group-link :tag "Font Lock Faces group" font-lock-faces) :prefix "ps-mode-" PostScript-interaction "PostScript interaction." "ps-run-" make-obsolete-variable ps-mode-auto-indent electric-indent-mode "25.1" custom-declare-variable ps-mode-tab funcall function #[0 "\300\207" [4] 1 #1=""] "Number of spaces to use when indenting." :type integer ps-mode-paper-size #[0 "\300\207" [(595 842)] 1 #1#] "Default paper size.\n\nWhen inserting an EPSF template these values are used\nto set the boundingbox to include the whole page.\nWhen the figure is finished these values should be replaced." (choice (const :tag "letter" (612 792)) (const :tag "legal" (612 1008)) (const :tag "a0" (2380 3368)) (const :tag "a1" (1684 2380)) (const :tag "a2" (1190 1684)) (const :tag "a3" (842 1190)) (const :tag "a4" (595 842)) (const :tag "a5" (421 595)) (const :tag "a6" (297 421)) (const :tag "a7" (210 297)) (const :tag "a8" (148 210)) (const :tag "a9" (105 148)) (const :tag "a10" (74 105)) (const :tag "b0" (2836 4008)) (const :tag "b1" (2004 2836)) (const :tag "b2" (1418 2004)) (const :tag "b3" (1002 1418)) (const :tag "b4" (709 1002)) (const :tag "b5" (501 709)) (const :tag "archE" (2592 3456)) (const :tag "archD" (1728 2592)) (const :tag "archC" (1296 1728)) (const :tag "archB" (864 1296)) (const :tag "archA" (648 864)) (const :tag "flsa" (612 936)) (const :tag "flse" (612 936)) (const :tag "halfletter" (396 612)) (const :tag "11x17" (792 1224)) (const :tag "tabloid" (792 1224)) (const :tag "ledger" (1224 792)) (const :tag "csheet" (1224 1584)) (const :tag "dsheet" (1584 2448)) (const :tag "esheet" (2448 3168))) ps-mode-print-function #[0 "\300\207" [#[0 "\303\304>\203\305\202\f\306\307 *\207" [system-type lpr-command lpr-switches nil (usg-unix-v hpux) "lp" "lpr" lpr-buffer] 3]] 1 #1#] "Lisp function to print current buffer as PostScript." ps-run-prompt #[0 "\300\207" ["\\(GS\\(<[0-9]+\\)?>\\)+"] 1 #1#] "Regexp to match prompt in interactive PostScript." regexp ps-run-font-lock-keywords-2 #[0 "\301\302\230?\205\303!\304U\203\202\305P\306DC\307\"\207" [ps-run-prompt append #1# string-to-char 94 "^" (0 font-lock-function-name-face nil nil) ((">>showpage, press <return> to continue<<" (0 font-lock-keyword-face nil nil)) ("^\\(Error\\|Can't\\).*" (0 font-lock-warning-face nil nil)) ("^\\(Current file position is\\) \\([0-9]+\\)" (1 font-lock-comment-face nil nil) (2 font-lock-warning-face nil nil)))] 3 #1#] "Medium level highlighting of messages from the PostScript interpreter.\n\nSee documentation on font-lock for details." (repeat (list :tag "Expression with one or more highlighters" :value (#1# (0 default nil t)) (regexp :tag "Expression") (repeat :tag "Highlighters" :inline regexp (list :tag "Highlighter" (integer :tag "Subexp") face (boolean :tag "Override") (boolean :tag "Laxmatch" :value t))))) ps-run-x #[0 "\300\207" [("gs" "-r72" "-sPAPERSIZE=a4")] 1 #1#] "Command as list to run PostScript with graphic display." (repeat string) ps-run-dumb #[0 "\300\207" [("gs" "-dNODISPLAY")] 1 #1#] "Command as list to run PostScript without graphic display." (repeat string) ps-run-init #[0 "\300\207" [nil] 1 #1#] "String of commands to send to PostScript to start interactive.\n\nExample: \"executive\"\n\nYou won't need to set this option for Ghostscript." (choice (const nil) string) ps-run-error-line-numbers #[0 "\300\207" [nil] 1 #1#] "What values are used by the PostScript interpreter in error messages?" (choice (const :tag "line numbers" t) (const :tag "byte counts" nil)) ps-run-tmp-dir #[0 "\300\207" [nil] 1 #1#] "Name of directory to place temporary file.\nIf nil, use `temporary-file-directory'." (choice (const nil) directory)] 10)
#@56 Regexp of PostScript operators that will be fontified.
(defconst ps-mode-operators (byte-code "\300\301\302\303\"\304Q\207" [("clear" "mark" "cleartomark" "counttomark" "forall" "dict" "begin" "end" "def" "true" "false" "exec" "if" "ifelse" "for" "repeat" "loop" "exit" "stop" "stopped" "countexecstack" "execstack" "quit" "start" "save" "restore" "bind" "null" "gsave" "grestore" "grestoreall" "showpage") "\\_<" regexp-opt t "\\_>"] 5) (#$ . 4725))
#@49 Subdued level highlighting for PostScript mode.
(defconst ps-mode-font-lock-keywords-1 '(("\\`%!PS.*" (0 font-lock-constant-face t)) ("^%%BoundingBox:[ 	]+-?[0-9]+[ 	]+-?[0-9]+[ 	]+-?[0-9]+[ 	]+-?[0-9]+[ 	]*$" (0 font-lock-constant-face t)) ("[\200-\377]+" (0 font-lock-warning-face prepend nil))) (#$ . 5183))
#@48 Medium level highlighting for PostScript mode.
(defconst ps-mode-font-lock-keywords-2 (byte-code "\302\303	P\304BC\"\207" [ps-mode-font-lock-keywords-1 ps-mode-operators append "\\(^\\|[^/\n]\\)" (2 font-lock-keyword-face)] 4) (#$ . 5500))
#@46 High level highlighting for PostScript mode.
(defconst ps-mode-font-lock-keywords-3 (byte-code "\302\303\304\305B\306	\307BF\"\207" [ps-mode-font-lock-keywords-1 ps-mode-operators append ("//\\(?:\\sw\\|\\s_\\)+" . font-lock-type-face) "^\\(/\\(?:\\sw\\|\\s_\\)+\\)\\_>\\([[ 	]*\\(%.*\\)?
?$\\|[ 	]*\\({\\|<<\\)\\|[ 	]+[0-9]+[ 	]+dict\\_>\\|.*\\_<def\\_>\\)" (1 font-lock-function-name-face) ("/\\(?:\\sw\\|\\s_\\)+" . font-lock-variable-name-face) font-lock-keyword-face] 7) (#$ . 5747))
#@54 Default expressions to highlight in PostScript mode.
(defconst ps-mode-font-lock-keywords ps-mode-font-lock-keywords-1 (#$ . 6243))
#@53 Subdued level highlighting for PostScript run mode.
(defconst ps-run-font-lock-keywords-1 (byte-code "\301\230?\205\302!\303U\203\202\304P\305BC\207" [ps-run-prompt "" string-to-char 94 "^" font-lock-function-name-face] 2) (#$ . 6381))
#@58 Default expressions to highlight in PostScript run mode.
(defconst ps-run-font-lock-keywords ps-run-font-lock-keywords-1 (#$ . 6633))
#@41 Local keymap to use in PostScript mode.
(defvar ps-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\301\332\333#\210\207" [make-sparse-keymap define-key "" ps-run-boundingbox "" ps-mode-uncomment-region "" ps-mode-epsf-rich "" ps-run-start "" ps-run-region "" ps-run-quit "" ps-mode-print-buffer "" ps-mode-comment-out-region "" ps-run-kill "\n" ps-mode-other-newline "\f" ps-run-clear "" ps-run-buffer "" ps-mode-backward-delete-char] 5) (#$ . 6773))
#@45 Syntax table used while in PostScript mode.
(defvar ps-mode-syntax-table (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\305#\210\301\307\305#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\315#\210\301\317\315#\210\301\320\315#\210\301\321\315#\210\301\322\315#\210\301\323\315#\210\301\324\315#\210\301\325\315#\210\301\326\315#\210\301\327\315#\210\301\330\315#\210\301\331\315#\210\301\332\315#\210\301\333\315#\210\301\334\315#\210\301\335\336#\210\301\337\315#\210\301\340\315#\210\301\341\315#\210\301\342\315#\210\301\343\315#\210\207" [make-syntax-table modify-syntax-entry 37 "< " 10 "> " 13 12 60 "(>" 62 ")<" 33 "_ " 34 35 36 38 39 42 43 44 45 46 58 59 61 63 64 92 "\\" 94 95 96 124 126] 5) (#$ . 7449))
#@45 Local keymap to use in PostScript run mode.
(defvar ps-run-mode-map (byte-code "\301 \302\"\210\303\304\305#\210\303\306\307#\210\303\310\311#\210\303\312\313#\210\207" [comint-mode-map make-sparse-keymap set-keymap-parent define-key "" ps-run-quit "" ps-run-kill "" ps-run-goto-error [mouse-2] ps-run-mouse-goto-error] 5) (#$ . 8227))
#@42 Name of temporary file, set by `ps-run'.
(defvar ps-mode-tmp-file nil (#$ . 8581))
#@66 Mark to start of region that was sent to PostScript interpreter.
(defvar ps-run-mark nil (#$ . 8670))
#@42 Parent window of interactive PostScript.
(defvar ps-run-parent nil (#$ . 8778))
(defconst ps-mode-menu-main '("PostScript" ["EPSF Template, Sparse" ps-mode-epsf-sparse t] ["EPSF Template, Rich" ps-mode-epsf-rich t] "---" ("Cookbook" ["RE" ps-mode-RE t] ["ISOLatin1Extended" ps-mode-latin-extended t] ["center" ps-mode-center t] ["right" ps-mode-right t] ["Heapsort" ps-mode-heapsort t]) ("Fonts (1)" ["Times-Roman" (insert "/Times-Roman ") t] ["Times-Bold" (insert "/Times-Bold ") t] ["Times-Italic" (insert "/Times-Italic ") t] ["Times-BoldItalic" (insert "/Times-BoldItalic ") t] ["Helvetica" (insert "/Helvetica ") t] ["Helvetica-Bold" (insert "/Helvetica-Bold ") t] ["Helvetica-Oblique" (insert "/Helvetica-Oblique ") t] ["Helvetica-BoldOblique" (insert "/Helvetica-BoldOblique ") t] ["Courier" (insert "/Courier ") t] ["Courier-Bold" (insert "/Courier-Bold ") t] ["Courier-Oblique" (insert "/Courier-Oblique ") t] ["Courier-BoldOblique" (insert "/Courier-BoldOblique ") t] ["Symbol" (insert "/Symbol") t]) ("Fonts (2)" ["AvantGarde-Book" (insert "/AvantGarde-Book ") t] ["AvantGarde-Demi" (insert "/AvantGarde-Demi ") t] ["AvantGarde-BookOblique" (insert "/AvantGarde-BookOblique ") t] ["AvantGarde-DemiOblique" (insert "/AvantGarde-DemiOblique ") t] ["Bookman-Light" (insert "/Bookman-Light ") t] ["Bookman-Demi" (insert "/Bookman-Demi ") t] ["Bookman-LightItalic" (insert "/Bookman-LightItalic ") t] ["Bookman-DemiItalic" (insert "/Bookman-DemiItalic ") t] ["Helvetica-Narrow" (insert "/Helvetica-Narrow ") t] ["Helvetica-Narrow-Bold" (insert "/Helvetica-Narrow-Bold ") t] ["Helvetica-Narrow-Oblique" (insert "/Helvetica-Narrow-Oblique ") t] ["Helvetica-Narrow-BoldOblique" (insert "/Helvetica-Narrow-BoldOblique ") t] ["NewCenturySchlbk-Roman" (insert "/NewCenturySchlbk-Roman ") t] ["NewCenturySchlbk-Bold" (insert "/NewCenturySchlbk-Bold ") t] ["NewCenturySchlbk-Italic" (insert "/NewCenturySchlbk-Italic ") t] ["NewCenturySchlbk-BoldItalic" (insert "/NewCenturySchlbk-BoldItalic ") t] ["Palatino-Roman" (insert "/Palatino-Roman ") t] ["Palatino-Bold" (insert "/Palatino-Bold ") t] ["Palatino-Italic" (insert "/Palatino-Italic ") t] ["Palatino-BoldItalic" (insert "/Palatino-BoldItalic ") t] ["ZapfChancery-MediumItalic" (insert "/ZapfChancery-MediumItalic ") t] ["ZapfDingbats" (insert "/ZapfDingbats ") t]) "---" ["Comment Out Region" ps-mode-comment-out-region (mark t)] ["Uncomment Region" ps-mode-uncomment-region (mark t)] "---" ["8-bit to Octal Buffer" ps-mode-octal-buffer t] ["8-bit to Octal Region" ps-mode-octal-region (mark t)] "---" ["Start PostScript" ps-run-start t] ["Quit PostScript" ps-run-quit (process-status "ps-run")] ["Kill PostScript" ps-run-kill (process-status "ps-run")] ["Send Buffer to Interpreter" ps-run-buffer (process-status "ps-run")] ["Send Region to Interpreter" ps-run-region (and (mark t) (process-status "ps-run"))] ["Send Newline to Interpreter" ps-mode-other-newline (process-status "ps-run")] ["View BoundingBox" ps-run-boundingbox (process-status "ps-run")] ["Clear/Reset PostScript Graphics" ps-run-clear (process-status "ps-run")] "---" ["Print Buffer as PostScript" ps-mode-print-buffer t] ["Print Region as PostScript" ps-mode-print-region (mark t)] "---" ["Customize for PostScript" (customize-group "PostScript") t] "---" ["Submit Bug Report" ps-mode-submit-bug-report t]))
#@18 PostScript Menu.
(defvar ps-mode-main nil (#$ . 12117))
(easy-menu-do-define 'ps-mode-main ps-mode-map "PostScript Menu." ps-mode-menu-main)
#@19 

(fn KIND TOKEN)
(defalias 'ps-mode-smie-rules #[514 "B\211\301\267\202\302\303!\205%\304\207\207\305\207\211:\205%\211\242\211\306=\205#\305\262\207" [ps-mode-tab #s(hash-table size 3 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ((:after . "<") 9 (:elem . basic) 17 (:close-all . ">") 19)) smie-rule-next-p "<" 0 t :list-intro] 6 (#$ . 12264)])
(defvar ps-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [ps-mode-hook variable-documentation put "Hook run after entering PostScript mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp ps-mode-map definition-name ps-mode] 4)
(defvar ps-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [ps-mode-abbrev-table ps-mode-map variable-documentation put purecopy "Keymap for `ps-mode'." boundp ps-mode-syntax-table definition-name ps-mode (lambda (#1=#:def-tmp-var) (defvar ps-mode-syntax-table #1#)) make-syntax-table "Syntax table for `ps-mode'." (lambda (#1#) (defvar ps-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `ps-mode'." derived-mode-parent prog-mode] 5)
#@1027 Major mode for editing PostScript with GNU Emacs.

Entry to this mode calls `ps-mode-hook'.

The following variables hold user options, and can
be set through the `customize' command:

  `ps-mode-tab'
  `ps-mode-paper-size'
  `ps-mode-print-function'
  `ps-run-prompt'
  `ps-run-font-lock-keywords-2'
  `ps-run-x'
  `ps-run-dumb'
  `ps-run-init'
  `ps-run-error-line-numbers'
  `ps-run-tmp-dir'

Type \[describe-variable] for documentation on these options.


\{ps-mode-map}


When starting an interactive PostScript process with \[ps-run-start],
a second window will be displayed, and `ps-run-mode-hook' will be called.
The keymap for this second window is:

\{ps-run-mode-map}


When Ghostscript encounters an error it displays an error message
with a file position.  Clicking mouse-2 on this number will bring
point to the corresponding spot in the PostScript window, if input
to the interpreter was sent from that window.
Typing \<ps-run-mode-map>\[ps-run-goto-error] when the cursor is at the number has the same effect.
(defalias 'ps-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
+=\204R\326
\325+C#\210\327!\210\330\f!\210
+\306\331!\210\332\306\333!\210\334\335\336\337\"\210\306\340!\210\341\342 \" \306\343!\210\344#\306\345!\210\346%\347\350!\210)\351\352!\207" [delay-mode-hooks major-mode mode-name ps-mode-map ps-mode-syntax-table ps-mode-abbrev-table make-local-variable t prog-mode ps-mode "PostScript" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table syntax-propertize-function ps-mode-syntax-propertize font-lock-defaults ((ps-mode-font-lock-keywords ps-mode-font-lock-keywords-1 ps-mode-font-lock-keywords-2 ps-mode-font-lock-keywords-3) nil) smie-setup nil ps-mode-smie-rules electric-indent-chars append (62 93 125) comment-start "%" comment-start-skip "%+[ 	]*" doc-view-minor-mode 1 run-mode-hooks ps-mode-hook local-abbrev-table] 5 (#$ . 13736) nil])
#@42 Show current version of PostScript mode.
(defalias 'ps-mode-show-version #[0 "\301\302\"\207" [ps-mode-version message " *** PostScript Mode (ps-mode) Version %s *** "] 3 (#$ . 15937) nil])
#@50 Submit via mail a bug report on PostScript mode.
(defalias 'ps-mode-submit-bug-report #[0 "\305\306!\205\307\310\311\n\312\313\f#\314#*\207" [reporter-dont-compact-list reporter-prompt-for-summary-p ps-mode-maintainer-address ps-mode-version system-type y-or-n-p "Submit bug report on PostScript mode? " nil (ps-mode-print-function ps-run-font-lock-keywords-2) reporter-submit-bug-report format "ps-mode.el %s [%s]" (ps-mode-tab ps-mode-paper-size ps-mode-print-function ps-run-prompt ps-run-font-lock-keywords-2 ps-run-x ps-run-dumb ps-run-init ps-run-error-line-numbers ps-run-tmp-dir)] 6 (#$ . 16134) nil])
(defconst ps-mode--string-syntax-table (byte-code "\301!\302\303\304#\210\302\305\304#\210\302\306\304#\210\302\307\304#\210\302\310\304#\210\302\311\304#\210\302\312\304#\210\207" [ps-mode-syntax-table make-syntax-table modify-syntax-entry 37 "." 60 62 123 125 91 93] 5))
#@12 

(fn END)
(defalias 'ps-mode--syntax-propertize-special #[257 "\302 \303\3048?\206n\3058f\211\262\306=\203K\214e}\210\3058b\210\3071F\310 p\311\312#\216\313!\210\303\314\315!\210)\316`S`\310\317$)\266\2020\202I\210b)\207\211\320=\205n\321\3058Tf\322=\203`\323\202a\324\325#\205n\316`S`\310\317$\207" [ps-mode--string-syntax-table parse-sexp-lookup-properties syntax-ppss nil 3 8 40 (scan-error) syntax-table make-closure #[0 "r\301q\210\302\300!)\207" [V0 V1 set-syntax-table] 2] set-syntax-table forward-sexp 1 put-text-property (15) 60 re-search-forward 126 "~>" ">" move] 10 (#$ . 17036)])
#@18 

(fn START END)
(defalias 'ps-mode-syntax-propertize #[514 "b\210\300!\210`\211b\210`W\205[\301\302\303#\205[\304\224\203\304\224\304\225\305\224f\305\224\206+`Sf=\2069\306\212\307\304\224!)8?\205K\310\304\224\304\225\311\312$\210\300!\210\313\211\203V\310\311$\210\266\202\207" [ps-mode--syntax-propertize-special re-search-forward "\\(<\\)\\(?:~\\|[ \n	]*[[:xdigit:]]\\)\\|\\(?1:(\\)" t 1 0 8 syntax-ppss put-text-property syntax-table (15) nil] 11 (#$ . 17656)])
#@184 To what column should text on current line be indented?

Indentation is increased if the last token on the current line
defines the beginning of a group.  These tokens are:  {  [  <<
(defalias 'ps-mode-target-column #[0 "\212\301 \210\302\303!\2038\3041(\305\225b\210\306\307!\210\301 \210\302\310!\203#\305\225b\210i0\202l\311 \210\312\313\314!\"\210\305\262\202l\315\316\317\315\320#\204E\305\202j\305\224b\210\301 \210\302\310!\203V\305\225b\210i\262\315\210\316\321\315\320#\203i\211\\\262\211\262)\207" [ps-mode-tab beginning-of-line looking-at "[ 	]*\\(}\\|\\]\\|>>\\)" (error) 0 backward-sexp 1 "[ 	]+" ding message "%s" error-message-string nil re-search-backward "[^ 	\n
\f][ 	\n
\f]*\\=" t "\\({\\|\\[\\|<<\\)[ 	]*\\(%[^\n]*\\)?\\="] 5 (#$ . 18149)])
#@60 Delete backward indentation, or delete backward character.
(defalias 'ps-mode-backward-delete-char #[0 "i\302\203	\303W\204\304\305\302\306#\204\307\310!\207\311 \262V\203*\211	\\\262\202\211Y\2038\211	Z\262\202*\211\312W\203A\312\262\313!\207" [electric-indent-mode ps-mode-tab nil 1 re-search-backward "^[ 	]+\\=" t call-interactively delete-backward-char ps-mode-target-column 0 indent-line-to] 6 (#$ . 18932) nil])
#@39 Perform newline in `*ps-run*' buffer.
(defalias 'ps-mode-other-newline #[0 "\300\301!\207" [ps-run-send-string ""] 2 (#$ . 19378) nil])
#@29 Print buffer as PostScript.
(defalias 'ps-mode-print-buffer #[0 " \207" [ps-mode-print-function] 1 (#$ . 19520) nil])
#@109 Print region as PostScript, adding minimal header and footer lines:

%!PS
<region>
showpage

(fn BEGIN END)
(defalias 'ps-mode-print-region #[514 "p\301\302\303\"r\211q\210\304\305\"\216\306c\210\307#\210\310c\210 *\207" [ps-mode-print-function generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205	\302\300!\207" [V0 buffer-name kill-buffer] 2] "%!PS\n" insert-buffer-substring "\nshowpage\n"] 8 (#$ . 19646) "r"])
#@37 Comment out region.

(fn BEGIN END)
(defalias 'ps-mode-comment-out-region #[514 "\300 \211\301\223\210\212b\210i\302U\203\303c\210\301y\302U\203)`\304!W\203)\303c\210\202)\211\301\211\223\207" [make-marker nil 0 "%" marker-position] 6 (#$ . 20084) "r"])
#@99 Uncomment region.

Only one `%' is removed, and it has to be in the first column.

(fn BEGIN END)
(defalias 'ps-mode-uncomment-region #[514 "\300 \211\301\223\210\212b\210\302\303!\203\304\305!\210\301y\306U\2031`\307!W\2031\302\310!\203\304\305!\210\202)\211\301\211\223\207" [make-marker nil looking-at "^%" delete-char 1 0 marker-position "%"] 6 (#$ . 20353) "r"])
#@51 Change 8-bit characters to octal codes in buffer.
(defalias 'ps-mode-octal-buffer #[0 "\300ed\"\207" [ps-mode-octal-region] 3 (#$ . 20738) nil])
#@67 Change 8-bit characters to octal codes in region.

(fn BEGIN END)
(defalias 'ps-mode-octal-region #[514 "\212\300!\301b\210\302\303\304!\305#\203&\211T\262\306\307\310\311`Sf!\"\305\211#\210\202\312\313\211\314U\2033\315\2024\316#\210\317\211\223\266\202)\207" [copy-marker 0 re-search-forward "[\200-\377]" marker-position t replace-match format "\\%03o" multibyte-char-to-unibyte message "%d change%s made" 1 "" "s" nil] 9 (#$ . 20889) "*r"])
#@26 Insert function /center.
(defalias 'ps-mode-center #[0 "\300c\207" ["\n/center {\n    dup stringwidth\n    exch 2 div neg\n    exch 2 div neg\n    rmoveto\n} bind def\n"] 1 (#$ . 21351) nil])
#@25 Insert function /right.
(defalias 'ps-mode-right #[0 "\300c\207" ["\n/right {\n    dup stringwidth\n    exch neg\n    exch neg\n    rmoveto\n} bind def\n"] 1 (#$ . 21549) nil])
#@22 Insert function /RE.
(defalias 'ps-mode-RE #[0 "\300c\207" ["\n% `new-font-name' `encoding-vector' `old-font-name' RE -\n/RE {\n    findfont\n    dup maxlength dict begin {\n        1 index /FID ne { def } { pop pop } ifelse\n    } forall\n    /Encoding exch def\n    dup /FontName exch def\n    currentdict end definefont pop\n} bind def\n"] 1 (#$ . 21732) nil])
#@176 Insert array /ISOLatin1Extended.

This encoding vector contains all the entries from ISOLatin1Encoding
plus the usually uncoded characters inserted on positions 1 through 28.
(defalias 'ps-mode-latin-extended #[0 "\300c\207" ["\n% ISOLatin1Encoding, extended with remaining uncoded glyphs\n/ISOLatin1Extended [\n    /.notdef /Lslash /lslash /OE /oe /Scaron /scaron /Zcaron /zcaron\n    /Ydieresis /trademark /bullet /dagger /daggerdbl /ellipsis /emdash\n    /endash /fi /fl /florin /fraction /guilsinglleft /guilsinglright\n    /perthousand /quotedblbase /quotedblleft /quotedblright\n    /quotesinglbase /quotesingle /.notdef /.notdef /.notdef /space\n    /exclam /quotedbl /numbersign /dollar /percent /ampersand\n    /quoteright /parenleft /parenright /asterisk /plus /comma /minus\n    /period /slash /zero /one /two /three /four /five /six /seven /eight\n    /nine /colon /semicolon /less /equal /greater /question /at /A /B /C\n    /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z\n    /bracketleft /backslash /bracketright /asciicircum /underscore\n    /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s\n    /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde\n    /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef\n    /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef\n    /.notdef /.notdef /.notdef /dotlessi /grave /acute /circumflex\n    /tilde /macron /breve /dotaccent /dieresis /.notdef /ring /cedilla\n    /.notdef /hungarumlaut /ogonek /caron /space /exclamdown /cent\n    /sterling /currency /yen /brokenbar /section /dieresis /copyright\n    /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron\n    /degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph\n    /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright\n    /onequarter /onehalf /threequarters /questiondown /Agrave /Aacute\n    /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla /Egrave /Eacute\n    /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth\n    /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply\n    /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn\n    /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring\n    /ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave\n    /iacute /icircumflex /idieresis /eth /ntilde /ograve /oacute\n    /ocircumflex /otilde /odieresis /divide /oslash /ugrave /uacute\n    /ucircumflex /udieresis /yacute /thorn /ydieresis\n] def\n"] 1 (#$ . 22103) nil])
#@28 Insert function /Heapsort.
(defalias 'ps-mode-heapsort #[0 "\300c\207" ["\n% `array-element' Heapsort-cvi-or-cvr-or-cvs `number-or-string'\n/Heapsort-cvi-or-cvr-or-cvs {\n    % 0 get\n} bind def\n% `array' Heapsort `sorted-array'\n/Heapsort {\n    dup length /hsR exch def\n    /hsL hsR 2 idiv 1 add def\n    {\n        hsR 2 lt { exit } if\n        hsL 1 gt {\n            /hsL hsL 1 sub def\n        } {\n            /hsR hsR 1 sub def\n            dup dup dup 0 get exch dup hsR get\n            0 exch put\n            hsR exch put\n        } ifelse\n        dup hsL 1 sub get /hsT exch def\n        /hsJ hsL def\n        {\n            /hsS hsJ def\n            /hsJ hsJ dup add def\n            hsJ hsR gt { exit } if\n            hsJ hsR lt {\n                dup dup hsJ 1 sub get Heapsort-cvi-or-cvr-or-cvs\n                exch hsJ get Heapsort-cvi-or-cvr-or-cvs\n                lt { /hsJ hsJ 1 add def } if\n            } if\n            dup hsJ 1 sub get Heapsort-cvi-or-cvr-or-cvs\n            hsT Heapsort-cvi-or-cvr-or-cvs\n            le { exit } if\n            dup dup hsS 1 sub exch hsJ 1 sub get put\n        } loop\n        dup hsS 1 sub hsT put\n    } loop\n} bind def\n"] 1 (#$ . 24677) nil])
#@30 Insert sparse EPSF template.
(defalias 'ps-mode-epsf-sparse #[0 "db\210\301\302\303\304#\204db\210\305c\210db\210\301\306\303\304#\204#\301\307!\210\310c\210db\210\301\311\303\304#\2045\301\312!\210\313c\210eb\210\314c\210\315\316@A@#c\210\317c\207" [ps-mode-paper-size re-search-backward "%%EOF[ 	\n]*\\'" nil t "\n%%EOF\n" "\\bshowpage[ 	\n]+%%EOF[ 	\n]*\\'" "%%EOF" "showpage\n" "\\bend[ 	\n]+\\bshowpage[ 	\n]+%%EOF[ 	\n]*\\'" "showpage" "\nend\n" "%!PS-Adobe-3.0 EPSF-3.0\n%%BoundingBox: 0 0 " format "%d %d\n\n" "64 dict begin\n\n"] 4 (#$ . 25900) nil])
#@28 Insert rich EPSF template.
(defalias 'ps-mode-epsf-rich #[0 "\301 \210\302y\210\203\303\304!\305\261\210\306\307 \305\261\210\310\311 \305\261\210\312c\210\313y\207" [buffer-file-name ps-mode-epsf-sparse -3 "%%Title: " file-name-nondirectory "\n" "%%Creator: " user-full-name "%%CreationDate: " current-time-string "%%EndComments\n" 3] 3 (#$ . 26472) nil])
(defvar ps-run-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [ps-run-mode-hook variable-documentation put "Hook run after entering Interactive PS mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp ps-run-mode-map definition-name ps-run-mode] 4)
(defvar ps-run-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [ps-run-mode-abbrev-table ps-run-mode-map variable-documentation put purecopy "Keymap for `ps-run-mode'." boundp ps-run-mode-syntax-table definition-name ps-run-mode (lambda (#1=#:def-tmp-var) (defvar ps-run-mode-syntax-table #1#)) make-syntax-table "Syntax table for `ps-run-mode'." (lambda (#1#) (defvar ps-run-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `ps-run-mode'." derived-mode-parent comint-mode] 5)
#@309 Major mode in interactive PostScript window.
This mode is invoked from `ps-mode' and should not be called directly.

In addition to any hooks its parent mode `comint-mode' might have run,
this mode runs the hook `ps-run-mode-hook', as the final or
penultimate step during initialization.

\{ps-run-mode-map}
(defalias 'ps-run-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
=\204R\326
\325C#\210\327!\210\330\f!\210
\306\331!\210\332\333)\334\335!\207" [delay-mode-hooks major-mode mode-name ps-run-mode-map ps-run-mode-syntax-table ps-run-mode-abbrev-table make-local-variable t comint-mode ps-run-mode "Interactive PS" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table font-lock-defaults ((ps-run-font-lock-keywords ps-run-font-lock-keywords-1 ps-run-font-lock-keywords-2) t) (":%s") run-mode-hooks ps-run-mode-hook local-abbrev-table mode-line-process] 5 (#$ . 27991) nil])
#@54 Error if not in `ps-mode' or not running PostScript.
(defalias 'ps-run-running #[0 "\300\301!\204\n\302\303!\210\304\305!\306=?\205\302\307!\207" [derived-mode-p ps-mode error "This function can only be called from PostScript mode" process-status "ps-run" run "No PostScript process running"] 2 (#$ . 29190)])
#@31 Start interactive PostScript.
(defalias 'ps-run-start #[0 "\203	\206	\n\306\211\307 \204\310\311!\210\f\203!\312\f!\204$\313 
\2038\314 \262\315
\316P\317#\210C\262\320\321!\210\322 \210\323\324!\203I\325\324!\210\326 \210\327\"\262\330\331\332#\316\261\210\333\334\324@\306A%\210r\321q\210\335!!\210\336\337!\210\")\340!)\207" [window-system ps-run-x ps-run-dumb process-connection-type ps-run-mark ps-run-init nil selected-window error "No command specified to run interactive PostScript" markerp make-marker ps-run-make-tmp-filename write-region "\n" 0 pop-to-buffer "*ps-run*" ps-run-mode process-status "ps-run" delete-process erase-buffer append mapconcat identity " " apply make-comint use-local-map make-local-variable comint-prompt-regexp select-window ps-run-mode-map ps-run-prompt] 10 (#$ . 29509) nil])
#@30 Quit interactive PostScript.
(defalias 'ps-run-quit #[0 "\300\301!\210\302 \207" [ps-run-send-string "quit" ps-run-cleanup] 2 (#$ . 30362) nil])
#@30 Kill interactive PostScript.
(defalias 'ps-run-kill #[0 "\300\301!\210\302 \207" [delete-process "ps-run" ps-run-cleanup] 2 (#$ . 30513) nil])
#@34 Clear/reset PostScript graphics.
(defalias 'ps-run-clear #[0 "\300\301!\210\302\303!\210\300\304!\207" [ps-run-send-string "showpage" sit-for 1 ""] 2 (#$ . 30662) nil])
#@40 Send buffer to PostScript interpreter.
(defalias 'ps-run-buffer #[0 "\300ed\"\207" [ps-run-region] 3 (#$ . 30837) nil])
#@56 Send region to PostScript interpreter.

(fn BEGIN END)
(defalias 'ps-run-region #[514 "\302 \210\303 \304 	\305\223\210\306#\210\307\310\311\"!\207" [ps-run-parent ps-run-mark ps-run-running buffer-name ps-run-make-tmp-filename nil write-region ps-run-send-string format "(%s) run"] 7 (#$ . 30963) "r"])
#@19 View BoundingBox.
(defalias 'ps-run-boundingbox #[0 "\300 \210\301\211\211\211\211p\212\302b\210\303\304!\210\305\302!\262\305\306!\262\305\307!\262\305\310!\262)\311!\311!W\2049\312\313#\210\311!\311!W\204J\312\314#\210\315 \262\316\317\320\n\n\n\f&	\321#\210\322\317\323\"!\210\211q\207" [ps-run-running nil 1 re-search-forward "^%%BoundingBox:[ 	]+\\(-?[0-9]+\\)[ 	]+\\(-?[0-9]+\\)[ 	]+\\(-?[0-9]+\\)[ 	]+\\(-?[0-9]+\\)" match-string 2 3 4 string-to-number error "x1 (%s) should be less than x2 (%s)" "y1 (%s) should be less than y2 (%s)" ps-run-make-tmp-filename write-region format "gsave\n    initgraphics\n    2 setlinewidth\n    %s %s moveto\n    %s %s lineto\n    %s %s lineto\n    %s %s lineto\n    closepath\n    gsave\n        [ 4 20 ] 0 setdash\n        1 0 0 setrgbcolor\n        stroke\n    grestore\n    gsave\n        [ 4 20 ] 8 setdash\n        0 1 0 setrgbcolor\n        stroke\n    grestore\n    [ 4 20 ] 16 setdash\n    0 0 1 setrgbcolor\n    stroke\ngrestore\n" 0 ps-run-send-string "(%s) run"] 17 (#$ . 31279) nil])
#@15 

(fn STRING)
(defalias 'ps-run-send-string #[257 "\300 \301\302!\210\303 \210c\210\304 \210\305!\207" [selected-window pop-to-buffer "*ps-run*" comint-goto-process-mark comint-send-input select-window] 4 (#$ . 32357)])
(defalias 'ps-run-make-tmp-filename #[0 "\204	\206	\n\303\304!)\207" [ps-mode-tmp-file ps-run-tmp-dir temporary-file-directory make-temp-file "ps-run-"] 2])
(defalias 'ps-run-cleanup #[0 "\205\301\302!\205\303!\262\207" [ps-mode-tmp-file nil file-exists-p delete-file] 3])
#@70 Set point at mouse click, then call `ps-run-goto-error'.

(fn EVENT)
(defalias 'ps-run-mouse-goto-error #[257 "\300!\210\301 \207" [mouse-set-point ps-run-goto-error] 3 (#$ . 32875) "e"])
#@111 Jump to buffer position read as integer at point.
Use line numbers if `ps-run-error-line-numbers' is not nil.
(defalias 'ps-run-goto-error #[0 "`\303\304!\204
\305`S]b\210\303\304!\205K\305u\210\306\307!\210\303\310!\205K\311\312\313\224\313\225{!\262b\210\314!\210	\203C\315\n!b\210\211Sy\210\311\202I\211\315\n!\\b\262\207" [ps-run-parent ps-run-error-line-numbers ps-run-mark looking-at "[0-9]" 1 forward-word-strictly -1 "[0-9]+" nil string-to-number 0 pop-to-buffer marker-position] 5 (#$ . 33071) nil])
(byte-code "\300\301\302\"\210\303\304!\207" [add-hook kill-emacs-hook ps-run-cleanup provide ps-mode] 3)

Youez - 2016 - github.com/yon3zu
LinuXploit