blob: 3a56342cd8f5a9a0cdd59f07b81d2a5b9ace2f62 [file] [log] [blame]
Bram Moolenaardb6ea062014-07-10 22:01:47 +02001" reStructured Text with R statements
2" Language: reST with R code chunks
3" Maintainer: Alex Zvoleff, azvoleff@mail.sdsu.edu
Bram Moolenaar77cdfd12016-03-12 12:57:59 +01004" Homepage: https://github.com/jalvesaq/R-Vim-runtime
Bram Moolenaarfc65cab2018-08-28 22:58:02 +02005" Last Change: Thu Apr 05, 2018 11:06PM
Bram Moolenaardb6ea062014-07-10 22:01:47 +02006"
7" CONFIGURATION:
8" To highlight chunk headers as R code, put in your vimrc:
9" let rrst_syn_hl_chunk = 1
10
Bram Moolenaar77cdfd12016-03-12 12:57:59 +010011if exists("b:current_syntax")
Bram Moolenaardb6ea062014-07-10 22:01:47 +020012 finish
13endif
14
15" load all of the rst info
16runtime syntax/rst.vim
Bram Moolenaarfc65cab2018-08-28 22:58:02 +020017unlet! b:current_syntax
Bram Moolenaardb6ea062014-07-10 22:01:47 +020018
19" load all of the r syntax highlighting rules into @R
20syntax include @R syntax/r.vim
21
Bram Moolenaardb6ea062014-07-10 22:01:47 +020022" highlight R chunks
23if exists("g:rrst_syn_hl_chunk")
24 " highlight R code inside chunk header
25 syntax match rrstChunkDelim "^\.\. {r" contained
26 syntax match rrstChunkDelim "}$" contained
27else
28 syntax match rrstChunkDelim "^\.\. {r .*}$" contained
29endif
30syntax match rrstChunkDelim "^\.\. \.\.$" contained
31syntax region rrstChunk start="^\.\. {r.*}$" end="^\.\. \.\.$" contains=@R,rrstChunkDelim keepend transparent fold
32
33" also highlight in-line R code
34syntax match rrstInlineDelim "`" contained
35syntax match rrstInlineDelim ":r:" contained
36syntax region rrstInline start=":r: *`" skip=/\\\\\|\\`/ end="`" contains=@R,rrstInlineDelim keepend
37
38hi def link rrstChunkDelim Special
39hi def link rrstInlineDelim Special
40
41let b:current_syntax = "rrst"
42
43" vim: ts=8 sw=2