mirror of
https://github.com/alecthomas/chroma.git
synced 2025-02-09 13:23:51 +02:00
5644f41865
Based on the Vim syntax highlighting by Marshall Lochbaum[[0]], with number parsing from PrismJS highlighter by Christopher Rodriguez[[1]]. The lexed types are selected to be as descriptive as possible while retaining similar groupings to the Vim highlighter, so the highlighted code looks familiar to BQN users. [0]:a436a71a08/editors/vim/syntax/bqn.vim
[1]:859f99a042
259 lines
10 KiB
Plaintext
259 lines
10 KiB
Plaintext
[
|
|
{"type":"CommentPreproc","value":"#! /usr/bin/env bqn"},
|
|
{"type":"TextWhitespace","value":"\n\n"},
|
|
{"type":"CommentSingle","value":"# From BQN documentation / quick start:"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"CommentSingle","value":"# https://mlochbaum.github.io/BQN/doc/quick.html"},
|
|
{"type":"TextWhitespace","value":"\n\n"},
|
|
{"type":"CommentSingle","value":"# Case conversion utilities"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"Name","value":"case"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"Name","value":"diff"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"-"},
|
|
{"type":"Operator","value":"´"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"LiteralString","value":"\"Aa\""},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"NameFunction","value":"Lower"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"⇐"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"-"},
|
|
{"type":"OperatorWord","value":"⟜"},
|
|
{"type":"Name","value":"diff"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"NameFunction","value":"Upper"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"⇐"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"Lower"},
|
|
{"type":"Operator","value":"⁼"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":"\n\n"},
|
|
{"type":"Name","value":"hw"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"\u003c"},
|
|
{"type":"Operator","value":"˘"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"LiteralNumber","value":"2"},
|
|
{"type":"KeywordPseudo","value":"‿"},
|
|
{"type":"OperatorWord","value":"∘"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"⥊"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"LiteralString","value":"\"helloworld\""},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"Name","value":"hw"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"case"},
|
|
{"type":"Text","value":"."},
|
|
{"type":"NameFunction","value":"Upper"},
|
|
{"type":"OperatorWord","value":"⌾"},
|
|
{"type":"Punctuation","value":"("},
|
|
{"type":"NameFunction","value":"⊑"},
|
|
{"type":"Operator","value":"¨"},
|
|
{"type":"Punctuation","value":")"},
|
|
{"type":"Text","value":"↩"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"NameFunction","value":"•Out"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"hw"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"↩"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"∾"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"⥊⍉"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"["},
|
|
{"type":"Name","value":"hw"},
|
|
{"type":"KeywordPseudo","value":","},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"LiteralString","value":"\", \""},
|
|
{"type":"KeywordPseudo","value":"‿"},
|
|
{"type":"LiteralString","value":"\"!\""},
|
|
{"type":"KeywordPseudo","value":"]"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"CommentSingle","value":"# Hello, World!"},
|
|
{"type":"TextWhitespace","value":"\n\n"},
|
|
{"type":"CommentSingle","value":"# Split at spaces and repeated characters"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"NameFunction","value":"Split"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"NameFunction","value":"!"},
|
|
{"type":"LiteralNumber","value":"1"},
|
|
{"type":"NameFunction","value":"=="},
|
|
{"type":"Name","value":"𝕩"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"⋄"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Punctuation","value":"("},
|
|
{"type":"NameFunction","value":"!"},
|
|
{"type":"LiteralNumber","value":"2"},
|
|
{"type":"NameFunction","value":"=•Type"},
|
|
{"type":"Punctuation","value":")"},
|
|
{"type":"Operator","value":"¨"},
|
|
{"type":"Name","value":"𝕩"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"NameFunction","value":"Proc"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"NameConstant","value":"·"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"𝕊"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"LiteralStringChar","value":"' '"},
|
|
{"type":"Punctuation","value":":"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"spl"},
|
|
{"type":"Text","value":"⇐"},
|
|
{"type":"LiteralNumber","value":"1"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Punctuation","value":";"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"CommentSingle","value":"# Space: break and delete it"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"Name","value":"prev"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"Fn"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"cur"},
|
|
{"type":"Punctuation","value":":"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"⟨"},
|
|
{"type":"Name","value":"spl"},
|
|
{"type":"KeywordPseudo","value":","},
|
|
{"type":"Name","value":"str"},
|
|
{"type":"KeywordPseudo","value":"⟩"},
|
|
{"type":"Text","value":"⇐"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"Name","value":"spl"},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"LiteralNumber","value":"0"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"⋄"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"str"},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"KeywordPseudo","value":"⟨"},
|
|
{"type":"Name","value":"cur"},
|
|
{"type":"KeywordPseudo","value":"⟩"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"CommentSingle","value":"# Include and don't break..."},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"prev"},
|
|
{"type":"NameFunction","value":"="},
|
|
{"type":"Name","value":"cur"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Punctuation","value":"?"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"spl"},
|
|
{"type":"NameFunction","value":"+"},
|
|
{"type":"Text","value":"↩"},
|
|
{"type":"LiteralNumber","value":"1"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Punctuation","value":";"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"LiteralStringChar","value":"@"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"CommentSingle","value":"# except at equal characters"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"NameFunction","value":"GV"},
|
|
{"type":"KeywordPseudo","value":"‿"},
|
|
{"type":"NameFunction","value":"GS"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"NameFunction","value":"𝕏"},
|
|
{"type":"Operator","value":"¨"},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"Operator","value":"¨"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"⟨"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"{⟨"},
|
|
{"type":"Name","value":"s"},
|
|
{"type":"Text","value":"⇐"},
|
|
{"type":"Name","value":"str"},
|
|
{"type":"KeywordPseudo","value":"⟩"},
|
|
{"type":"Punctuation","value":":"},
|
|
{"type":"Name","value":"s"},
|
|
{"type":"Punctuation","value":";"},
|
|
{"type":"LiteralString","value":"\"\""},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"Name","value":"𝕩"},
|
|
{"type":"Text","value":"."},
|
|
{"type":"Name","value":"spl"},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"KeywordPseudo","value":"⟩"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"Name","value":"r"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Text","value":"←"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"Proc"},
|
|
{"type":"KeywordPseudo","value":"{"},
|
|
{"type":"NameFunction","value":"»𝔽"},
|
|
{"type":"Operator","value":"¨"},
|
|
{"type":"NameFunction","value":"⊢"},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"𝕩"},
|
|
{"type":"TextWhitespace","value":"\n "},
|
|
{"type":"Punctuation","value":"("},
|
|
{"type":"NameFunction","value":"∾"},
|
|
{"type":"Operator","value":"¨"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"GV"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"⊔"},
|
|
{"type":"Operator","value":"˜"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameConstant","value":"·"},
|
|
{"type":"NameFunction","value":"+"},
|
|
{"type":"Operator","value":"`"},
|
|
{"type":"NameFunction","value":"GS"},
|
|
{"type":"Punctuation","value":")"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"r"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"KeywordPseudo","value":"}"},
|
|
{"type":"TextWhitespace","value":"\n"},
|
|
{"type":"NameFunction","value":"•Show"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"NameFunction","value":"Split"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"Name","value":"hw"},
|
|
{"type":"TextWhitespace","value":" "},
|
|
{"type":"CommentSingle","value":"# ⟨ \"Hel\" \"lo,\" \"World!\" ⟩"},
|
|
{"type":"TextWhitespace","value":"\n"}
|
|
]
|