rnoweb.vim (1915B)
1 " Vim syntax file 2 " Language: R noweb Files 3 " Maintainer: Johannes Ranke <jranke@uni-bremen.de> 4 " Last Change: Thu Apr 05, 2018 11:06PM 5 " Version: 0.9.1 6 " Remarks: - This file is inspired by the proposal of 7 " Fernando Henrique Ferraz Pereira da Rosa <feferraz@ime.usp.br> 8 " http://www.ime.usp.br/~feferraz/en/sweavevim.html 9 " 10 11 if exists("b:current_syntax") 12 finish 13 endif 14 15 syn case match 16 17 " Extension of Tex clusters {{{1 18 runtime syntax/tex.vim 19 unlet! b:current_syntax 20 21 syn cluster texMatchGroup add=@rnoweb 22 syn cluster texMathMatchGroup add=rnowebSexpr 23 syn cluster texMathZoneGroup add=rnowebSexpr 24 syn cluster texEnvGroup add=@rnoweb 25 syn cluster texFoldGroup add=@rnoweb 26 syn cluster texDocGroup add=@rnoweb 27 syn cluster texPartGroup add=@rnoweb 28 syn cluster texChapterGroup add=@rnoweb 29 syn cluster texSectionGroup add=@rnoweb 30 syn cluster texSubSectionGroup add=@rnoweb 31 syn cluster texSubSubSectionGroup add=@rnoweb 32 syn cluster texParaGroup add=@rnoweb 33 34 " Highlighting of R code using an existing r.vim syntax file if available {{{1 35 syn include @rnowebR syntax/r.vim 36 syn region rnowebChunk matchgroup=rnowebDelimiter start="^\s*<<.*>>=" matchgroup=rnowebDelimiter end="^@" contains=@rnowebR,rnowebChunkReference,rnowebChunk fold keepend 37 syn match rnowebChunkReference "^\s*<<.*>>$" contained 38 syn region rnowebSexpr matchgroup=Delimiter start="\\Sexpr{" matchgroup=Delimiter end="}" contains=@rnowebR contained 39 40 " Sweave options command {{{1 41 syn region rnowebSweaveopts matchgroup=Delimiter start="\\SweaveOpts{" matchgroup=Delimiter end="}" 42 43 " rnoweb Cluster {{{1 44 syn cluster rnoweb contains=rnowebChunk,rnowebChunkReference,rnowebDelimiter,rnowebSexpr,rnowebSweaveopts 45 46 " Highlighting {{{1 47 hi def link rnowebDelimiter Delimiter 48 hi def link rnowebSweaveOpts Statement 49 hi def link rnowebChunkReference Delimiter 50 51 let b:current_syntax = "rnoweb" 52 " vim: foldmethod=marker: