summaryrefslogtreecommitdiff
path: root/runtime/syntax/rrst.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2014-07-10 22:01:47 +0200
committerBram Moolenaar <Bram@vim.org>2014-07-10 22:01:47 +0200
commitdb6ea063352ec1c88c7bc0839fa2bf75bae56cf0 (patch)
treed645ba12242f3155e172cd758dc832da80e30740 /runtime/syntax/rrst.vim
parent3ed8b1332f7b84e40c89069e54d411d0ddfec3f1 (diff)
downloadvim-git-db6ea063352ec1c88c7bc0839fa2bf75bae56cf0.tar.gz
Updated runtime files.
Diffstat (limited to 'runtime/syntax/rrst.vim')
-rw-r--r--runtime/syntax/rrst.vim47
1 files changed, 47 insertions, 0 deletions
diff --git a/runtime/syntax/rrst.vim b/runtime/syntax/rrst.vim
new file mode 100644
index 000000000..4667b3a2c
--- /dev/null
+++ b/runtime/syntax/rrst.vim
@@ -0,0 +1,47 @@
+" reStructured Text with R statements
+" Language: reST with R code chunks
+" Maintainer: Alex Zvoleff, azvoleff@mail.sdsu.edu
+" Last Change: Wed Jul 09, 2014 10:29PM
+"
+" CONFIGURATION:
+" To highlight chunk headers as R code, put in your vimrc:
+" let rrst_syn_hl_chunk = 1
+
+" for portability
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+endif
+
+" load all of the rst info
+runtime syntax/rst.vim
+unlet b:current_syntax
+
+" load all of the r syntax highlighting rules into @R
+syntax include @R syntax/r.vim
+
+setlocal iskeyword=@,48-57,_,.
+
+" highlight R chunks
+if exists("g:rrst_syn_hl_chunk")
+ " highlight R code inside chunk header
+ syntax match rrstChunkDelim "^\.\. {r" contained
+ syntax match rrstChunkDelim "}$" contained
+else
+ syntax match rrstChunkDelim "^\.\. {r .*}$" contained
+endif
+syntax match rrstChunkDelim "^\.\. \.\.$" contained
+syntax region rrstChunk start="^\.\. {r.*}$" end="^\.\. \.\.$" contains=@R,rrstChunkDelim keepend transparent fold
+
+" also highlight in-line R code
+syntax match rrstInlineDelim "`" contained
+syntax match rrstInlineDelim ":r:" contained
+syntax region rrstInline start=":r: *`" skip=/\\\\\|\\`/ end="`" contains=@R,rrstInlineDelim keepend
+
+hi def link rrstChunkDelim Special
+hi def link rrstInlineDelim Special
+
+let b:current_syntax = "rrst"
+
+" vim: ts=8 sw=2