;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (custom-declare-group 'jgraph-mode nil "Major mode for Jgraph files." :group 'tools) #@27 Keymap for `jgraph-mode'. (defvar jgraph-mode-map (make-sparse-keymap) (#$ . 172)) #@33 Syntax table for `jgraph-mode'. (defvar jgraph-mode-syntax-table (byte-code "\300 \301\302\303\"\"\210\304\305\306#\210\304\307\310#\210\304\311\312#\210\207" [make-syntax-table map-char-table make-closure #[514 "\211@\301>?\205 \302\303\300#\207" [V0 (0 2 3) modify-syntax-entry "_"] 6 "\n\n(fn C V)"] modify-syntax-entry 40 "_ 1n" 41 "_ 4n" 42 "_ 23"] 5) (#$ . 261)) (defalias 'jgraph-extract-commands #[0 "\300\211eb\210\301\302\300\303#\203\267\301\304\300\303#\203\267\305\306!\227\300\212\301\302\300\303#\205%\307\224)\310\311\312#\262\310\313\312#\262\310\314\312#\262\310\315\312#\262\310\316\312#\262\310\317\312#\262\310\320\312#\262\310\321\322#\262\323!\262\301\324\325#\203\225\326\306!\327\225\203\202\211\235\203}\202\200\211B\262\211\235\203\214\202\217\211B\262\210\202c\237\262\330\"\211\203\252\211\244\266\202BB\262\266\202\331BB\237\207" [nil re-search-forward "^\\.RE" t "^\\.B \\(.*\\)" match-string 1 0 replace-regexp-in-string "simple" "" "advanced" "editing" "commands" "\\\\" "\\` *" " *\\'" " " "-" intern "^\\.TP\n\\(?:\\.B \\|\\\\fB\\)\\([^ : \n\\]+\\)\\([ {\\fI]*token\\)?" move match-string-no-properties 2 assoc token] 9]) (defconst jgraph-commands '((top-level-description "newgraph" "graph" "copygraph" "newpage" "X" "Y" "bbox" "preamble" "epilogue") (graph "xaxis" "yaxis" "newcurve" "curve" "newline" "copycurve" "title" "legend" "newstring" "string" "copystring" "border" "noborder" "clip" "noclip" "inherit_axes" "x_translate" "y_translate" "X" "Y") (axis "linear" "log" "min" "max" "size" "log_base" "hash" "shash" "mhash" "precision" "hash_format" "label" "draw_at" "nodraw" "draw" "grid_lines" "no_grid_lines" "mgrid_lines" "no_mgrid_lines" "gray" "color" "grid_gray" "grid_color" "mgrid_gray" "mgrid_color" "hash_at" "mhash_at" "hash_label" "hash_labels" "hash_scale" "draw_hash_marks_at" "draw_hash_labels_at" "auto_hash_marks" "no_auto_hash_marks" "auto_hash_labels" "no_auto_hash_labels" "draw_axis" "no_draw_axis" "draw_axis_label" "no_draw_axis_label" "draw_hash_marks" "no_draw_hash_marks" "draw_hash_labels" "no_draw_hash_labels") (curve "pts" "x_epts" "y_epts" "marktype" "marksize" "mrotate" "gray" "color" "fill" "cfill" "pattern" "poly" "nopoly" "pfill" "pcfill" "ppattern" "gmarks" "postscript" "eps" "larrows" "rarrows" "nolarrows" "norarrows" "larrow" "rarrow" "nolarrow" "norarrow" "asize" "afill" "apattern" "linetype" "glines" "linethickness" "bezier" "nobezier" "clip" "noclip" "label") (label "x" "y" "font" "fontsize" "linesep" "hjl" "hjc" "hjr" "vjt" "vjc" "vjb" "rotate" "lgray" "lcolor") (legend "on" "off" "linelength" "linebreak" "midspace" "defaults" "left" "top" "bottom" "x" "y" "custom") (hash-label "at") (token "apattern" "eps" "postscript" "ppattern" "pattern" "hash_format" "epilogue" "preamble"))) (defconst jgraph-file-include-commands '("include" "preamble" "epilogue" "postscript" "eps")) #@55 Keyword highlighting specification for `jgraph-mode'. (defvar jgraph-font-lock-keywords (byte-code "\302\303!\304Q\305B\306\303\307 \236A!\310Q\311B\302\303\312\313\314\315\316 \"\"B!\310Q\317BE\207" [jgraph-file-include-commands jgraph-commands "\\_<" regexp-opt "[ ]+\\(\\sw+\\)" ((1 font-lock-constant-face)) "^" top-level-description "\\_>" font-lock-function-name-face "include" apply append mapcar cdr font-lock-keyword-face] 10) (#$ . 3201)) (add-to-list 'auto-mode-alist '("\\.jgr\\'" . jgraph-mode)) #@14 (fn LIMIT) (defalias 'jgraph--syntax-end-of-string #[257 "\300\301 8\302=\205\303\304\302#\205\305\306\224\306\225\307\310$\207" [3 syntax-ppss t re-search-forward "\\(?:\\=\\|[^\\]\\)\\(\n\\)" put-text-property 1 syntax-table (15)] 6 (#$ . 3718)]) #@18 (fn START END) (defalias 'jgraph--syntax-propertize #[514 "b\210\300!\210b\210`W\205/\301\302\303#\205/\304\224\203\f\305\304\224\304\225\306\307$\210\300!\210\202\f\207" [jgraph--syntax-end-of-string re-search-forward "\\s-:\\(\\s-\\)" t 1 put-text-property syntax-table (15)] 9 (#$ . 3980)]) (defvar jgraph-mode-hook nil) (byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [jgraph-mode-hook variable-documentation put "Hook run after entering Jgraph mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp jgraph-mode-map definition-name jgraph-mode] 4) (defvar jgraph-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" [jgraph-mode-abbrev-table jgraph-mode-map variable-documentation put purecopy "Keymap for `jgraph-mode'." boundp jgraph-mode-syntax-table definition-name jgraph-mode (lambda (#1=#:def-tmp-var) (defvar jgraph-mode-syntax-table #1#)) make-syntax-table "Syntax table for `jgraph-mode'." (lambda (#1#) (defvar jgraph-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `jgraph-mode'." derived-mode-parent prog-mode] 5) #@230 A major mode for editing Jgraph files. In addition to any hooks its parent mode `prog-mode' might have run, this mode runs the hook `jgraph-mode-hook', as the final or penultimate step during initialization. \{jgraph-mode-map} (defalias 'jgraph-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\306\335!\210\336\306\333!\210\337\306\340!\210\341 \306\342!\210\343\"\306\344!\210\345$)\346\347!\207" [delay-mode-hooks major-mode mode-name jgraph-mode-map jgraph-mode-syntax-table jgraph-mode-abbrev-table make-local-variable t prog-mode jgraph-mode "Jgraph" 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 comment-start "(* " comment-start-skip "\\_<(\\*\\_>[ ]*" comment-end " *)" "[ ]*\\_<\\*)\\_>" font-lock-defaults (jgraph-font-lock-keywords) syntax-propertize-function jgraph--syntax-propertize indent-line-function jgraph-indent-line run-mode-hooks jgraph-mode-hook local-abbrev-table] 5 (#$ . 5433) nil]) (byte-code "\300\301\302\303\304DD\305\306\307%\207" [custom-declare-variable jgraph-indent-offset funcall function #[0 "\300\207" [4] 1] "Basic indentation step size in `jgraph-mode'." :type integer] 6) #@37 Indent current line of Jgraph code. (defalias 'jgraph-indent-line #[0 "`\3001\212\301y\210\302\303w\210`Y\203\303\262\304 )0\202%\305\306\"\210\303\262\206)\307\211\247\204/\207\211\301]\262\203>\212\310!)\207\310!\207" [(debug error) 0 " " nil jgraph-indent-calculate message "Error: %S" noindent indent-line-to] 5 (#$ . 6959) nil]) #@65 Return the column to which the current line should be indented. (defalias 'jgraph-indent-calculate #[0 "\212\301\302w\210\303\304\305\236A!\306P!\203\307\202\310)\207" [jgraph-commands " " nil looking-at regexp-opt top-level-description "\\_>" 0 noindent] 4 (#$ . 7316)]) (provide 'jgraph-mode)