my shell and tool configurations
1" Vim syntax file for Gemtext markup
2" as described by section 5 of the Gemini Specification
3" https://gemini.circumlunar.space/docs/specification.html
4
5if exists("b:current_syntax")
6 finish
7endif
8
9syntax sync fromstart
10
11syntax match gemtextLinkOperator '\v^\=\>' nextgroup=gemtextLinkURL skipwhite
12syntax match gemtextLinkURL '\v\S+' contained nextgroup=gemtextLinkText skipwhite
13syntax match gemtextLinkText '\v\S.*$' contained
14
15syntax match gemtextHeadingOperator '\v^\##?#?' nextgroup=gemtextHeadingText skipwhite
16syntax match gemtextHeadingText '\v\s*\S.*$' contained
17syntax match gemtextNotAHeadingOperator '\v^\####'
18
19syntax match gemtextUnorderedListItemOperator '\v^\*\s'
20
21syntax match gemtextQuoteOperator '\v^\>' nextgroup=gemtextQuoteText skipwhite
22syntax match gemtextQuoteText '\v.*$' contained
23
24syntax region gemtextPreformatBlock start="\v^```.*$" end="\v^```" keepend
25
26let b:current_syntax = "gemtext"
27
28hi def link gemtextLinkOperator Operator
29hi def link gemtextLinkURL Underlined
30hi def link gemtextLinkText String
31
32hi def link gemtextHeadingOperator Operator
33hi def link gemtextHeadingText Identifier
34
35hi def link gemtextUnorderedListItemOperator Operator
36
37hi def link gemtextQuoteOperator Operator
38hi def link gemtextQuoteText String
39
40hi def link gemtextPreformatBlock PreProc