?
Current Path : /usr/share/emacs/24.3/lisp/progmodes/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : //usr/share/emacs/24.3/lisp/progmodes/meta-mode.elc |
;ELC ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:09:28 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/progmodes/meta-mode.el ;;; in Emacs version 24.3.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\207" [require easymenu custom-declare-group meta-font nil "Major mode for editing Metafont or MetaPost sources." :link (custom-group-link :tag "Font Lock Faces group" font-lock-faces) :group languages] 8) #@64 Default expressions to highlight in Metafont or MetaPost mode. (defvar meta-font-lock-keywords (byte-code "\300\301\302\303\304\305\306\307\310\311B\312\313\314R\315B\312\313\316\317\320\260\321B\312\313\322R\323B\312\313\324R\325B\326\327B\312\313Q\330B\312\313Q\330B\312\313Q\330B\312\313\316R\331B\332\333B\257\207" ["\\(input\\|generate\\)" "\\(begin\\(char\\|fig\\|graph\\|logochar\\)\\|\\cmchar\\|dcchar\\|ecchar\\)" "\\(end\\(char\\|fig\\|graph\\)\\)" "\\(def\\|let\\|mode_def\\|vardef\\)" "\\(primarydef\\|secondarydef\\|tertiarydef\\)" "\\(expr\\|primary\\|s\\(econdary\\|uffix\\)\\|te\\(rtiary\\|xt\\)\\)" "\\(boolean\\|color\\|n\\(ewinternal\\|umeric\\)\\|p\\(a\\(ir\\|th\\)\\|en\\|icture\\)\\|string\\|transform\\)" "\\(and\\|b\\(egingroup\\|ye\\)\\|d\\(ef\\|ownto\\)\\|e\\(lse\\(\\|if\\)\\|nd\\(\\|def\\|for\\|group\\|input\\)\\|rr\\(help\\|message\\)\\|x\\(it\\(if\\|unless\\)\\|pandafter\\)\\)\\|f\\(alse\\|i\\|or\\(\\|ever\\|suffixes\\)\\)\\|generate\\|i\\(ff?\\|n\\(ner\\|put\\|terim\\)\\)\\|known\\|let\\|m\\(essage\\|ode_def\\)\\|n\\(ot\\|umspecial\\)\\|o\\(r\\|uter\\)\\|re\\(ad\\(from\\|string\\)\\|lax\\)\\|s\\(ave\\|cantokens\\|pecial\\|tep\\)\\|t\\(hru\\|rue\\)\\|u\\(n\\(known\\|til\\)\\|pto\\)\\|vardef\\|w\\(ithin\\|rite\\)\\)" "\\(btex\\|verbatimtex\\)[ \f]+\\(.*\\)[ \f]+\\(etex\\)" ((1 font-lock-keyword-face) (2 font-lock-string-face) (3 font-lock-keyword-face)) "\\<" "\\>" "[ \f]+\\(\\sw+\\|\\s_+\\|\\s.+\\)" ((1 font-lock-keyword-face) (2 font-lock-function-name-face)) "[ \f]+\\(\\sw+\\)" "[ \f]*\\(\\sw+\\|\\s.+\\)" "[ \f]*\\(\\sw+\\)" ((1 font-lock-keyword-face) (2 font-lock-variable-name-face nil t) (3 font-lock-function-name-face nil t) (4 font-lock-variable-name-face nil t)) "\\([ \f]+\\(\\sw+\\)\\)*" ((1 font-lock-type-face) (font-lock-match-meta-declaration-item-and-skip-to-next (goto-char (match-end 1)) nil (1 font-lock-variable-name-face nil t))) "\\([ \f]+\\(\\sw+\\|\\s_+\\)\\)*" ((1 font-lock-type-face) (font-lock-match-meta-declaration-item-and-skip-to-next (goto-char (match-end 1)) nil (1 font-lock-variable-name-face nil t))) "\\(expr\\)[ \f]+\\(\\sw+\\)[ \f]+\\(of\\)[ \f]+\\(\\sw+\\)" ((1 font-lock-type-face) (2 font-lock-variable-name-face) (3 font-lock-keyword-face nil t) (4 font-lock-variable-name-face nil t)) font-lock-keyword-face ((1 font-lock-keyword-face) (2 font-lock-constant-face)) "|\\([^|]+\\)|" (1 font-lock-constant-face t)] 21) (#$ . 827)) (defalias 'font-lock-match-meta-declaration-item-and-skip-to-next #[257 "\300\301!\2054 \302 \303\304\305\306\307\310!\311\"\312\313%DC\216\314\303\304\305\315\307\310!\316\"\312\313%D\317\303\320\314EDC\217)\262\207" [looking-at "[ \f]*\\(\\sw+\\|\\s_+\\)" match-data funcall make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 "\n\n(fn)" #1=#:err "\214e\300}\210\301\225b\210\302\303!\204 \304`\301\"\206 db\210\202 \305\225b)\207" [1 looking-at "[ \f]*\\(\\(,\\)\\|;\\|=\\|$\\)" scan-sexps 2] error #[257 "\300\207" [t] 2 "\n\n(fn IGNORED)"]] 10 "\n\n(fn LIMIT)"]) #@53 List of primitives common to Metafont and MetaPost. (defconst meta-common-primitives-list '("ASCII" "addto" "also" "and" "angle" "atleast" "batchmode" "begingroup" "boolean" "boundarychar" "char" "charcode" "chardp" "charexists" "charext" "charht" "charic" "charlist" "charwd" "contour" "controls" "cosd" "curl" "cycle" "day" "decimal" "def" "delimiters" "designsize" "directiontime" "doublepath" "dump" "else" "elseif" "end" "enddef" "endfor" "endgroup" "endinput" "errhelp" "errmessage" "errorstopmode" "everyjob" "exitif" "expandafter" "expr" "extensible" "false" "fi" "floor" "fontdimen" "fontmaking" "for" "forever" "forsuffixes" "headerbyte" "hex" "if" "inner" "input" "interim" "intersectiontimes" "jobname" "kern" "known" "length" "let" "ligtable" "makepath" "makepen" "message" "mexp" "mlog" "month" "newinternal" "nonstopmode" "normaldeviate" "not" "nullpen" "nullpicture" "numeric" "oct" "odd" "of" "or" "outer" "pair" "path" "pausing" "pen" "pencircle" "penoffset" "picture" "point" "postcontrol" "precontrol" "primary" "primarydef" "quote" "randomseed" "readstring" "reverse" "rotated" "save" "scaled" "scantokens" "scrollmode" "secondary" "secondarydef" "shifted" "shipout" "show" "showdependencies" "showstats" "showstopping" "showtoken" "showvariable" "sind" "skipto" "slanted" "special" "sqrt" "step" "str" "string" "subpath" "substring" "suffix" "tension" "tertiary" "tertiarydef" "text" "time" "to" "tracingcapsules" "tracingchoices" "tracingcommands" "tracingequations" "tracingmacros" "tracingonline" "tracingoutput" "tracingrestores" "tracingspecs" "tracingstats" "tracingtitles" "transform" "transformed" "true" "turningnumber" "uniformdeviate" "unknown" "until" "vardef" "warningcheck" "withpen" "xpart" "xscaled" "xxpart" "xypart" "year" "ypart" "yscaled" "yxpart" "yypart" "zscaled") (#$ . 3888)) #@46 List of primitives only defined in Metafont. (defconst metafont-primitives-list '("at" "autorounding" "chardx" "chardy" "cull" "display" "dropping" "fillin" "from" "granularity" "hppp" "inwindow" "keeping" "numspecial" "openwindow" "proofing" "smoothing" "totalweight" "tracingedges" "tracingpens" "turningcheck" "vppp" "withweight" "xoffset" "yoffset") (#$ . 5717)) #@46 List of primitives only defined in MetaPost. (defconst metapost-primitives-list '("arclength" "arctime" "bluepart" "bounded" "btex" "clip" "clipped" "color" "dashed" "dashpart" "etex" "filled" "fontpart" "fontsize" "greenpart" "infont" "linecap" "linejoin" "llcorner" "lrcorner" "miterlimit" "mpxbreak" "pathpart" "penpart" "prologues" "readfrom" "redpart" "setbounds" "stroked" "textpart" "textual" "tracinglostchars" "truecorners" "ulcorner" "urcorner" "verbatimtex" "withcolor" "within" "write") (#$ . 6090)) #@55 List of macros common to plain Metafont and MetaPost. (defconst meta-common-plain-macros-list '("abs" "bot" "bye" "byte" "ceiling" "clear_pen_memory" "clearit" "clearpen" "clearxy" "counterclockwise" "cutdraw" "decr" "dir" "direction" "directionpoint" "div" "dotprod" "downto" "draw" "drawdot" "erase" "exitunless" "fill" "filldraw" "flex" "gobble" "hide" "incr" "interact" "interpath" "intersectionpoint" "inverse" "label" "labels" "lft" "loggingall" "magstep" "makelabel" "max" "min" "mod" "numtok" "penlabels" "penpos" "penstroke" "pickup" "range" "reflectedabout" "relax" "rotatedabout" "rotatedaround" "round" "rt" "savepen" "shipit" "softjoin" "solve" "stop" "superellipse" "takepower" "tensepath" "thru" "top" "tracingall" "tracingnone" "undraw" "undrawdot" "unfill" "unfilldraw" "unitvector" "upto" "whatever") (#$ . 6608)) #@48 List of macros only defined in plain Metafont. (defconst metafont-plain-macros-list '("beginchar" "change_width" "culldraw" "cullit" "cutoff" "define_blacker_pixels" "define_corrected_pixels" "define_good_x_pixels" "define_good_y_pixels" "define_horizontal_corrected_pixels" "define_pixels" "define_whole_blacker_pixels" "define_whole_pixels" "define_whole_vertical_blacker_pixels" "define_whole_vertical_pixels" "endchar" "fix_units" "font_coding_scheme" "font_extra_space" "font_identifier" "font_normal_shrink" "font_normal_space" "font_normal_stretch" "font_quad" "font_size" "font_slant" "font_x_height" "gfcorners" "good.bot" "good.lft" "good.rt" "good.top" "good.x" "good.y" "grayfont" "hround" "imagerules" "italcorr" "labelfont" "lowres_fix" "makebox" "makegrid" "maketicks" "mode_lowres" "mode_proof" "mode_setup" "mode_smoke" "nodisplays" "notransforms" "openit" "penrazor" "pensquare" "proofoffset" "proofrule" "proofrulethickness" "screenchars" "screenrule" "screenstrokes" "showit" "slantfont" "smode" "titlefont" "vround") (#$ . 7446)) #@48 List of macros only defined in plain MetaPost. (defconst metapost-plain-macros-list '("arrowhead" "bbox" "beginfig" "buildcycle" "center" "cutafter" "cutbefore" "dashpattern" "dotlabel" "dotlabels" "drawarrow" "drawdblarrow" "drawoptions" "endfig" "image" "label" "off" "on" "thelabel") (#$ . 8503)) #@58 List of macros only defined in MetaPost "graph" package. (defconst metapost-graph-macros-list '("augment" "auto.x" "auto.y" "autogrid" "begingraph" "endgraph" "format" "frame" "gdata" "gdotlabel" "gdraw" "gdrawarrow" "gdrawdblarrow" "gfill" "glabel" "grid" "itick" "otick" "plot" "setcoords" "setrange") (#$ . 8809)) #@58 List of macros only defined in MetaPost "boxes" package. (defconst metapost-boxes-macros-list '("boxit" "boxjoin" "bpath" "circleit" "drawboxed" "drawboxes" "drawunboxed" "fixpos" "fixsize" "pic" "rboxit") (#$ . 9132)) #@53 List of known symbols to complete in Metafont mode. (defvar metafont-symbol-list (append meta-common-primitives-list metafont-primitives-list meta-common-plain-macros-list metafont-plain-macros-list) (#$ . 9357)) #@53 List of known symbols to complete in MetaPost mode. (defvar metapost-symbol-list (append meta-common-primitives-list metapost-primitives-list meta-common-plain-macros-list metapost-plain-macros-list metapost-graph-macros-list metapost-boxes-macros-list) (#$ . 9576)) #@65 List of known symbols to complete in Metafont or MetaPost mode. (defvar meta-symbol-list nil (#$ . 9849)) #@66 Flag indicating whether `meta-symbol-list' has been initialized. (defvar meta-symbol-changed nil (#$ . 9961)) #@442 List of ways to perform completion in Metafont or MetaPost mode. Each entry is a list with the following elements: 1. Regexp matching the preceding text. 2. A number indicating the subgroup in the regexp containing the text. 3. A function returning an alist of possible completions. 4. Text to append after a successful completion (if any). Or alternatively: 1. Regexp matching the preceding text. 2. Function to do the actual completion. (defvar meta-complete-list nil (#$ . 10078)) #@88 Add entries to list of known symbols in Metafont or MetaPost mode. (fn &rest ENTRIES) (defalias 'meta-add-symbols #[128 "\203\n \211 B\211\207\302\211 B\211\207" [meta-symbol-changed meta-symbol-list t] 3 (#$ . 10570)]) #@143 Return value of list of known symbols in Metafont or MetaPost mode. If the list was changed, sort the list and remove duplicates first. (fn) (defalias 'meta-symbol-list #[0 "\203P \302\303\304!\210\305\306\307\310\311 \"\"\312\"\211\211\203K \211A\203K \211@A@@@\230\2043 A\262\202F \211GGV\203@ A\241\210\211AA\241\210\266\202 \210\303\313!\210 \207" [meta-symbol-changed meta-symbol-list nil message "Preparing completion list..." sort mapcar meta-listify apply append meta-car-string-lessp "Preparing completion list... done"] 7 (#$ . 10802)]) (defalias 'meta-listify #[257 "\211<\203 \207\211C\207" [] 2 "\n\n(fn A)"]) (defalias 'meta-car-string-lessp #[514 "@@\231\207" [] 4 "\n\n(fn A B)"]) (defalias 'meta-completions-at-point #[0 "\301\203 @\262A\262\302@e`\303Z]\"\203 \301\262\202 \211A@\247\203V \211A@\3048\224\225\3058 \306\307G!?\205O \310\311\312\313\314\f!\315\"\316\317%\257\266\205\202Y \211A@\207" [meta-complete-list nil looking-back 200 3 2 :exit-function zerop make-byte-code 514 "\211\301>\205 \302\303\300!!\203 \304\225b\207\300c\207" vconcat vector [(sole finished) looking-at regexp-quote 0] 5 "\n\n(fn S FINISHED)"] 17 "\n\n(fn)"]) (byte-code "\300\301\302\303#\210\304\301\302\305#\210\306\307\310\311\312DD\313\314\315\316\317&\210\306\320\310\311\321DD\322\314\323\316\317&\210\306\324\310\311\325DD\326\314\327\316\317&\210\306\330\310\311\331DD\332\314\323\316\317&\210\306\333\310\311\334DD\335\314\323\316\317&\210\306\336\310\311\337DD\340\314\323\316\317&\210\306\341\310\311\342DD\343\314\323\316\317&\207" [defalias meta-complete-symbol completion-at-point nil make-obsolete "24.1" custom-declare-variable meta-indent-level funcall function #[0 "\300\207" [2] 1 "\n\n(fn)"] "Indentation of begin-end blocks in Metafont or MetaPost mode." :type integer :group meta-font meta-left-comment-regexp #[0 "\300\207" ["%%+"] 1 "%%+\n\n(fn)"] "Regexp matching comments that should be placed on the left margin." regexp meta-right-comment-regexp #[0 "\300\207" [nil] 1 "\n\n(fn)"] "Regexp matching comments that should be placed on the right margin." (choice regexp (const :tag "None" nil)) meta-ignore-comment-regexp #[0 "\300\207" ["%[^%]"] 1 "%[^%]\n\n(fn)"] "Regexp matching comments whose indentation should not be touched." meta-begin-environment-regexp #[0 "\300\207" ["\\(begin\\(char\\|fig\\|gr\\(aph\\|oup\\)\\|logochar\\)\\|def\\|for\\(\\|ever\\|suffixes\\)\\|if\\|mode_def\\|primarydef\\|secondarydef\\|tertiarydef\\|vardef\\)"] 1 "\n\n(fn)"] "Regexp matching the beginning of environments to be indented." meta-end-environment-regexp #[0 "\300\207" ["\\(end\\(char\\|def\\|f\\(ig\\|or\\)\\|gr\\(aph\\|oup\\)\\)\\|fi\\)"] 1 "\n\n(fn)"] "Regexp matching the end of environments to be indented." meta-within-environment-regexp #[0 "\300\207" ["\\(else\\(\\|if\\)\\)"] 1 "\n\n(fn)"] "Regexp matching keywords within environments not to be indented."] 8) #@74 Return the indentation for a comment in Metafont or MetaPost mode. (fn) (defalias 'meta-comment-indent #[0 "\203\f \302!\203\f i\207\303\304x\210n\203 \305\202 iT ]\207" [meta-left-comment-regexp comment-column looking-at " \f " nil 0] 2 (#$ . 13749)]) #@72 Indent the line containing point as Metafont or MetaPost source. (fn) (defalias 'meta-indent-line #[0 "\300 \301 U\204 \212\302 \303 \210`|\210\211j\210)iW\205 \303 \207" [meta-indent-calculate current-indentation line-beginning-position back-to-indentation] 3 (#$ . 14013) nil]) #@78 Return the indentation of current line of Metafont or MetaPost source. (fn) (defalias 'meta-indent-calculate #[0 "\212\306 \210\203 \307!\203 \310\202] \203 \307 !\203 \n\202] \203/ \307!\203/ \311 \202] \312 e=\203: \310\202] \313\314\f\315Q!\203J \316 Z\202] \313\314\315Q!\203[ \316 Z\202] \316 )\207" [meta-left-comment-regexp meta-right-comment-regexp comment-column meta-ignore-comment-regexp meta-end-environment-regexp meta-indent-level back-to-indentation looking-at 0 current-indentation point-at-bol meta-indent-looking-at-code "\\<" "\\>" meta-indent-current-indentation meta-within-environment-regexp] 4 (#$ . 14304)]) #@41 Tell if the point is in a string. (fn) (defalias 'meta-indent-in-string-p #[0 "\301\302 8\206 \303`\304\"=\207" [font-lock-string-face 3 syntax-ppss get-text-property face] 3 (#$ . 14956)]) #@81 Same as `looking-at' but checks that the point is not in a string. (fn REGEXP) (defalias 'meta-indent-looking-at-code #[257 "\300 ?\205 \301!\207" [meta-indent-in-string-p looking-at] 3 (#$ . 15155)]) #@59 Go to the previous line of code, skipping comments. (fn) (defalias 'meta-indent-previous-line #[0 "\301\302x\210\303\304 !\210\305!\205$ o?\205$ \301\302x\210o\204 \303\304 !\210\202 \207" [comment-start "\n \f " nil move-to-column current-indentation looking-at] 2 (#$ . 15365)]) #@76 Tell if the current line of code ends with an unfinished expression. (fn) (defalias 'meta-indent-unfinished-line #[0 "\212\304\210`\305\306 \307#\203 \310 \204 `\262\202 \211b\266\305\311\306 \307#\203G \310 \2034 \305\311\306 \307#\204&