diff options
author | Jakson Alves de Aquino <jalvesaq@gmail.com> | 2023-09-27 13:56:02 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-27 18:56:02 +0200 |
commit | 34745942390383ec626b168e9837d284622c7bbe (patch) | |
tree | 7b1ff1fb445413ab1de3a97b6a1edaf9381944c1 /runtime/ftplugin | |
parent | a76fbe6e00249d25fa2cfaf80ddaa360f0e1711d (diff) |
runtime(rmd) Update ftplugin and syntax files (#13193)
ftplugin/rmd.vim:
- Set 'commentstring' dynamically according to code region.
syntax/rmd.vim:
- Include syntax highlighting of fenced languages dynamically.
- Add conceal char for line break.
Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'runtime/ftplugin')
-rw-r--r-- | runtime/ftplugin/rmd.vim | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/runtime/ftplugin/rmd.vim b/runtime/ftplugin/rmd.vim index be6ab7335b..a407c236dd 100644 --- a/runtime/ftplugin/rmd.vim +++ b/runtime/ftplugin/rmd.vim @@ -2,7 +2,7 @@ " Language: R Markdown file " Maintainer: Jakson Alves de Aquino <jalvesaq@gmail.com> " Homepage: https://github.com/jalvesaq/R-Vim-runtime -" Last Change: Mon Feb 27, 2023 07:15PM +" Last Change: Mon May 29, 2023 06:31AM " Original work by Alex Zvoleff (adjusted from R help for rmd by Michel Kuhlmann) " Only do this when not yet done for this buffer @@ -32,12 +32,18 @@ function FormatRmd() return 1 endfunction +let s:last_line = 0 function SetRmdCommentStr() - if (search("^[ \t]*```[ ]*{r", "bncW") > search("^[ \t]*```$", "bncW")) || ((search('^---$', 'Wn') || search('^\.\.\.$', 'Wn')) && search('^---$', 'bnW')) - set commentstring=#\ %s - else - set commentstring=<!--\ %s\ --> - endif + if line('.') == s:last_line + return + endif + let s:last_line = line('.') + + if (search("^[ \t]*```[ ]*{r", "bncW") > search("^[ \t]*```$", "bncW")) || ((search('^---$', 'Wn') || search('^\.\.\.$', 'Wn')) && search('^---$', 'bnW')) + set commentstring=#\ %s + else + set commentstring=<!--\ %s\ --> + endif endfunction " If you do not want both 'comments' and 'commentstring' dynamically defined, |