Variable: ps-mode-font-lock-keywords-3
ps-mode-font-lock-keywords-3 is a variable defined in ps-mode.el.gz.
Value
(("\\`%!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))
("//\\(?:\\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)
("\\_<\\(b\\(?:egin\\|ind\\)\\|c\\(?:lear\\(?:tomark\\)?\\|ount\\(?:\\(?:execstac\\|tomar\\)k\\)\\)\\|d\\(?:ef\\|ict\\)\\|e\\(?:nd\\|x\\(?:ec\\(?:stack\\)?\\|it\\)\\)\\|f\\(?:alse\\|or\\(?:all\\)?\\)\\|g\\(?:restore\\(?:all\\)?\\|save\\)\\|if\\(?:else\\)?\\|loop\\|mark\\|null\\|quit\\|re\\(?:peat\\|store\\)\\|s\\(?:ave\\|howpage\\|t\\(?:art\\|op\\(?:ped\\)?\\)\\)\\|true\\)\\_>" . font-lock-keyword-face))
Documentation
High level highlighting for PostScript mode.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/ps-mode.el.gz
;; Level 3 font-lock:
;; - All from level 2
;; - Immediately evaluated names: those starting with `//' (type face)
;; - Names that look like they are used for the definition of:
;; * a function
;; * an array
;; * a dictionary
;; * a "global" variable
;; (function name face)
;; - Other names (variable name face)
;; The rules used to determine what names fit in the first category are:
;; - Only names that are at the left margin, and one of these on the same line:
;; * Nothing after the name except possibly one or more `[' or a comment
;; * A `{' or `<<' or `[0-9]+ dict' following the name
;; * A `def' somewhere in the same line
;; Names are fontified before PostScript operators, allowing the use of
;; a more simple (efficient) regexp than the one used in level 2.
(defconst ps-mode-font-lock-keywords-3
`(,@ps-mode-font-lock-keywords-1
("//\\(?:\\sw\\|\\s_\\)+" . font-lock-type-face)
(,(concat
"^\\(/\\(?:\\sw\\|\\s_\\)+\\)\\_>"
"\\([[ \t]*\\(%.*\\)?\r?$" ; Nothing but `[' or comment after the name.
"\\|[ \t]*\\({\\|<<\\)" ; `{' or `<<' following the name.
"\\|[ \t]+[0-9]+[ \t]+dict\\_>" ; `[0-9]+ dict' following the name.
"\\|.*\\_<def\\_>\\)") ; `def' somewhere on the same line.
. (1 font-lock-function-name-face))
("/\\(?:\\sw\\|\\s_\\)+" . font-lock-variable-name-face)
(,ps-mode-operators . font-lock-keyword-face))
"High level highlighting for PostScript mode.")