1" Vim syntax file 2" Language: R noweb Files 3" Maintainer: Johannes Ranke <[email protected]> 4" Last Change: 2006 Apr 25 5" Version: 0.6 6" SVN: $Id$ 7" Remarks: - This file is inspired by the proposal of 8" Fernando Henrique Ferraz Pereira da Rosa <[email protected]> 9" http://www.ime.usp.br/~feferraz/en/sweavevim.html 10" - It extends some clusters from syntax/tex.vim (version 33, 11" March 06 2006) and therefore depends on some contents 12" of this file 13" 14 15" Version Clears: {{{1 16" For version 5.x: Clear all syntax items 17" For version 6.x and 7.x: Quit when a syntax file was already loaded 18if version < 600 19 syntax clear 20elseif exists("b:current_syntax") 21 finish 22endif 23 24syn case match 25 26" Extension of Tex regions {{{1 27runtime syntax/tex.vim 28unlet b:current_syntax 29 30syn cluster texDocGroup contains=texPartZone,@texPartGroup,@rnoweb 31syn cluster texPartGroup contains=texChapterZone,texSectionZone,texParaZone,@rnoweb 32syn cluster texChapterGroup contains=texSectionZone,texParaZone,@rnoweb 33syn cluster texSectionGroup contains=texSubSectionZone,texParaZone,@rnoweb 34syn cluster texSubSectionGroup contains=texSubSubSectionZone,texParaZone,@rnoweb 35syn cluster texSubSubSectionGroup contains=texParaZone,@rnoweb 36syn cluster texParaGroup contains=texSubParaZone,@rnoweb 37 38" Highlighting of R code using an existing r.vim syntax file if available {{{1 39syn include @rnowebR syntax/r.vim 40syn region rnowebChunk matchgroup=rnowebDelimiter start="^<<.*>>=" matchgroup=rnowebDelimiter end="^@" contains=@rnowebR,rnowebChunkReference,rnowebChunk keepend 41syn match rnowebChunkReference "^<<.*>>$" contained 42syn region rnowebSexpr matchgroup=Delimiter start="\\Sexpr{" matchgroup=Delimiter end="}" contains=@rnowebR 43 44" Sweave options command {{{1 45syn region rnowebSweaveopts matchgroup=Delimiter start="\\SweaveOpts{" matchgroup=Delimiter end="}" 46 47" rnoweb Cluster {{{1 48syn cluster rnoweb contains=rnowebChunk,rnowebChunkReference,rnowebDelimiter,rnowebSexpr,rnowebSweaveopts 49 50" Highlighting {{{1 51hi def link rnowebDelimiter Delimiter 52hi def link rnowebSweaveOpts Statement 53hi def link rnowebChunkReference Delimiter 54 55let b:current_syntax = "rnoweb" 56" vim: foldmethod=marker: 57