| 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 : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(custom-declare-group 'pascal nil "Major mode for editing Pascal source in Emacs." :link '(custom-group-link :tag "Font Lock Faces group" font-lock-faces) :group 'languages)
#@45 Abbrev table in use in Pascal mode buffers.
(defvar pascal-mode-abbrev-table nil (#$ . 258))
(define-abbrev-table 'pascal-mode-abbrev-table nil)
#@29 Keymap used in Pascal mode.
(defvar pascal-mode-map (byte-code "\300 \301\302\303#\210\301\304\303#\210\301\305\306#\210\301\307\310#\210\301\311\312#\210\301\313\314#\210\301\315\316#\210\301\317\320#\210\301\321\322#\210\301\323\324#\210\301\325\326#\210\301\327\330#\210\301\331\332#\210\301\333\334#\210\301\335\336#\210\301\337\340#\210\301\341\342#\210\207" [make-sparse-keymap define-key ";" electric-pascal-semi-or-dot "." ":" electric-pascal-colon "=" electric-pascal-equal "#" electric-pascal-hash "\211" completion-at-point "\277" completion-help-at-point "" backward-delete-char-untabify "\210" pascal-mark-defun "" pascal-insert-block "\252" pascal-star-comment "" pascal-comment-area "" pascal-uncomment-area "\201" pascal-beg-of-defun "\205" pascal-end-of-defun "" pascal-goto-defun "" pascal-outline-mode] 5) (#$ . 409))
#@68 Imenu expression for Pascal mode. See `imenu-generic-expression'.
(defvar pascal-imenu-generic-expression '((nil "^[ ]*\\(function\\|procedure\\)[ \n]+\\([a-zA-Z0-9_.:]+\\)" 2)) (#$ . 1280))
(defvar pascal-keywords '("and" "array" "begin" "case" "const" "div" "do" "downto" "else" "end" "file" "for" "function" "goto" "if" "in" "label" "mod" "nil" "not" "of" "or" "packed" "procedure" "program" "record" "repeat" "set" "then" "to" "type" "until" "var" "while" "with" "get" "put" "input" "output" "read" "readln" "reset" "rewrite" "write" "writeln"))
(defconst pascal-symbol-re "\\<[a-zA-Z_][a-zA-Z_0-9.]*\\>")
(defconst pascal-beg-block-re "\\<\\(begin\\|case\\|record\\|repeat\\)\\>")
(defconst pascal-end-block-re "\\<\\(end\\|until\\)\\>")
(defconst pascal-declaration-re "\\<\\(const\\|label\\|type\\|var\\)\\>")
(defconst pascal-progbeg-re "\\<program\\>")
(defconst pascal-defun-re "\\<\\(function\\|procedure\\|program\\)\\>")
(defconst pascal-sub-block-re "\\<\\(if\\|else\\|for\\|while\\|with\\)\\>")
(defconst pascal-noindent-re "\\<\\(begin\\|end\\|until\\|else\\)\\>")
(defconst pascal-nosemi-re "\\<\\(begin\\|repeat\\|then\\|do\\|else\\)\\>")
(defconst pascal-autoindent-lines-re "\\<\\(label\\|var\\|type\\|const\\|until\\|end\\|begin\\|repeat\\|else\\)\\>")
#@49 String used to mark beginning of excluded text.
(defconst pascal-exclude-str-start "{-----\\/----- EXCLUDED -----\\/-----" (#$ . 2563))
#@43 String used to mark end of excluded text.
(defconst pascal-exclude-str-end " -----/\\----- EXCLUDED -----/\\-----}" (#$ . 2705))
#@45 Syntax table in use in Pascal-mode buffers.
(defvar pascal-mode-syntax-table (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\303#\210\301\323\303#\210\301\324\303#\210\301\325\303#\210\301\326\303#\210\301\327\303#\210\301\330\303#\210\301\331\303#\210\301\332\333#\210\301\334\335#\210\207" [make-syntax-table modify-syntax-entry 92 "." 40 "()1" 41 ")(4" 42 ". 23" 47 ". 12c" 10 "> c" 123 "<" 125 ">" 43 45 61 37 60 62 38 124 95 "_" 39 "\""] 5) (#$ . 2840))
#@53 Additional expressions to highlight in Pascal mode.
(defconst pascal-font-lock-keywords (byte-code "\300\301\302B\303\304\305\306BBBBB\207" [("\\_<\\(function\\|pro\\(cedure\\|gram\\)\\)[ ]+\\([[:alpha:]][[:alnum:]_]*\\)" (1 font-lock-keyword-face) (3 font-lock-function-name-face)) "\\_<\\(array\\|boolean\\|c\\(har\\|onst\\)\\|file\\|integer\\|re\\(al\\|cord\\)\\|type\\|var\\)\\_>" font-lock-type-face ("\\_<\\(label\\|external\\|forward\\)\\_>" . font-lock-constant-face) ("\\_<\\([0-9]+\\)[ ]*:" 1 font-lock-function-name-face) "\\_<\\(and\\|begin\\|case\\|do\\|e\\(lse\\|nd\\)\\|for\\|i[fn]\\|not\\|o[fr]\\|repeat\\|t\\(hen\\|o\\)\\|until\\|w\\(hile\\|ith\\)\\)\\_>" (("\\_<\\(goto\\)\\_>[ ]*\\([0-9]+\\)?" (1 font-lock-keyword-face) (2 font-lock-keyword-face t)))] 6) (#$ . 3437))
(defconst pascal--syntax-propertize #[514 "b\210`W\205\200 \300\301\302#\205\200 \303\224\203\"