Mercurial > vim
view runtime/syntax/chatito.vim @ 34153:c7779252fab5 v9.1.0037
patch 9.1.0037: Calling get_breakindent_win() repeatedly when computing virtcol
Commit: https://github.com/vim/vim/commit/5b0722b86445158f0b502ffc48a5847b0d0187bd
Author: zeertzjq <zeertzjq@outlook.com>
Date: Wed Jan 17 20:42:53 2024 +0100
patch 9.1.0037: Calling get_breakindent_win() repeatedly when computing virtcol
Problem: Calling get_breakindent_win() repeatedly when computing
virtual column, and get_breakindent_win() does a STRCMP() on
the whole line since patch 9.0.0016.
Solution: Cache the result, since the line doesn't change.
(zeertzjq)
closes: #13879
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 17 Jan 2024 20:45:03 +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'