Mercurial > vim
view runtime/syntax/pcap.vim @ 34684:faf891660963 v9.1.0223
patch 9.1.0223: code duplication in loop to add active text properties
Commit: https://github.com/vim/vim/commit/1134fdd1b369119d0d6992e3120bb5f7c788b697
Author: Dylan Thacker-Smith <dylan.ah.smith@gmail.com>
Date: Thu Mar 28 11:49:46 2024 +0100
patch 9.1.0223: code duplication in loop to add active text properties
Problem: There are two dense conditions with duplication that needs to
be kept in sync between the while loop break condition and the
condition to skip certain text properties.
Solution: Refactor the loop by moving while loop conditions into the
body of the while loop so they can be shared with skip
conditions. `break` and an `active` variable are used to
handle the outcome of these merged conditions.
(Dylan Thacker-Smith)
closes: #14307
Signed-off-by: Dylan Thacker-Smith <dylan.ah.smith@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 28 Mar 2024 12:00:05 +0100 |
parents | 46763b01cd9a |
children |
line wrap: on
line source
" Vim syntax file " Config file: printcap " Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int> (defunct) " Modified by Bram " Last Change: 2003 May 11 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif "define keywords setlocal isk=@,46-57,_,-,#,=,192-255 "first all the bad guys syn match pcapBad '^.\+$' "define any line as bad syn match pcapBadword '\k\+' contained "define any sequence of keywords as bad syn match pcapBadword ':' contained "define any single : as bad syn match pcapBadword '\\' contained "define any single \ as bad "then the good boys " Boolean keywords syn match pcapKeyword contained ':\(fo\|hl\|ic\|rs\|rw\|sb\|sc\|sf\|sh\)' " Numeric Keywords syn match pcapKeyword contained ':\(br\|du\|fc\|fs\|mx\|pc\|pl\|pw\|px\|py\|xc\|xs\)#\d\+' " String Keywords syn match pcapKeyword contained ':\(af\|cf\|df\|ff\|gf\|if\|lf\|lo\|lp\|nd\|nf\|of\|rf\|rg\|rm\|rp\|sd\|st\|tf\|tr\|vf\)=\k*' " allow continuation syn match pcapEnd ':\\$' contained " syn match pcapDefineLast '^\s.\+$' contains=pcapBadword,pcapKeyword syn match pcapDefine '^\s.\+$' contains=pcapBadword,pcapKeyword,pcapEnd syn match pcapHeader '^\k[^|]\+\(|\k[^|]\+\)*:\\$' syn match pcapComment "#.*$" syn sync minlines=50 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link pcapBad WarningMsg hi def link pcapBadword WarningMsg hi def link pcapComment Comment let b:current_syntax = "pcap" " vim: ts=8