view runtime/syntax/chatito.vim @ 31479:0c0b78aa7ae3 v9.0.1072

patch 9.0.1072: screenpos() column result in fold may be too small Commit: https://github.com/vim/vim/commit/ba2d19193201277397c25c1f5a134ea042542555 Author: zeertzjq <zeertzjq@outlook.com> Date: Sun Dec 18 12:28:59 2022 +0000 patch 9.0.1072: screenpos() column result in fold may be too small Problem: screenpos() column result in fold may be too small. Solution: Add space of 'number', sign column, etc. (closes https://github.com/vim/vim/issues/11715)
author Bram Moolenaar <Bram@vim.org>
date Sun, 18 Dec 2022 13:30:05 +0100
parents 1e91e26ceebf
children
line wrap: on
line source

" Vim syntax file
" Language:	Chatito
" Maintainer:	ObserverOfTime <chronobserver@disroot.org>
" Filenames:	*.chatito
" Last Change:	2022 Sep 19

if exists('b:current_syntax')
    finish
endif

" Comment
syn keyword chatitoTodo contained TODO FIXME XXX
syn match chatitoComment /^#.*/ contains=chatitoTodo,@Spell
syn match chatitoComment +^//.*+ contains=chatitoTodo,@Spell

" Import
syn match chatitoImport /^import \+.*$/ transparent contains=chatitoImportKeyword,chatitoImportFile
syn keyword chatitoImportKeyword import contained nextgroup=chatitoImportFile
syn match chatitoImportFile /.*$/ contained skipwhite

" Intent
syn match chatitoIntent /^%\[[^\]?]\+\]\((.\+)\)\=$/ contains=chatitoArgs

" Slot
syn match chatitoSlot /^@\[[^\]?#]\+\(#[^\]?#]\+\)\=\]\((.\+)\)\=$/ contains=chatitoArgs,chatitoVariation
syn match chatitoSlot /@\[[^\]?#]\+\(#[^\]?#]\+\)\=?\=\]/ contained contains=chatitoOpt,chatitoVariation

" Alias
syn match chatitoAlias /^\~\[[^\]?]\+\]\=$/
syn match chatitoAlias /\~\[[^\]?]\+?\=\]/ contained contains=chatitoOpt

" Probability
syn match chatitoProbability /\*\[\d\+\(\.\d\+\)\=%\=\]/ contained

" Optional
syn match chatitoOpt '?' contained

" Arguments
syn match chatitoArgs /(.\+)/ contained

" Variation
syn match chatitoVariation /#[^\]?#]\+/ contained

" Value
syn match chatitoValue /^ \{4\}\zs.\+$/ contains=chatitoProbability,chatitoSlot,chatitoAlias,@Spell

" Errors
syn match chatitoError /^\t/

hi def link chatitoAlias String
hi def link chatitoArgs Special
hi def link chatitoComment Comment
hi def link chatitoError Error
hi def link chatitoImportKeyword Include
hi def link chatitoIntent Statement
hi def link chatitoOpt SpecialChar
hi def link chatitoProbability Number
hi def link chatitoSlot Identifier
hi def link chatitoTodo Todo
hi def link chatitoVariation Special

let b:current_syntax = 'chatito'