Mercurial > yakumo_izuru > aya
diff vendor/github.com/alecthomas/chroma/v2/lexers/vim.go @ 66:787b5ee0289d draft
Use vendored modules
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author | yakumo.izuru |
---|---|
date | Sun, 23 Jul 2023 13:18:53 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/github.com/alecthomas/chroma/v2/lexers/vim.go Sun Jul 23 13:18:53 2023 +0000 @@ -0,0 +1,39 @@ +package lexers + +import ( + . "github.com/alecthomas/chroma/v2" // nolint +) + +// Viml lexer. +var Viml = Register(MustNewLexer( + &Config{ + Name: "VimL", + Aliases: []string{"vim"}, + Filenames: []string{"*.vim", ".vimrc", ".exrc", ".gvimrc", "_vimrc", "_exrc", "_gvimrc", "vimrc", "gvimrc"}, + MimeTypes: []string{"text/x-vim"}, + }, + vimlRules, +)) + +func vimlRules() Rules { + return Rules{ + "root": { + {`^([ \t:]*)(py(?:t(?:h(?:o(?:n)?)?)?)?)([ \t]*)(<<)([ \t]*)(.*)((?:\n|.)*)(\6)`, ByGroups(UsingSelf("root"), Keyword, Text, Operator, Text, Text, Using("Python"), Text), nil}, + {`^([ \t:]*)(py(?:t(?:h(?:o(?:n)?)?)?)?)([ \t])(.*)`, ByGroups(UsingSelf("root"), Keyword, Text, Using("Python")), nil}, + {`^\s*".*`, Comment, nil}, + {`[ \t]+`, Text, nil}, + {`/(\\\\|\\/|[^\n/])*/`, LiteralStringRegex, nil}, + {`"(\\\\|\\"|[^\n"])*"`, LiteralStringDouble, nil}, + {`'(''|[^\n'])*'`, LiteralStringSingle, nil}, + {`(?<=\s)"[^\-:.%#=*].*`, Comment, nil}, + {`-?\d+`, LiteralNumber, nil}, + {`#[0-9a-f]{6}`, LiteralNumberHex, nil}, + {`^:`, Punctuation, nil}, + {`[()<>+=!|,~-]`, Punctuation, nil}, + {`\b(let|if|else|endif|elseif|fun|function|endfunction)\b`, Keyword, nil}, + {`\b(NONE|bold|italic|underline|dark|light)\b`, NameBuiltin, nil}, + {`\b\w+\b`, NameOther, nil}, + {`.`, Text, nil}, + }, + } +}