;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301\302\303\304\305\306\307&\210\310\311\302\312\313\314\304\301&\210\310\315\316\317\313\320\321\322\304\301& \210\310\323\324\325\313\326\304\301&\210\310\327\330\331\313\320\304\301&\210\310\332\333\334\313\335\304\301&\210\336\337\340\341\304\342\304\301&\210\310\343\344\345\313\346\304\301&\207" [custom-declare-group yaml nil "Support for the YAML serialization format" :group languages :prefix "yaml-" custom-declare-variable yaml-mode-hook "*Hook run by `yaml-mode'." :type hook yaml-indent-offset 2 "*Amount of offset per level of indentation." integer :safe natnump yaml-backspace-function 'backward-delete-char-untabify "*Function called by `yaml-electric-backspace' when deleting backwards.\nIt will receive one argument, the numeric prefix value." function yaml-block-literal-search-lines 100 "*Maximum number of lines to search for start of block literals." yaml-block-literal-electric-alist '((124 . "") (62 . "-")) "*Characters for which to provide electric behavior.\nThe association list key should be a key code and the associated value\nshould be a string containing additional characters to insert when\nthat key is pressed to begin a block literal." alist custom-declare-face yaml-tab-face ((((class color)) (:background "red" :foreground "red" :bold t)) (t (:reverse-video t))) "Face to use for highlighting tabs in YAML files." faces yaml-imenu-generic-expression '((nil "^\\(:?[a-zA-Z_-]+\\):" 1)) "The imenu regex to parse an outline of the yaml file." string] 10) #@25 Version of `yaml-mode'. (defconst yaml-mode-version "0.0.15" (#$ . 1603)) #@60 Regexp matching a line containing only (valid) whitespace. (defconst yaml-blank-line-re "^ *$" (#$ . 1683)) #@54 Regexp matching a line contatining a YAML directive. (defconst yaml-directive-re "^\\(?:--- \\)? *%\\(\\w+\\)" (#$ . 1797)) #@49 Rexexp matching a YAML document delimiter line. (defconst yaml-document-delimiter-re "^\\(?:---\\|[.][.][.]\\)" (#$ . 1927)) #@46 Regexp matching a YAML node anchor or alias. (defconst yaml-node-anchor-alias-re "[&*][a-zA-Z0-9_-]+" (#$ . 2058)) #@29 Rexexp matching a YAML tag. (defconst yaml-tag-re "!!?[^ \n]+" (#$ . 2179)) #@37 Rexexp matching a YAML bare scalar. (defconst yaml-bare-scalar-re "\\(?:[^-:,#!\n{\\[ ]\\|[^#!\n{\\[ ]\\S-\\)[^#\n]*?" (#$ . 2261)) #@41 Regexp matching a single YAML hash key. (defconst yaml-hash-key-re (concat "\\(?:^\\(?:--- \\)?\\|{\\|\\(?:[-,] +\\)+\\) *\\(?:" yaml-tag-re " +\\)?\\(" yaml-bare-scalar-re "\\) *:\\(?: +\\|$\\)") (#$ . 2399)) #@54 Regexp indicating the beginning of a scalar context. (defconst yaml-scalar-context-re (concat "\\(?:^\\(?:--- \\)?\\|{\\|\\(?: *[-,] +\\)+\\) *\\(?:" yaml-bare-scalar-re " *: \\)?") (#$ . 2615)) #@59 Regexp matching a line beginning a YAML nested structure. (defconst yaml-nested-map-re (concat "[^#\n]*: *\\(?:&.*\\|{ *\\|" yaml-tag-re " *\\)?$") (#$ . 2816)) #@57 Regexp matching the substring start of a block literal. (defconst yaml-block-literal-base-re " *[>|][-+0-9]* *\\(?:\n\\|\\'\\)" (#$ . 2983)) #@56 Regexp matching a line beginning a YAML block literal. (defconst yaml-block-literal-re (concat yaml-scalar-context-re "\\(?:" yaml-tag-re "\\)?" yaml-block-literal-base-re) (#$ . 3130)) #@70 Regexp matching a line containing one or more nested YAML sequences. (defconst yaml-nested-sequence-re (concat "^\\(?:\\(?: *- +\\)+\\|\\(:? *-$\\)\\)\\(?:" yaml-bare-scalar-re " *:\\(?: +.*\\)?\\)?$") (#$ . 3322)) #@61 Regexp matching certain scalar constants in scalar context. (defconst yaml-constant-scalars-re "\\(?:^\\|\\(?::\\|-\\|,\\|{\\|\\[\\) +\\) *\\(-\\.\\(?:I\\(?:NF\\|nf\\)\\|inf\\)\\|\\.\\(?:I\\(?:NF\\|nf\\)\\|N\\(?:[Aa]N\\)\\|inf\\|nan\\)\\|F\\(?:ALSE\\|alse\\)\\|N\\(?:ULL\\|ull\\|[Oo]\\)\\|O\\(?:FF\\|ff\\|[Nn]\\)\\|T\\(?:RUE\\|rue\\)\\|Y\\(?:ES\\|es\\)\\|false\\|n\\(?:o\\|ull\\)\\|o\\(?:ff\\|n\\)\\|true\\|yes\\|[NYny~]\\) *$" (#$ . 3543)) #@37 Keymap used in `yaml-mode' buffers. (defvar yaml-mode-map (byte-code "\301 \302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\307#\210\302\311\312#\210)\207" [map make-sparse-keymap define-key "|" yaml-electric-bar-and-angle ">" "-" yaml-electric-dash-and-dot "." "" yaml-electric-backspace] 4) (#$ . 3990)) #@45 Syntax table in use in `yaml-mode' buffers. (defvar yaml-mode-syntax-table (byte-code "\301 \302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\311#\210\302\312\313#\210\302\314\315#\210\302\316\315#\210\302\317\320#\210\302\321\320#\210\302\322\320#\210\302\323\320#\210\302\324\325#\210\302\326\327#\210\302\330\331#\210\302\332\333#\210)\207" [syntax-table make-syntax-table modify-syntax-entry 39 "\"" 34 35 "<" 10 ">" 92 "\\" 45 "_" 95 38 "." 42 40 41 123 "(}" 125 "){" 91 "(]" 93 ")["] 4) (#$ . 4321)) (defvar yaml-mode-hook nil) (byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [yaml-mode-hook variable-documentation put "Hook run after entering YAML mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp yaml-mode-map definition-name yaml-mode] 4) (defvar yaml-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204\303\301\302\304\305!#\210\306\300!\204#\303\300\307\310#\210\311\312\300\313\"\210!\210\300\302N\2041\303\300\302\304\314!#\210\303\310\315\316#\207" [yaml-mode-abbrev-table yaml-mode-map variable-documentation put purecopy "Keymap for `yaml-mode'." boundp definition-name yaml-mode (lambda (def-tmp-var) (defvar yaml-mode-abbrev-table def-tmp-var)) define-abbrev-table nil "Abbrev table for `yaml-mode'." derived-mode-parent text-mode] 5) #@213 Simple mode to edit YAML. \{yaml-mode-map} In addition to any hooks its parent mode `text-mode' might have run, this mode runs the hook `yaml-mode-hook', as the final or penultimate step during initialization. (defalias 'yaml-mode #[nil "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315 !\204'\316 \317 \"\210\320\f\321\"\204;\f =\204;\322\f\321 C#\210\323 !\210\324$!\210\f\306\325!\210\326\306\327!\210\330\306\331!\210\332\306\333!\210\334\306\335!\210\336\306\337!\210\340\341%)\342\343!\207" [delay-mode-hooks major-mode mode-name yaml-mode-map yaml-mode-abbrev-table local-abbrev-table make-local-variable t text-mode yaml-mode "YAML" mode-class put keymap-parent set-keymap-parent current-local-map abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table comment-start "# " comment-start-skip "#+ *" indent-line-function yaml-indent-line indent-tabs-mode nil fill-paragraph-function yaml-fill-paragraph syntax-propertize-function yaml-mode-syntax-propertize-function (yaml-font-lock-keywords) run-mode-hooks yaml-mode-hook yaml-mode-syntax-table font-lock-defaults] 5 (#$ . 5757) nil]) #@51 Additional expressions to highlight in YAML mode. (defvar yaml-font-lock-keywords (byte-code "\306\307B \310B\n\311B \312B\f\313B \314B\315BBBBBBB\207" [yaml-constant-scalars-re yaml-tag-re yaml-node-anchor-alias-re yaml-hash-key-re yaml-document-delimiter-re yaml-directive-re (yaml-font-lock-block-literals 0 font-lock-string-face) (1 font-lock-constant-face) (0 font-lock-type-face) (0 font-lock-function-name-face) (1 font-lock-variable-name-face) (0 font-lock-comment-face) (1 font-lock-builtin-face) (("^[ ]+" 0 'yaml-tab-face t))] 8) (#$ . 6928)) #@66 Override buffer's syntax table for special syntactic constructs. (defalias 'yaml-mode-syntax-propertize-function #[(beg end) "\212b\210\305\306 \307#\203&\212\310u\210n\204\"h\311>\204\"\312``T\313\314$\210)\202)\212b\210 `V\205\303\315\316 \307#\205\303\317`\320\"\203H\312`S`\313\321$\210`\212\322\nS!)\323 8\204\277\324\325\nS\206_`Sf\"\203\207\324\325\n\206l`Sf\"\203\207\312\n\326Z\n\313\321$\210\f\327\n\326Z!\210)\202\277\nS\206\215`Sf\203\254\324\330\nS\206\232`Sfz\"\203\254\312\nS\n\313\321$\210\202\277\nSb\210\3311\273\332 0\210\202\277\210 b\210*\202+)\207" [beg end pt sps syntax-propertize--done search-forward "#" t -1 (32 9) put-text-property syntax-table (3) re-search-forward "['\"]" get-text-property yaml-block-literal (2) syntax-ppss 8 char-equal 39 2 syntax-ppss-flush-cache 119 (scan-error) forward-sexp] 5 (#$ . 7489)]) #@524 Find lines within block literals. Find the next line of the first (if any) block literal after point and prior to BOUND. Returns the beginning and end of the block literal line in the match data, as consumed by `font-lock-keywords' matcher functions. The function begins by searching backwards to determine whether or not the current line is within a block literal. This could be time-consuming in large buffers, so the number of lines searched is artificially limited to the value of `yaml-block-literal-search-lines'. (defalias 'yaml-font-lock-block-literals #[(bound) "l\203`Tb\210m\206`Y?\205\301`\306 T^\307 b\210\310 !\203/o\204/\311y\210\202\f\312 \311y\210\313U\204f \313U\204f\310!\204fo\204fS\310 !\204` \312 ^\311y\210\2028\314\315\310!)\262\203w \316Z\312 W\203\231\310!\203\231 b\210\317\n \320\315$\210\321\n D!\210\315\202\300\nb\210\322\323P\315#\205\300\324 AA\317@A@\320\315$\210\321!\210)\315,\207" [bound end begin yaml-blank-line-re yaml-block-literal-search-lines min-level point-at-eol point-at-bol looking-at -1 current-indentation 0 " *- " t 2 put-text-property yaml-block-literal set-match-data re-search-forward " *\\(.*\\)\n" match-data nlines yaml-block-literal-re inhibit-changing-match-data range] 5 (#$ . 8368)]) #@66 Calculate the maximum sensible indentation for the current line. (defalias 'yaml-compute-indentation #[nil "\212\306 \210\307!\203\310\202H\311y\210\307 !\203#`eV\203#\311y\210\202\312\313 \307\n!\2030 \2021\310\307\f!\203; \202<\310\307 !\203F \202G\310$)\207" [yaml-document-delimiter-re yaml-blank-line-re yaml-nested-map-re yaml-indent-offset yaml-nested-sequence-re yaml-block-literal-re beginning-of-line looking-at 0 -1 + current-indentation] 6 (#$ . 9677)]) #@296 Indent the current line. The first time this command is used, the line will be indented to the maximum sensible indentation. Each immediately subsequent usage will back-dent the line by `yaml-indent-offset' spaces. On reaching column 0, it will cycle back to the maximum sensible indentation. (defalias 'yaml-indent-line #[nil "\306 i\307 \212\310 \210\311 \210 \f\232\203&\n\312U\204&\nS \245 _j\210\202)j\210)i\306 W\2054\313\312!+\207" [need cc ci last-command this-command yaml-indent-offset current-indentation yaml-compute-indentation beginning-of-line delete-horizontal-space 0 forward-to-indentation] 3 (#$ . 10164) "*"]) #@182 Delete characters or back-dent the current line. If invoked following only whitespace on a line, will back-dent to the immediately previous multiple of `yaml-indent-offset' spaces. (defalias 'yaml-electric-backspace #[(arg) "\304 iU\203 n\203 !\207i\305 \210\306 \210\n _Z \245 _j)\207" [yaml-backspace-function arg ci yaml-indent-offset current-indentation beginning-of-line delete-horizontal-space] 3 (#$ . 10811) "*p"]) #@292 Insert the bound key and possibly begin a block literal. Inserts the bound key. If inserting the bound key causes the current line to match the initial line of a block literal, then inserts the matching string from `yaml-block-literal-electric-alist', a newline, and indents appropriately. (defalias 'yaml-electric-bar-and-angle #[(arg) "\305\306!!\210\307 \n\"\211\205)?\205)l\205)\212\310 \210\311\f!)\205) Ac\210\312 )\207" [arg last-command-event yaml-block-literal-electric-alist extra-chars yaml-block-literal-re self-insert-command prefix-numeric-value assoc beginning-of-line looking-at newline-and-indent] 4 (#$ . 11247) "*P"]) #@192 Insert the bound key and possibly de-dent line. Inserts the bound key. If inserting the bound key causes the current line to match a document delimiter, de-dent the line to the left margin. (defalias 'yaml-electric-dash-and-dot #[(arg) "\302\303!!\210\212\304 \210?\205\305 !\205\306 )\207" [arg yaml-document-delimiter-re self-insert-command prefix-numeric-value beginning-of-line looking-at delete-horizontal-space] 3 (#$ . 11899) "*P"]) #@81 Narrow the buffer to block literal if the point is in it, otherwise do nothing. (defalias 'yaml-narrow-to-block-literal #[nil "\212\306 b\210\307\310!)\262\203o\204\311y\210\202\n\312 \313\311y\210 \314U\204\\\f\314U\204\\ \307\310!)\262\204\\o\204\\ S\307\310!)\262\204V\f\312 ^\311y\210\202%\312 \fW\205\230 \307\310!)\262\205\230\312 \313y\210`m\204\225\307\310!)\262\204\217\312 \fV\203\225\313y\210\202x `},\207" [yaml-blank-line-re inhibit-changing-match-data yaml-block-literal-search-lines beg min-level nlines point-at-bol t looking-at -1 current-indentation nil 0 yaml-block-literal-re] 3 (#$ . 12352) nil]) #@198 Fill paragraph. Outside of comments, this behaves as `fill-paragraph' except that filling does not cross boundaries of block literals. Inside comments, this will do usual adaptive fill behaviors. (defalias 'yaml-fill-paragraph #[(&optional justify region) "\214\303 \210\304\305 !\206\306 \n\"*\207" [fill-paragraph-function justify region yaml-narrow-to-block-literal nil fill-comment-paragraph fill-paragraph] 3 (#$ . 13022) "*P"]) (defalias 'yaml-set-imenu-generic-expression #[nil "\303\302!\210\303\300!\210\304 \211\207" [imenu-create-index-function yaml-imenu-generic-expression imenu-generic-expression make-local-variable imenu-default-create-index-function] 2]) (add-hook 'yaml-mode-hook 'yaml-set-imenu-generic-expression) #@33 Display version of `yaml-mode'. (defalias 'yaml-mode-version #[nil "\301\302\"\210\207" [yaml-mode-version message "yaml-mode %s"] 3 (#$ . 13768) nil]) (byte-code "\300\301\302\"\210\303\304!\207" [add-to-list auto-mode-alist ("\\.\\(e?ya?\\|ra\\)ml\\'" . yaml-mode) provide yaml-mode] 3)