UNPKG

@wooorm/starry-night

Version:
670 lines (669 loc) 835 kB
// This is a TextMate grammar distributed by `starry-night`. // This grammar is developed at // <https://github.com/Alhadis/language-emacs-lisp> // and licensed `isc`. // See <https://github.com/wooorm/starry-night> for more info. /** * @import {Grammar} from '@wooorm/starry-night' */ /** @type {Grammar} */ const grammar = { extensions: ['.el', '.emacs', '.emacs.desktop'], names: ['emacs-lisp', 'elisp', 'emacs'], patterns: [ { begin: '\\A(#!)', beginCaptures: { 1: {name: 'punctuation.definition.comment.hashbang.emacs.lisp'} }, end: '$', name: 'comment.line.hashbang.emacs.lisp' }, {include: '#main'} ], repository: { 'archive-sources': { captures: { 1: {name: 'support.language.constant.archive-source.emacs.lisp'} }, match: '(?x)\\b(?<=[\\s()\\[]|^)\n(SC|gnu|marmalade|melpa-stable|melpa|org)\n(?=[\\s()]|$) \\b ' }, 'arg-values': { patterns: [ { match: '&(optional|rest)(?=\\s|\\))', name: 'constant.language.$1.arguments.emacs.lisp' } ] }, autoload: { begin: '^(;;;###)(autoload)', beginCaptures: { 1: {name: 'punctuation.definition.comment.emacs.lisp'}, 2: {name: 'storage.modifier.autoload.emacs.lisp'} }, contentName: 'string.unquoted.other.emacs.lisp', end: '$', name: 'comment.line.semicolon.autoload.emacs.lisp' }, binding: { match: '\\b(?<=[\\s()\\[]|^)(let\\*?|set[fq]?)(?=[\\s()]|$)', name: 'storage.binding.emacs.lisp' }, boolean: { patterns: [ { match: '\\b(?<=[\\s()\\[]|^)t(?=[\\s()]|$)\\b', name: 'constant.boolean.true.emacs.lisp' }, { match: '\\b(?<=[\\s()\\[]|^)(nil)(?=[\\s()]|$)\\b', name: 'constant.language.nil.emacs.lisp' } ] }, cask: { match: '\\b(?<=[\\s()\\[]|^)(?:files|source|development|depends-on|package-file|package-descriptor|package)(?=[\\s()]|$)\\b', name: 'support.function.emacs.lisp' }, comment: { begin: ';', beginCaptures: {0: {name: 'punctuation.definition.comment.emacs.lisp'}}, end: '$', name: 'comment.line.semicolon.emacs.lisp', patterns: [{include: '#modeline'}, {include: '#eldoc'}] }, definition: { patterns: [ { begin: '(\\()(?:(cl-(defun|defmacro|defsubst))|(defun|defmacro|defsubst))(?!-)\\b(?:\\s*(?![-+\\d])([-+=*/\\w~!@$%^&:<>{}?]+))?', beginCaptures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'storage.type.$3.function.cl-lib.emacs.lisp'}, 4: {name: 'storage.type.$4.function.emacs.lisp'}, 5: {name: 'entity.function.name.emacs.lisp'} }, end: '\\)', endCaptures: { 0: {name: 'punctuation.section.expression.end.emacs.lisp'} }, name: 'meta.function.definition.emacs.lisp', patterns: [{include: '#defun-innards'}] }, { match: '\\b(?<=[\\s()\\[]|^)defun(?=[\\s()]|$)', name: 'storage.type.function.emacs.lisp' }, { begin: '(?x) (?<=\\s|^) (\\()\n(def(advice|class|const|custom|face|image|group|package|struct|subst|theme|type|var))\n(?:\\s+([-+=*/\\w~!@$%^&:<>{}?]+))?\n(?=[\\s()]|$)', beginCaptures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'storage.type.$3.emacs.lisp'}, 4: {name: 'entity.name.$3.emacs.lisp'} }, end: '\\)', endCaptures: { 0: {name: 'punctuation.section.expression.end.emacs.lisp'} }, name: 'meta.$3.definition.emacs.lisp', patterns: [{include: '$self'}] }, { match: '\\b(?<=[\\s()\\[]|^)(define-(?:condition|widget))(?=[\\s()]|$)\\b', name: 'storage.type.$1.emacs.lisp' } ] }, 'defun-innards': { patterns: [ { begin: '\\G\\s*(\\()', beginCaptures: { 0: {name: 'punctuation.section.expression.begin.emacs.lisp'} }, end: '\\)', endCaptures: { 0: {name: 'punctuation.section.expression.end.emacs.lisp'} }, name: 'meta.argument-list.expression.emacs.lisp', patterns: [ {include: '#arg-keywords'}, { match: "(?![-+\\d:&'#])([-+=*/\\w~!@$%^&:<>{}?]+)", name: 'variable.parameter.emacs.lisp' }, {include: '$self'} ] }, {include: '$self'} ] }, docesc: { patterns: [ { match: '\\x5C{2}=', name: 'constant.escape.character.key-sequence.emacs.lisp' }, { match: '\\x5C{2}+', name: 'constant.escape.character.suppress-link.emacs.lisp' } ] }, dockey: { captures: { 1: {name: 'punctuation.definition.reference.begin.emacs.lisp'}, 2: {name: 'constant.other.reference.link.emacs.lisp'}, 3: {name: 'punctuation.definition.reference.end.emacs.lisp'} }, match: '(\\x5C{2}\\[)((?:[^\\s\\\\]|\\\\.)+)(\\])', name: 'variable.other.reference.key-sequence.emacs.lisp' }, docmap: { patterns: [ { captures: { 1: {name: 'punctuation.definition.reference.begin.emacs.lisp'}, 2: {name: 'entity.name.tag.keymap.emacs.lisp'}, 3: {name: 'punctuation.definition.reference.end.emacs.lisp'} }, match: '(\\x5C{2}{)((?:[^\\s\\\\]|\\\\.)+)(})', name: 'meta.keymap.summary.emacs.lisp' }, { captures: { 1: {name: 'punctuation.definition.reference.begin.emacs.lisp'}, 2: {name: 'entity.name.tag.keymap.emacs.lisp'}, 3: {name: 'punctuation.definition.reference.end.emacs.lisp'} }, match: '(\\x5C{2}<)((?:[^\\s\\\\]|\\\\.)+)(>)', name: 'meta.keymap.specifier.emacs.lisp' } ] }, docvar: { captures: { 1: {name: 'punctuation.definition.quote.begin.emacs.lisp'}, 2: {name: 'punctuation.definition.quote.end.emacs.lisp'} }, match: "(`)[^\\s()]+(')", name: 'variable.other.literal.emacs.lisp' }, eldoc: { patterns: [ {include: '#docesc'}, {include: '#docvar'}, {include: '#dockey'}, {include: '#docmap'} ] }, escapes: { patterns: [ { captures: { 1: {name: 'punctuation.definition.codepoint.emacs.lisp'}, 2: {name: 'punctuation.definition.codepoint.emacs.lisp'} }, match: '(\\?)\\\\u[A-Fa-f0-9]{4}|(\\?)\\\\U00[A-Fa-f0-9]{6}', name: 'constant.character.escape.hex.emacs.lisp' }, { captures: {1: {name: 'punctuation.definition.codepoint.emacs.lisp'}}, match: '(\\?)\\\\x[A-Fa-f0-9]+', name: 'constant.character.escape.hex.emacs.lisp' }, { captures: {1: {name: 'punctuation.definition.codepoint.emacs.lisp'}}, match: '(\\?)\\\\[0-7]{1,3}', name: 'constant.character.escape.octal.emacs.lisp' }, { captures: { 1: {name: 'punctuation.definition.codepoint.emacs.lisp'}, 2: {name: 'punctuation.definition.backslash.emacs.lisp'} }, match: '(\\?)(?:[^\\\\]|(\\\\).)', name: 'constant.numeric.codepoint.emacs.lisp' }, { captures: {1: {name: 'punctuation.definition.backslash.emacs.lisp'}}, match: '(\\\\).', name: 'constant.character.escape.emacs.lisp' } ] }, expression: { patterns: [ { begin: '\\(', beginCaptures: { 0: {name: 'punctuation.section.expression.begin.emacs.lisp'} }, end: '\\)', endCaptures: { 0: {name: 'punctuation.section.expression.end.emacs.lisp'} }, name: 'meta.expression.emacs.lisp', patterns: [{include: '$self'}] }, { begin: "(\\')(\\()", beginCaptures: { 1: {name: 'punctuation.definition.symbol.emacs.lisp'}, 2: {name: 'punctuation.section.quoted.expression.begin.emacs.lisp'} }, end: '\\)', endCaptures: { 0: {name: 'punctuation.section.quoted.expression.end.emacs.lisp'} }, name: 'meta.quoted.expression.emacs.lisp', patterns: [{include: '$self'}] }, { begin: '(\\`)(\\()', beginCaptures: { 1: {name: 'punctuation.definition.symbol.emacs.lisp'}, 2: { name: 'punctuation.section.backquoted.expression.begin.emacs.lisp' } }, end: '\\)', endCaptures: { 0: { name: 'punctuation.section.backquoted.expression.end.emacs.lisp' } }, name: 'meta.backquoted.expression.emacs.lisp', patterns: [{include: '$self'}] }, { begin: '(,@)(\\()', beginCaptures: { 1: {name: 'punctuation.definition.symbol.emacs.lisp'}, 2: { name: 'punctuation.section.interpolated.expression.begin.emacs.lisp' } }, end: '\\)', endCaptures: { 0: { name: 'punctuation.section.interpolated.expression.end.emacs.lisp' } }, name: 'meta.interpolated.expression.emacs.lisp', patterns: [{include: '$self'}] } ] }, 'face-innards': { patterns: [ { captures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'variable.language.display.type.emacs.lisp'}, 3: {name: 'support.constant.display.type.emacs.lisp'}, 4: {name: 'punctuation.section.expression.end.emacs.lisp'} }, match: '(\\()(type)\\s+(graphic|x|pc|w32|tty)(\\))', name: 'meta.expression.display-type.emacs.lisp' }, { captures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'variable.language.display.class.emacs.lisp'}, 3: {name: 'support.constant.display.class.emacs.lisp'}, 4: {name: 'punctuation.section.expression.end.emacs.lisp'} }, match: '(\\()(class)\\s+(color|grayscale|mono)(\\))', name: 'meta.expression.display-class.emacs.lisp' }, { captures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'variable.language.background-type.emacs.lisp'}, 3: {name: 'support.constant.background-type.emacs.lisp'}, 4: {name: 'punctuation.section.expression.end.emacs.lisp'} }, match: '(\\()(background)\\s+(light|dark)(\\))', name: 'meta.expression.background-type.emacs.lisp' }, { begin: '(\\()(min-colors|supports)(?=[\\s()]|$)', beginCaptures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'variable.language.display-prerequisite.emacs.lisp'} }, end: '\\)', endCaptures: { 0: {name: 'punctuation.section.expression.end.emacs.lisp'} }, name: 'meta.expression.display-prerequisite.emacs.lisp', patterns: [{include: '$self'}] } ] }, faces: { match: '(?x) \\b (?<=[\\s()\\[]|^)\n\t(?:Buffer-menu-buffer|Info-quoted|Info-title-1-face|Info-title-2-face|Info-title-3-face|Info-title-4-face|Man-overstrike|Man-reverse\n\t|Man-underline|antlr-default|antlr-font-lock-default-face|antlr-font-lock-keyword-face|antlr-font-lock-literal-face\n\t|antlr-font-lock-ruledef-face|antlr-font-lock-ruleref-face|antlr-font-lock-syntax-face|antlr-font-lock-tokendef-face\n\t|antlr-font-lock-tokenref-face|antlr-keyword|antlr-literal|antlr-ruledef|antlr-ruleref|antlr-syntax|antlr-tokendef|antlr-tokenref\n\t|apropos-keybinding|apropos-property|apropos-symbol|bat-label-face|bg:erc-color-face0|bg:erc-color-face1|bg:erc-color-face10\n\t|bg:erc-color-face11|bg:erc-color-face12|bg:erc-color-face13|bg:erc-color-face14|bg:erc-color-face15|bg:erc-color-face2\n\t|bg:erc-color-face3|bg:erc-color-face4|bg:erc-color-face5|bg:erc-color-face6|bg:erc-color-face7|bg:erc-color-face8|bg:erc-color-face9\n\t|bold-italic|bold|bookmark-menu-bookmark|bookmark-menu-heading|border|breakpoint-disabled|breakpoint-enabled|buffer-menu-buffer\n\t|button|c-annotation-face|calc-nonselected-face|calc-selected-face|calendar-month-header|calendar-today|calendar-weekday-header\n\t|calendar-weekend-header|change-log-acknowledgement-face|change-log-acknowledgement|change-log-acknowledgment\n\t|change-log-conditionals-face|change-log-conditionals|change-log-date-face|change-log-date|change-log-email-face|change-log-email\n\t|change-log-file-face|change-log-file|change-log-function-face|change-log-function|change-log-list-face|change-log-list\n\t|change-log-name-face|change-log-name|comint-highlight-input|comint-highlight-prompt|compare-windows|compilation-column-number\n\t|compilation-error|compilation-info|compilation-line-number|compilation-mode-line-exit|compilation-mode-line-fail\n\t|compilation-mode-line-run|compilation-warning|completions-annotations|completions-common-part|completions-first-difference\n\t|cperl-array-face|cperl-hash-face|cperl-nonoverridable-face|css-property|css-selector|cua-global-mark|cua-rectangle-noselect\n\t|cua-rectangle|cursor|custom-button-mouse|custom-button-pressed-unraised|custom-button-pressed|custom-button-unraised|custom-button\n\t|custom-changed|custom-comment-tag|custom-comment|custom-documentation|custom-face-tag|custom-group-subtitle|custom-group-tag-1\n\t|custom-group-tag|custom-invalid|custom-link|custom-modified|custom-rogue|custom-saved|custom-set|custom-state|custom-themed\n\t|custom-variable-button|custom-variable-tag|custom-visibility|cvs-filename-face|cvs-filename|cvs-handled-face|cvs-handled\n\t|cvs-header-face|cvs-header|cvs-marked-face|cvs-marked|cvs-msg-face|cvs-msg|cvs-need-action-face|cvs-need-action|cvs-unknown-face\n\t|cvs-unknown|default|diary-anniversary|diary-button|diary-time|diary|diff-added-face|diff-added|diff-changed-face|diff-changed\n\t|diff-context-face|diff-context|diff-file-header-face|diff-file-header|diff-function-face|diff-function|diff-header-face\n\t|diff-header|diff-hunk-header-face|diff-hunk-header|diff-index-face|diff-index|diff-indicator-added|diff-indicator-changed\n\t|diff-indicator-removed|diff-nonexistent-face|diff-nonexistent|diff-refine-added|diff-refine-change|diff-refine-changed\n\t|diff-refine-removed|diff-removed-face|diff-removed|dired-directory|dired-flagged|dired-header|dired-ignored|dired-mark\n\t|dired-marked|dired-perm-write|dired-symlink|dired-warning|ebrowse-default|ebrowse-file-name|ebrowse-member-attribute\n\t|ebrowse-member-class|ebrowse-progress|ebrowse-root-class|ebrowse-tree-mark|ediff-current-diff-A|ediff-current-diff-Ancestor\n\t|ediff-current-diff-B|ediff-current-diff-C|ediff-even-diff-A|ediff-even-diff-Ancestor|ediff-even-diff-B|ediff-even-diff-C\n\t|ediff-fine-diff-A|ediff-fine-diff-Ancestor|ediff-fine-diff-B|ediff-fine-diff-C|ediff-odd-diff-A|ediff-odd-diff-Ancestor\n\t|ediff-odd-diff-B|ediff-odd-diff-C|eieio-custom-slot-tag-face|eldoc-highlight-function-argument|epa-field-body\n\t|epa-field-name|epa-mark|epa-string|epa-validity-disabled|epa-validity-high|epa-validity-low|epa-validity-medium|erc-action-face\n\t|erc-bold-face|erc-button|erc-command-indicator-face|erc-current-nick-face|erc-dangerous-host-face|erc-default-face|erc-direct-msg-face\n\t|erc-error-face|erc-fool-face|erc-header-line|erc-input-face|erc-inverse-face|erc-keyword-face|erc-my-nick-face|erc-my-nick-prefix-face\n\t|erc-nick-default-face|erc-nick-msg-face|erc-nick-prefix-face|erc-notice-face|erc-pal-face|erc-prompt-face|erc-timestamp-face|erc-underline-face\n\t|error|ert-test-result-expected|ert-test-result-unexpected|escape-glyph|eww-form-checkbox|eww-form-file|eww-form-select|eww-form-submit\n\t|eww-form-text|eww-form-textarea|eww-invalid-certificate|eww-valid-certificate|excerpt|ffap|fg:erc-color-face0|fg:erc-color-face1\n\t|fg:erc-color-face10|fg:erc-color-face11|fg:erc-color-face12|fg:erc-color-face13|fg:erc-color-face14|fg:erc-color-face15|fg:erc-color-face2\n\t|fg:erc-color-face3|fg:erc-color-face4|fg:erc-color-face5|fg:erc-color-face6|fg:erc-color-face7|fg:erc-color-face8|fg:erc-color-face9\n\t|file-name-shadow|fixed-pitch|fixed|flymake-errline|flymake-warnline|flyspell-duplicate|flyspell-incorrect|font-lock-builtin-face\n\t|font-lock-comment-delimiter-face|font-lock-comment-face|font-lock-constant-face|font-lock-doc-face|font-lock-function-name-face\n\t|font-lock-keyword-face|font-lock-negation-char-face|font-lock-preprocessor-face|font-lock-regexp-grouping-backslash|font-lock-regexp-grouping-construct\n\t|font-lock-string-face|font-lock-type-face|font-lock-variable-name-face|font-lock-warning-face|fringe|glyphless-char|gnus-button\n\t|gnus-cite-1|gnus-cite-10|gnus-cite-11|gnus-cite-2|gnus-cite-3|gnus-cite-4|gnus-cite-5|gnus-cite-6|gnus-cite-7|gnus-cite-8|gnus-cite-9\n\t|gnus-cite-attribution-face|gnus-cite-attribution|gnus-cite-face-1|gnus-cite-face-10|gnus-cite-face-11|gnus-cite-face-2|gnus-cite-face-3\n\t|gnus-cite-face-4|gnus-cite-face-5|gnus-cite-face-6|gnus-cite-face-7|gnus-cite-face-8|gnus-cite-face-9|gnus-emphasis-bold-italic\n\t|gnus-emphasis-bold|gnus-emphasis-highlight-words|gnus-emphasis-italic|gnus-emphasis-strikethru|gnus-emphasis-underline-bold-italic\n\t|gnus-emphasis-underline-bold|gnus-emphasis-underline-italic|gnus-emphasis-underline|gnus-group-mail-1-empty-face|gnus-group-mail-1-empty\n\t|gnus-group-mail-1-face|gnus-group-mail-1|gnus-group-mail-2-empty-face|gnus-group-mail-2-empty|gnus-group-mail-2-face|gnus-group-mail-2\n\t|gnus-group-mail-3-empty-face|gnus-group-mail-3-empty|gnus-group-mail-3-face|gnus-group-mail-3|gnus-group-mail-low-empty-face\n\t|gnus-group-mail-low-empty|gnus-group-mail-low-face|gnus-group-mail-low|gnus-group-news-1-empty-face|gnus-group-news-1-empty|gnus-group-news-1-face\n\t|gnus-group-news-1|gnus-group-news-2-empty-face|gnus-group-news-2-empty|gnus-group-news-2-face|gnus-group-news-2|gnus-group-news-3-empty-face\n\t|gnus-group-news-3-empty|gnus-group-news-3-face|gnus-group-news-3|gnus-group-news-4-empty-face|gnus-group-news-4-empty|gnus-group-news-4-face\n\t|gnus-group-news-4|gnus-group-news-5-empty-face|gnus-group-news-5-empty|gnus-group-news-5-face|gnus-group-news-5|gnus-group-news-6-empty-face\n\t|gnus-group-news-6-empty|gnus-group-news-6-face|gnus-group-news-6|gnus-group-news-low-empty-face|gnus-group-news-low-empty|gnus-group-news-low-face\n\t|gnus-group-news-low|gnus-header-content-face|gnus-header-content|gnus-header-from-face|gnus-header-from|gnus-header-name-face\n\t|gnus-header-name|gnus-header-newsgroups-face|gnus-header-newsgroups|gnus-header-subject-face|gnus-header-subject|gnus-signature-face\n\t|gnus-signature|gnus-splash-face|gnus-splash|gnus-summary-cancelled-face|gnus-summary-cancelled|gnus-summary-high-ancient-face\n\t|gnus-summary-high-ancient|gnus-summary-high-read-face|gnus-summary-high-read|gnus-summary-high-ticked-face|gnus-summary-high-ticked\n\t|gnus-summary-high-undownloaded-face|gnus-summary-high-undownloaded|gnus-summary-high-unread-face|gnus-summary-high-unread|gnus-summary-low-ancient-face\n\t|gnus-summary-low-ancient|gnus-summary-low-read-face|gnus-summary-low-read|gnus-summary-low-ticked-face|gnus-summary-low-ticked\n\t|gnus-summary-low-undownloaded-face|gnus-summary-low-undownloaded|gnus-summary-low-unread-face|gnus-summary-low-unread|gnus-summary-normal-ancient-face\n\t|gnus-summary-normal-ancient|gnus-summary-normal-read-face|gnus-summary-normal-read|gnus-summary-normal-ticked-face|gnus-summary-normal-ticked\n\t|gnus-summary-normal-undownloaded-face|gnus-summary-normal-undownloaded|gnus-summary-normal-unread-face|gnus-summary-normal-unread\n\t|gnus-summary-selected-face|gnus-summary-selected|gomoku-O|gomoku-X|header-line|help-argument-name|hexl-address-region|hexl-ascii-region\n\t|hi-black-b|hi-black-hb|hi-blue-b|hi-blue|hi-green-b|hi-green|hi-pink|hi-red-b|hi-yellow|hide-ifdef-shadow|highlight-changes-delete-face\n\t|highlight-changes-delete|highlight-changes-face|highlight-changes|highlight|hl-line|holiday|icomplete-first-match|idlwave-help-link\n\t|idlwave-shell-bp|idlwave-shell-disabled-bp|idlwave-shell-electric-stop-line|idlwave-shell-pending-electric-stop|idlwave-shell-pending-stop\n\t|ido-first-match|ido-incomplete-regexp|ido-indicator|ido-only-match|ido-subdir|ido-virtual|info-header-node|info-header-xref|info-index-match\n\t|info-menu-5|info-menu-header|info-menu-star|info-node|info-title-1|info-title-2|info-title-3|info-title-4|info-xref|isearch-fail|isearch-lazy-highlight-face\n\t|isearch|iswitchb-current-match|iswitchb-invalid-regexp|iswitchb-single-match|iswitchb-virtual-matches|italic|landmark-font-lock-face-O\n\t|landmark-font-lock-face-X|lazy-highlight|ld-script-location-counter|link-visited|link|log-edit-header|log-edit-summary|log-edit-unknown-header\n\t|log-view-file-face|log-view-file|log-view-message-face|log-view-message|makefile-makepp-perl|makefile-shell|makefile-space-face\n\t|makefile-space|makefile-targets|match|menu|message-cited-text-face|message-cited-text|message-header-cc-face|message-header-cc|message-header-name-face\n\t|message-header-name|message-header-newsgroups-face|message-header-newsgroups|message-header-other-face|message-header-other|message-header-subject-face\n\t|message-header-subject|message-header-to-face|message-header-to|message-header-xheader-face|message-header-xheader|message-mml-face\n\t|message-mml|message-separator-face|message-separator|mh-folder-address|mh-folder-blacklisted|mh-folder-body|mh-folder-cur-msg-number\n\t|mh-folder-date|mh-folder-deleted|mh-folder-followup|mh-folder-msg-number|mh-folder-refiled|mh-folder-sent-to-me-hint|mh-folder-sent-to-me-sender\n\t|mh-folder-subject|mh-folder-tick|mh-folder-to|mh-folder-whitelisted|mh-letter-header-field|mh-search-folder|mh-show-cc|mh-show-date\n\t|mh-show-from|mh-show-header|mh-show-pgg-bad|mh-show-pgg-good|mh-show-pgg-unknown|mh-show-signature|mh-show-subject|mh-show-to|mh-speedbar-folder-with-unseen-messages\n\t|mh-speedbar-folder|mh-speedbar-selected-folder-with-unseen-messages|mh-speedbar-selected-folder|minibuffer-prompt|mm-command-output\n\t|mm-uu-extract|mode-line-buffer-id|mode-line-emphasis|mode-line-highlight|mode-line-inactive|mode-line|modeline-buffer-id|modeline-highlight\n\t|modeline-inactive|mouse|mpuz-solved|mpuz-text|mpuz-trivial|mpuz-unsolved|newsticker-date-face|newsticker-default-face|newsticker-enclosure-face\n\t|newsticker-extra-face|newsticker-feed-face|newsticker-immortal-item-face|newsticker-new-item-face|newsticker-obsolete-item-face\n\t|newsticker-old-item-face|newsticker-statistics-face|newsticker-treeview-face|newsticker-treeview-immortal-face|newsticker-treeview-new-face\n\t|newsticker-treeview-obsolete-face|newsticker-treeview-old-face|newsticker-treeview-selection-face|next-error|nobreak-space|nxml-attribute-colon\n\t|nxml-attribute-local-name|nxml-attribute-prefix|nxml-attribute-value-delimiter|nxml-attribute-value|nxml-cdata-section-CDATA\n\t|nxml-cdata-section-content|nxml-cdata-section-delimiter|nxml-char-ref-delimiter|nxml-char-ref-number|nxml-comment-content|nxml-comment-delimiter\n\t|nxml-delimited-data|nxml-delimiter|nxml-element-colon|nxml-element-local-name|nxml-element-prefix|nxml-entity-ref-delimiter|nxml-entity-ref-name\n\t|nxml-glyph|nxml-hash|nxml-heading|nxml-markup-declaration-delimiter|nxml-name|nxml-namespace-attribute-colon|nxml-namespace-attribute-prefix\n\t|nxml-namespace-attribute-value-delimiter|nxml-namespace-attribute-value|nxml-namespace-attribute-xmlns|nxml-outline-active-indicator\n\t|nxml-outline-ellipsis|nxml-outline-indicator|nxml-processing-instruction-content|nxml-processing-instruction-delimiter|nxml-processing-instruction-target\n\t|nxml-prolog-keyword|nxml-prolog-literal-content|nxml-prolog-literal-delimiter|nxml-ref|nxml-tag-delimiter|nxml-tag-slash|nxml-text\n\t|octave-function-comment-block|org-agenda-calendar-event|org-agenda-calendar-sexp|org-agenda-clocking|org-agenda-column-dateline\n\t|org-agenda-current-time|org-agenda-date-today|org-agenda-date-weekend|org-agenda-date|org-agenda-diary|org-agenda-dimmed-todo-face\n\t|org-agenda-done|org-agenda-filter-category|org-agenda-filter-regexp|org-agenda-filter-tags|org-agenda-restriction-lock|org-agenda-structure\n\t|org-archived|org-block-background|org-block-begin-line|org-block-end-line|org-block|org-checkbox-statistics-done|org-checkbox-statistics-todo\n\t|org-checkbox|org-clock-overlay|org-code|org-column-title|org-column|org-date-selected|org-date|org-default|org-document-info-keyword\n\t|org-document-info|org-document-title|org-done|org-drawer|org-ellipsis|org-footnote|org-formula|org-headline-done|org-hide|org-latex-and-related\n\t|org-level-1|org-level-2|org-level-3|org-level-4|org-level-5|org-level-6|org-level-7|org-level-8|org-link|org-list-dt|org-macro|org-meta-line\n\t|org-mode-line-clock-overrun|org-mode-line-clock|org-priority|org-property-value|org-quote|org-scheduled-previously|org-scheduled-today\n\t|org-scheduled|org-sexp-date|org-special-keyword|org-table|org-tag-group|org-tag|org-target|org-time-grid|org-todo|org-upcoming-deadline\n\t|org-verbatim|org-verse|org-warning|outline-1|outline-2|outline-3|outline-4|outline-5|outline-6|outline-7|outline-8|proced-mark|proced-marked\n\t|proced-sort-header|pulse-highlight-face|pulse-highlight-start-face|query-replace|rcirc-bright-nick|rcirc-dim-nick|rcirc-keyword\n\t|rcirc-my-nick|rcirc-nick-in-message-full-line|rcirc-nick-in-message|rcirc-other-nick|rcirc-prompt|rcirc-server-prefix|rcirc-server\n\t|rcirc-timestamp|rcirc-track-keyword|rcirc-track-nick|rcirc-url|reb-match-0|reb-match-1|reb-match-2|reb-match-3|rectangle-preview-face\n\t|region|rmail-header-name|rmail-highlight|rng-error|rst-adornment|rst-block|rst-comment|rst-definition|rst-directive|rst-emphasis1\n\t|rst-emphasis2|rst-external|rst-level-1|rst-level-2|rst-level-3|rst-level-4|rst-level-5|rst-level-6|rst-literal|rst-reference|rst-transition\n\t|ruler-mode-column-number|ruler-mode-comment-column|ruler-mode-current-column|ruler-mode-default|ruler-mode-fill-column|ruler-mode-fringes\n\t|ruler-mode-goal-column|ruler-mode-margins|ruler-mode-pad|ruler-mode-tab-stop|scroll-bar|secondary-selection|semantic-highlight-edits-face\n\t|semantic-highlight-func-current-tag-face|semantic-unmatched-syntax-face|senator-momentary-highlight-face|sgml-namespace|sh-escaped-newline\n\t|sh-heredoc-face|sh-heredoc|sh-quoted-exec|shadow|show-paren-match-face|show-paren-match|show-paren-mismatch-face|show-paren-mismatch\n\t|shr-link|shr-strike-through|smerge-base-face|smerge-base|smerge-markers-face|smerge-markers|smerge-mine-face|smerge-mine|smerge-other-face\n\t|smerge-other|smerge-refined-added|smerge-refined-change|smerge-refined-changed|smerge-refined-removed|speedbar-button-face|speedbar-directory-face\n\t|speedbar-file-face|speedbar-highlight-face|speedbar-selected-face|speedbar-separator-face|speedbar-tag-face|srecode-separator-face\n\t|strokes-char|subscript|success|superscript|table-cell|tcl-escaped-newline|term-bold|term-color-black|term-color-blue|term-color-cyan\n\t|term-color-green|term-color-magenta|term-color-red|term-color-white|term-color-yellow|term-underline|term|testcover-1value|testcover-nohits\n\t|tex-math-face|tex-math|tex-verbatim-face|tex-verbatim|texinfo-heading-face|texinfo-heading|tmm-inactive|todo-archived-only|todo-button\n\t|todo-category-string|todo-comment|todo-date|todo-diary-expired|todo-done-sep|todo-done|todo-key-prompt|todo-mark|todo-nondiary|todo-prefix-string\n\t|todo-search|todo-sorted-column|todo-time|todo-top-priority|tool-bar|tooltip|trailing-whitespace|tty-menu-disabled-face|tty-menu-enabled-face\n\t|tty-menu-selected-face|underline|variable-pitch|vc-conflict-state|vc-edited-state|vc-locally-added-state|vc-locked-state|vc-missing-state\n\t|vc-needs-update-state|vc-removed-state|vc-state-base-face|vc-up-to-date-state|vcursor|vera-font-lock-function|vera-font-lock-interface\n\t|vera-font-lock-number|verilog-font-lock-ams-face|verilog-font-lock-grouping-keywords-face|verilog-font-lock-p1800-face|verilog-font-lock-translate-off-face\n\t|vertical-border|vhdl-font-lock-attribute-face|vhdl-font-lock-directive-face|vhdl-font-lock-enumvalue-face|vhdl-font-lock-function-face\n\t|vhdl-font-lock-generic-\\/constant-face|vhdl-font-lock-prompt-face|vhdl-font-lock-reserved-words-face|vhdl-font-lock-translate-off-face\n\t|vhdl-font-lock-type-face|vhdl-font-lock-variable-face|vhdl-speedbar-architecture-face|vhdl-speedbar-architecture-selected-face\n\t|vhdl-speedbar-configuration-face|vhdl-speedbar-configuration-selected-face|vhdl-speedbar-entity-face|vhdl-speedbar-entity-selected-face\n\t|vhdl-speedbar-instantiation-face|vhdl-speedbar-instantiation-selected-face|vhdl-speedbar-library-face|vhdl-speedbar-package-face\n\t|vhdl-speedbar-package-selected-face|vhdl-speedbar-subprogram-face|viper-minibuffer-emacs|viper-minibuffer-insert|viper-minibuffer-vi\n\t|viper-replace-overlay|viper-search|warning|which-func|whitespace-big-indent|whitespace-empty|whitespace-hspace|whitespace-indentation\n\t|whitespace-line|whitespace-newline|whitespace-space-after-tab|whitespace-space-before-tab|whitespace-space|whitespace-tab|whitespace-trailing\n\t|widget-button-face|widget-button-pressed-face|widget-button-pressed|widget-button|widget-documentation-face|widget-documentation\n\t|widget-field-face|widget-field|widget-inactive-face|widget-inactive|widget-single-line-field-face|widget-single-line-field|window-divider-first-pixel\n\t|window-divider-last-pixel|window-divider|woman-addition-face|woman-addition|woman-bold-face|woman-bold|woman-italic-face|woman-italic\n\t|woman-unknown-face|woman-unknown)\n(?=[\\s()]|$)\\b', name: 'support.constant.face.emacs.lisp' }, format: { begin: '\\G', contentName: 'string.quoted.double.emacs.lisp', end: '(?=")', patterns: [ { captures: { 1: {name: 'constant.other.placeholder.emacs.lisp'}, 2: {name: 'invalid.illegal.placeholder.emacs.lisp'} }, match: '(%[%cdefgosSxX])|(%.)' }, {include: '#string-innards'} ] }, formatting: { begin: '(\\()(format|format-message|message|error)(?=\\s|$|")', beginCaptures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'support.function.$2.emacs.lisp'} }, end: '\\)', endCaptures: {0: {name: 'punctuation.section.expression.end.emacs.lisp'}}, name: 'meta.string-formatting.expression.emacs.lisp', patterns: [ { begin: '\\G\\s*(")', beginCaptures: { 1: {name: 'punctuation.definition.string.begin.emacs.lisp'} }, end: '"', endCaptures: { 0: {name: 'punctuation.definition.string.end.emacs.lisp'} }, patterns: [{include: '#format'}] }, { begin: '\\G\\s*$\\n?', end: '"|(?<!^)$|[\\s"](?=[^\\s"])', patterns: [ {match: '^\\s*$\\n?'}, { captures: { 1: {name: 'punctuation.definition.string.begin.emacs.lisp'} }, match: '(?:^|\\G)\\s*(")' }, { begin: '(?<=")', end: '"', endCaptures: { 0: {name: 'punctuation.definition.string.end.emacs.lisp'} }, patterns: [{include: '#format'}] } ] }, {include: '$self'} ] }, functions: { match: '(?x)\\b(?<=[\\s()\\[]|^)\n(abs|append|apply|assoc|butlast|c[ad]{1,2}r|c[ad]r-safe|consp?|copy-alist|copy-tree\n|dolist|funcall|last|length|listp?|load|make-list|mapc|mapcar|max|min|member|nbutlast\n|nconc|nreverse|nth|nthcdr|null|pop|prin[1ct]|push|quote|rassoc|reverse|rplac[ad]\n|safe-length|setcar|setcdr)\n(?=[\\s()]|$)\\b', name: 'keyword.control.function.$1.emacs.lisp' }, 'key-notation': { patterns: [ { match: '\\b(DEL|ESC|LFD|NUL|RET|SPC|TAB)\\b', name: 'constant.control-character.key.emacs.lisp' }, { captures: { 1: {name: 'punctuation.definition.escape.backslash.emacs.lisp'} }, match: '(\\\\)[0-7]{1,6}', name: 'constant.character.escape.octal.codepoint.key.emacs.lisp' }, { captures: { 1: {name: 'punctuation.definition.escape.caret.emacs.lisp'} }, match: '(\\^)\\S', name: 'constant.character.escape.caret.control.key.emacs.lisp' }, { captures: { 1: { name: 'punctuation.definition.double.angle.bracket.begin.emacs.lisp' }, 2: { name: 'punctuation.definition.double.angle.bracket.end.emacs.lisp' } }, match: '(<<)[-A-Za-z0-9]+(>>)', name: 'constant.command-name.key.emacs.lisp' }, { captures: { 1: {name: 'constant.numeric.integer.int.decimal.emacs.lisp'}, 2: {name: 'keyword.operator.arithmetic.multiply.emacs.lisp'} }, match: '([0-9]+)(\\*)(?=[\\S])', name: 'meta.key-repetition.emacs.lisp' }, { captures: { 1: {patterns: [{include: '#key-notation-prefix'}]}, 2: {name: 'constant.character.key.emacs.lisp'} }, match: '\\b(M-)(-?[0-9]+)\\b', name: 'meta.key-sequence.emacs.lisp' }, { captures: { 1: {patterns: [{include: '#key-notation-prefix'}]}, 2: {name: 'punctuation.definition.angle.bracket.begin.emacs.lisp'}, 3: {name: 'constant.control-character.key.emacs.lisp'}, 4: {name: 'punctuation.definition.angle.bracket.end.emacs.lisp'}, 5: {name: 'constant.control-character.key.emacs.lisp'}, 6: {name: 'invalid.illegal.bad-prefix.emacs.lisp'}, 7: {name: 'constant.character.key.emacs.lisp'} }, match: '(?x)\n\\b((?:[MCSAHs]-)+)\n(?: (<)(DEL|ESC|LFD|NUL|RET|SPC|TAB)(>)\n| (DEL|ESC|LFD|NUL|RET|SPC|TAB)\\b\n| ([!-_a-z]{2,})\n| ([!-_a-z])\n)?', name: 'meta.key-sequence.emacs.lisp' }, { captures: { 1: { patterns: [ { match: '<', name: 'punctuation.definition.angle.bracket.begin.emacs.lisp' }, {include: '#key-notation-prefix'} ] }, 2: {name: 'constant.function-key.emacs.lisp'}, 3: {name: 'punctuation.definition.angle.bracket.end.emacs.lisp'} }, match: '([MCSAHs]-<|<[MCSAHs]-|<)([-A-Za-z0-9]+)(>)', name: 'meta.function-key.emacs.lisp' }, { match: '(?<=\\s)(?![MCSAHs<>])[!-_a-z](?=\\s)', name: 'constant.character.key.emacs.lisp' } ] }, 'key-notation-prefix': { captures: { 1: {name: 'constant.character.key.modifier.emacs.lisp'}, 2: {name: 'punctuation.separator.modifier.dash.emacs.lisp'} }, match: '([MCSAHs])(-)' }, keyword: { captures: {1: {name: 'punctuation.definition.keyword.emacs.lisp'}}, match: '(?<=[\\s()\\[]|^)(:)[-+=*/\\w~!@$%^&:<>{}?]+', name: 'constant.keyword.emacs.lisp' }, lambda: { begin: '(\\()(lambda|function)(?:\\s+|(?=[()]))', beginCaptures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'storage.type.lambda.function.emacs.lisp'} }, end: '\\)', endCaptures: {0: {name: 'punctuation.section.expression.end.emacs.lisp'}}, name: 'meta.lambda.expression.emacs.lisp', patterns: [{include: '#defun-innards'}] }, loop: { begin: '(\\()(cl-loop)(?=[\\s()]|$)', beginCaptures: { 1: {name: 'punctuation.section.expression.begin.emacs.lisp'}, 2: {name: 'support.function.cl-lib.emacs.lisp'} }, end: '\\)', endCaptures: {0: {name: 'punctuation.section.expression.end.emacs.lisp'}}, name: 'meta.cl-lib.loop.emacs.lisp', patterns: [ { match: '(?x)(?<=[\\s()\\[]|^)\n(above|across|across-ref|always|and|append|as|below|by|collect|concat\n|count|do|each|finally|for|from|if|in|in-ref|initially|into|maximize\n|minimize|named|nconc|never|of|of-ref|on|repeat|return|sum|then|thereis\n|sum|to|unless|until|using|vconcat|when|while|with|(?:\n\t\n\tbeing \\s+\n\t(?:the)? \\s+\n\t\n\t(?:element|hash-key|hash-value|key-code|key-binding\n\t|key-seq|overlay|interval|symbols|frame|window|buffer)\n\ts?\n\n))(?=[\\s()]|$)', name: 'keyword.control.emacs.lisp' }, {include: '$self'} ] }, main: { patterns: [ {include: '#autoload'}, {include: '#comment'}, {include: '#lambda'}, {include: '#loop'}, {include: '#escapes'}, {include: '#definition'}, {include: '#formatting'}, {include: '#face-innards'}, {include: '#expression'}, {include: '#operators'}, {include: '#functions'}, {include: '#binding'}, {include: '#keyword'}, {include: '#string'}, {include: '#number'}, {include: '#quote'}, {include: '#symbols'}, {include: '#vectors'}, {include: '#arg-values'}, {include: '#archive-sources'}, {include: '#boolean'}, {include: '#faces'}, {include: '#cask'}, {include: '#stdlib'} ] }, modeline: { captures: { 1: {name: 'punctuation.definition.modeline.begin.emacs.lisp'}, 2: {patterns: [{include: '#modeline-innards'}]}, 3: {name: 'punctuation.definition.modeline.end.emacs.lisp'} }, match: '(-\\*-)(.*)(-\\*-)', name: 'meta.modeline.emacs.lisp' }, 'modeline-innards': { patterns: [ { captures: { 1: {name: 'variable.assignment.modeline.emacs.lisp'}, 2: {name: 'punctuation.separator.key-value.emacs.lisp'}, 3: {patterns: [{include: '#modeline-innards'}]} }, match: '([^\\s:;]+)\\s*(:)\\s*([^;]*)', name: 'meta.modeline.variable.emacs.lisp' }, {match: ';', name: 'punctuation.terminator.statement.emacs.lisp'}, {match: ':', name: 'punctuation.separator.key-value.emacs.lisp'}, {match: '\\S+', name: 'string.other.modeline.emacs.lisp'} ] }, number: { patterns: [ { captures: {1: {name: 'punctuation.definition.binary.emacs.lisp'}}, match: '(?<=[\\s()\\[]|^)(#)[Bb][01]+', name: 'constant.numeric.integer.binary.emacs.lisp' }, { captures: {1: {name: 'punctuation.definition.hex.emacs.lisp'}}, match: '(?<=[\\s()\\[]|^)(#)[Xx][0-9A-Fa-f]+', name: 'constant.numeric.integer.hex.viml' }, { match: '(?<=[\\s()\\[]|^)[-+]?\\d*\\.\\d+(?:[Ee][-+]?\\d+|[Ee]\\+(?:INF|NaN))?(?=[\\s()]|$)', name: 'constant.numeric.float.emacs.lisp' }, { match: '(?<=[\\s()\\[]|^)[-+]?\\d+(?:[Ee][-+]?\\d+|[Ee]\\+(?:INF|NaN))?(?=[\\s()]|$)', name: 'constant.numeric.integer.emacs.lisp' } ] }, operators: { patterns: [ { match: '(?x)(?<=[()]|^)\n(and|catch|cond|condition-case(?:-unless-debug)?|dotimes|eql?\n|equal|if|not|or|pcase|prog[12n]|throw|unless|unwind-protect\n|when|while)\n(?=[\\s()]|$)', name: 'keyword.control.$1.emacs.lisp' }, { match: '(?<=\\(|\\s|^)(interactive)(?=\\s|\\(|\\))', name: 'storage.modifier.interactive.function.emacs.lisp' }, { match: '(?<=\\(|\\s|^)[-*+/%](?=\\s|\\)|$)', name: 'keyword.operator.numeric.emacs.lisp' }, { match: '(?<=\\(|\\s|^)[/<>]=|[=<>](?=\\s|\\)|$)', name: 'keyword.operator.comparison.emacs.lisp' }, { match: '(?<=\\s)\\.(?=\\s|$)', name: 'keyword.operator.pair-separator.emacs.lisp' } ] }, quote: { patterns: [ { captures: { 1: {name: 'punctuation.definition.quote.emacs.lisp'}, 2: {patterns: [{include: '$self'}]} }, match: "(')([-+=*/\\w~!@$%^&:<>{}?]+)", name: 'constant.other.symbol.emacs.lisp' } ] }, stdlib: { patterns: [ { match: '(?x)(?<=[()]|^)\n\t(`--pcase-macroexpander|Buffer-menu-unmark-all-buffers|Buffer-menu-unmark-all|Info-node-description|aa2u-mark-as-text|aa2u-mark-rectangle-as-text\n\t|aa2u-rectangle|aa2u|ada-find-file|ada-header|ada-mode|add-abbrev|add-change-log-entry-other-window|add-change-log-entry|add-dir-local-variable\n\t|add-file-local-variable-prop-line|add-file-local-variable|add-global-abbrev|add-log-current-defun|add-minor-mode|add-mode-abbrev|add-submenu\n\t|add-timeout|add-to-coding-system-list|add-to-list--anon-cmacro|add-variable-watcher|adoc-mode|advertised-undo|advice--add-function\n\t|advice--buffer-local|advice--called-interactively-skip|advice--car|advice--cd\\*r|advice--cdr|advice--defalias-fset|advice--interactive-form\n\t|advice--make-1|advice--make-docstring|advice--make-interactive-form|advice--make|advice--member-p|advice--normalize-place|advice--normalize\n\t|advice--props|advice--p|advice--remove-function|advice--set-buffer-local|advice--strip-macro|advice--subst-main|advice--symbol-function\n\t|advice--tweak|advice--where|after-insert-file-set-coding|aggressive-indent--extend-end-to-whole-sexps|aggressive-indent--indent-current-balanced-line\n\t|aggressive-indent--indent-if-changed|aggressive-indent--keep-track-of-changes|aggressive-indent--local-electric\n\t|aggressive-indent--proccess-changed-list-and-indent|aggressive-indent--run-user-hooks|aggressive-indent--softly-indent-defun\n\t|aggressive-indent--softly-indent-region-and-on|aggressive-indent-bug-report|aggressive-indent-global-mode|aggressive-indent-indent-defun\n\t|aggressive-indent-indent-region-and-on|aggressive-indent-mode-set-explicitly|aggressive-indent-mode|align-current|align-entire|align-highlight-rule\n\t|align-newline-and-indent|align-regexp|align-unhighlight-rule|align|alist-get|all-threads|allout-auto-activation-helper|allout-mode-p|allout-mode\n\t|allout-setup|allout-widgets-mode|allout-widgets-setup|alter-text-property|and-let\\*|ange-ftp-completion-hook-function|apache-mode\n\t|apropos-local-value|apropos-local-variable|arabic-shape-gstring|assoc-delete-all|auth-source--decode-octal-string|auth-source--symbol-keyword\n\t|auth-source-backend--anon-cmacro|auth-source-backend--eieio-childp|auth-source-backends-parser-file|auth-source-backends-parser-macos-keychain\n\t|auth-source-backends-parser-secrets|auth-source-json-check|auth-source-json-search|auth-source-pass-enable|auth-source-secrets-saver\n\t|auto-save-visited-mode|backtrace-frame--internal|backtrace-frames|backward-to-word|backward-word-strictly|battery-upower-prop|battery-upower\n\t|beginning-of-defun--in-emptyish-line-p|beginning-of-defun-comments|bf-help-describe-symbol|bf-help-mode|bf-help-setup|bignump|bison-mode\n\t|blink-cursor--rescan-frames|blink-cursor--should-blink|blink-cursor--start-idle-timer|blink-cursor--start-timer|bookmark-set-no-overwrite\n\t|brainfuck-mode|browse-url-conkeror|buffer-hash|bufferpos-to-filepos|byte-compile--function-signature|byte-compile--log-warning-for-byte-compile\n\t|byte-compile-cond-jump-table-info|byte-compile-cond-jump-table|byte-compile-cond-vars|byte-compile-define-symbol-prop|byte-compile-file-form-defvar-function\n\t|byte-compile-file-form-make-obsolete|byte-opt--arith-reduce|byte-opt--portable-numberp|byte-optimize-1-|byte-optimize-1\\+|byte-optimize-memq\n\t|c-or-c\\+\\+-mode|call-shell-region|cancel-debug-on-variable-change|cancel-debug-watch|capitalize-dwim|cconv--convert-funcbody|cconv--remap-llv\n\t|char-fold-to-regexp|char-from-name|checkdoc-file|checkdoc-package-keywords|cl--assertion-failed|cl--class-docstring--cmacro|cl--class-docstring\n\t|cl--class-index-table--cmacro|cl--class-index-table|cl--class-name--cmacro|cl--class-name|cl--class-p--cmacro|cl--class-parents--cmacro\n\t|cl--class-parents|cl--class-p|cl--class-slots--cmacro|cl--class-slots|cl--copy-slot-descriptor-1|cl--copy-slot-descriptor|cl--defstruct-predicate\n\t|cl--describe-class-slots|cl--describe-class-slot|cl--describe-class|cl--do-&aux|cl--find-class|cl--generic-arg-specializer\n\t|cl--generic-build-combined-method|cl--generic-cache-miss|cl--generic-class-parents|cl--generic-derived-specializers|cl--generic-describe\n\t|cl--generic-dispatches--cmacro|cl--generic-dispatches|cl--generic-fgrep|cl--generic-generalizer-name--cmacro|cl--generic-generalizer-name\n\t|cl--generic-generalizer-p--cmacro|cl--generic-generalizer-priority--cmacro|cl--generic-generalizer-priority|cl--generic-generalizer-p\n\t|cl--generic-generalizer-specializers-function--cmacro|cl--generic-generalizer-specializers-function|cl--generic-generalizer-tagcode-function--cmacro\n\t|cl--generic-generalizer-tagcode-function|cl--generic-get-dispatcher|cl--generic-isnot-nnm-p|cl--generic-lambda|cl--generic-load-hist-format\n\t|cl--generic-make--cmacro|cl--generic-make-defmethod-docstring|cl--generic-make-function|cl--generic-make-method--cmacro|cl--generic-make-method\n\t|cl--generic-make-next-function|cl--generic-make|cl--generic-member-method|cl--generic-method-documentation|cl--generic-method-files\n\t|cl--generic-method-function--cmacro|cl--generic-method-function|cl--generic-method-info|cl--generic-method-qualifiers--cmacro\n\t|cl--generic-method-qualifiers|cl--generic-method-specializers--cmacro|cl--generic-method-specializers|cl--generic-method-table--cmacro\n\t|cl--generic-method-table|cl--generic-method-uses-cnm--cmacro|cl--generic-method-uses-cnm|cl--generic-name--cmacro|cl--generic-name)\n(?=[\\s()]|$)', name: 'support.function.emacs.lisp' }, { match: '(?x)(?<=[()]|^)\n\t(cl--generic-no-next-method-function|cl--generic-options--cmacro|cl--generic-options|cl--generic-search-method|cl--generic-specializers-apply-to-type-p\n\t|cl--generic-split-args|cl--generic-standard-method-combination|cl--generic-struct-specializers|cl--generic-struct-tag|cl--generic-with-memoization\n\t|cl--generic|cl--make-random-state--cmacro|cl--make-random-state|cl--make-slot-descriptor--cmacro|cl--make-slot-descriptor|cl--make-slot-desc\n\t|cl--old-struct-type-of|cl--pcase-mutually-exclusive-p|cl--plist-remove|cl--print-table|cl--prog|cl--random-state-i--cmacro|cl--random-state-i\n\t|cl--random-state-j--cmacro|cl--random-state-j|cl--random-state-vec--cmacro|cl--random-state-vec|cl--slot-descriptor-initform--cmacro\n\t|cl--slot-descriptor-initform|cl--slot-descriptor-name--cmacro|cl--slot-descriptor-name|cl--slot-descriptor-props--cmacro|cl--slot-descriptor-props\n\t|cl--slot-descriptor-type--cmacro|cl--slot-descriptor-type|cl--struct-all-parents|cl--struct-cl--generic-method-p--cmacro|cl--struct-cl--generic-method-p\n\t|cl--struct-cl--generic-p--cmacro|cl--struct-cl--generic-p|cl--struct-class-children-sym--cmacro|cl--struct-class-children-sym\n\t|cl--struct-class-docstring--cmacro|cl--struct-class-docstring|cl--struct-class-index-table--cmacro|cl--struct-class-index-table\n\t|cl--struct-class-name--cmacro|cl--struct-class-named--cmacro|cl--struct-class-named|cl--struct-class-name|cl--struct-class-p--cmacro\n\t|cl--struct-class-parents--cmacro|cl--struct-class-parents|cl--struct-class-print--cmacro|cl--struct-class-print|cl--struct-class-p\n\t|cl--struct-class-slots--cmacro|cl--struct-class-slots|cl--struct-class-tag--cmacro|cl--struct-class-tag|cl--struct-class-type--cmacro|cl--struct-class-type\n\t|cl--struct-get-class|cl--struct-name-p|cl--struct-new-class--cmacro|cl--struct-new-class|cl--struct-register-child|cl-call-next-method|cl-defgeneric\n\t|cl-defmethod|cl-describe-type|cl-find-class|cl-find-method|cl-generic-all-functions|cl-generic-apply|cl-generic-call-method|cl-generic-combine-methods\n\t|cl-generic-current-method-specializers|cl-generic-define-context-rewriter|cl-generic-define-generalizer|cl-generic-define-method|cl-generic-define\n\t|cl-generic-ensure-function|cl-generic-function-options|cl-generic-generalizers|cl-generic-make-generalizer--cmacro|cl-generic-make-generalizer|cl-generic-p\n\t|cl-iter-defun|cl-method-qualifiers|cl-next-method-p|cl-no-applicable-method|cl-no-next-method|cl-no-primary-method|cl-old-struct-compat-mode\n\t|cl-prin1-to-string|cl-prin1|cl-print-expand-ellipsis|cl-print-object|cl-print-to-string-with-limit|cl-prog\\*|cl-prog|cl-random-state-p--cmacro\n\t|cl-slot-descriptor-p--cmacro|cl-slot-descriptor-p|cl-struct--pcase-macroexpander|cl-struct-define|cl-struct-p--cmacro|cl-struct-p\n\t|cl-struct-slot-value--inliner|cl-typep--inliner|clear-composition-cache|cmake-command-run|cmake-help-command|cmake-help-list-commands|cmake-help-module\n\t|cmake-help-property|cmake-help-variable|cmake-help|cmake-mode|co