1db6ea063SBram Moolenaar" reStructured Text with R statements 2db6ea063SBram Moolenaar" Language: reST with R code chunks 3db6ea063SBram Moolenaar" Maintainer: Alex Zvoleff, [email protected] 477cdfd10SBram Moolenaar" Homepage: https://github.com/jalvesaq/R-Vim-runtime 5*fc65cabbSBram Moolenaar" Last Change: Thu Apr 05, 2018 11:06PM 6db6ea063SBram Moolenaar" 7db6ea063SBram Moolenaar" CONFIGURATION: 8db6ea063SBram Moolenaar" To highlight chunk headers as R code, put in your vimrc: 9db6ea063SBram Moolenaar" let rrst_syn_hl_chunk = 1 10db6ea063SBram Moolenaar 1177cdfd10SBram Moolenaarif exists("b:current_syntax") 12db6ea063SBram Moolenaar finish 13db6ea063SBram Moolenaarendif 14db6ea063SBram Moolenaar 15db6ea063SBram Moolenaar" load all of the rst info 16db6ea063SBram Moolenaarruntime syntax/rst.vim 17*fc65cabbSBram Moolenaarunlet! b:current_syntax 18db6ea063SBram Moolenaar 19db6ea063SBram Moolenaar" load all of the r syntax highlighting rules into @R 20db6ea063SBram Moolenaarsyntax include @R syntax/r.vim 21db6ea063SBram Moolenaar 22db6ea063SBram Moolenaar" highlight R chunks 23db6ea063SBram Moolenaarif exists("g:rrst_syn_hl_chunk") 24db6ea063SBram Moolenaar " highlight R code inside chunk header 25db6ea063SBram Moolenaar syntax match rrstChunkDelim "^\.\. {r" contained 26db6ea063SBram Moolenaar syntax match rrstChunkDelim "}$" contained 27db6ea063SBram Moolenaarelse 28db6ea063SBram Moolenaar syntax match rrstChunkDelim "^\.\. {r .*}$" contained 29db6ea063SBram Moolenaarendif 30db6ea063SBram Moolenaarsyntax match rrstChunkDelim "^\.\. \.\.$" contained 31db6ea063SBram Moolenaarsyntax region rrstChunk start="^\.\. {r.*}$" end="^\.\. \.\.$" contains=@R,rrstChunkDelim keepend transparent fold 32db6ea063SBram Moolenaar 33db6ea063SBram Moolenaar" also highlight in-line R code 34db6ea063SBram Moolenaarsyntax match rrstInlineDelim "`" contained 35db6ea063SBram Moolenaarsyntax match rrstInlineDelim ":r:" contained 36db6ea063SBram Moolenaarsyntax region rrstInline start=":r: *`" skip=/\\\\\|\\`/ end="`" contains=@R,rrstInlineDelim keepend 37db6ea063SBram Moolenaar 38db6ea063SBram Moolenaarhi def link rrstChunkDelim Special 39db6ea063SBram Moolenaarhi def link rrstInlineDelim Special 40db6ea063SBram Moolenaar 41db6ea063SBram Moolenaarlet b:current_syntax = "rrst" 42db6ea063SBram Moolenaar 43db6ea063SBram Moolenaar" vim: ts=8 sw=2 44