codekingpro/portable-devtools
114k
1" Vim syntax file2" Language: Slrn score file (based on slrn 0.9.8.0)3" Maintainer: Preben 'Peppe' Guldberg <peppe@wielders.org>4" Last Change: 8 Oct 20045 6" quit when a syntax file was already loaded7if exists("b:current_syntax")8 finish9endif10 11" characters in newsgroup names12setlocal isk=@,48-57,.,-,_,+13 14syn match slrnscComment "%.*$"15syn match slrnscSectionCom ".].*"lc=216 17syn match slrnscGroup contained "\(\k\|\*\)\+"18syn match slrnscNumber contained "\d\+"19syn match slrnscDate contained "\(\d\{1,2}[-/]\)\{2}\d\{4}"20syn match slrnscDelim contained ":"21syn match slrnscComma contained ","22syn match slrnscOper contained "\~"23syn match slrnscEsc contained "\\[ecC<>.]"24syn match slrnscEsc contained "[?^]"25syn match slrnscEsc contained "[^\\]$\s*$"lc=126 27syn keyword slrnscInclude contained include28syn match slrnscIncludeLine "^\s*Include\s\+\S.*$"29 30syn region slrnscSection matchgroup=slrnscSectionStd start="^\s*\[" end='\]' contains=slrnscGroup,slrnscComma,slrnscSectionCom31syn region slrnscSection matchgroup=slrnscSectionNot start="^\s*\[\~" end='\]' contains=slrnscGroup,slrnscCommas,slrnscSectionCom32 33syn keyword slrnscItem contained Age Bytes Date Expires From Has-Body Lines Message-Id Newsgroup References Subject Xref34 35syn match slrnscScoreItem contained "%.*$" skipempty nextgroup=slrnscScoreItem contains=slrnscComment36syn match slrnscScoreItem contained "^\s*Expires:\s*\(\d\{1,2}[-/]\)\{2}\d\{4}\s*$" skipempty nextgroup=slrnscScoreItem contains=slrnscItem,slrnscDelim,slrnscDate37syn match slrnscScoreItem contained "^\s*\~\=\(Age\|Bytes\|Has-Body\|Lines\):\s*\d\+\s*$" skipempty nextgroup=slrnscScoreItem contains=slrnscOper,slrnscItem,slrnscDelim,slrnscNumber38syn match slrnscScoreItemFill contained ".*$" skipempty nextgroup=slrnscScoreItem contains=slrnscEsc39syn match slrnscScoreItem contained "^\s*\~\=\(Date\|From\|Message-Id\|Newsgroup\|References\|Subject\|Xref\):" nextgroup=slrnscScoreItemFill contains=slrnscOper,slrnscItem,slrnscDelim40syn region slrnscScoreItem contained matchgroup=Special start="^\s*\~\={::\=" end="^\s*}" skipempty nextgroup=slrnscScoreItem contains=slrnscScoreItem41 42syn keyword slrnscScore contained Score43syn match slrnscScoreIdent contained "%.*"44syn match slrnScoreLine "^\s*Score::\=\s\+=\=[-+]\=\d\+\s*\(%.*\)\=$" skipempty nextgroup=slrnscScoreItem contains=slrnscScore,slrnscDelim,slrnscOper,slrnscNumber,slrnscScoreIdent45 46" Define the default highlighting.47" Only when an item doesn't have highlighting yet48 49hi def link slrnscComment Comment50hi def link slrnscSectionCom slrnscComment51hi def link slrnscGroup String52hi def link slrnscNumber Number53hi def link slrnscDate Special54hi def link slrnscDelim Delimiter55hi def link slrnscComma SpecialChar56hi def link slrnscOper SpecialChar57hi def link slrnscEsc String58hi def link slrnscSectionStd Type59hi def link slrnscSectionNot Delimiter60hi def link slrnscItem Statement61hi def link slrnscScore Keyword62hi def link slrnscScoreIdent Identifier63hi def link slrnscInclude Keyword64 65 66let b:current_syntax = "slrnsc"67 68"EOF vim: ts=8 noet tw=200 sw=8 sts=069 