注意:重写原始问题以反映给出的正确解决方案。
vim(ubuntu 12.04 w / r-plugin)无法将.R或.r文件识别为R文件,并在文件中安装了带有注释的r-plugin,如下所示。
# comment
x <- 2
x
没有评论,一切正常。 我的〜/ .vim / filetype.vim读取:
augroup filetypedetect
au! BufRead,BufNewFile *.r setfiletype r
au! BufRead,BufNewFile *.R setfiletype r
au! BufRead,BufNewFile *.Rnw setf noweb
augroup END
答案 0 :(得分:1)
多种文件类型似乎使用R
扩展名。我在$VIMRUNTIME/filetype.vim
中找到了这个:
" Rexx, Rebol or R
au BufNewFile,BufRead *.r,*.R call s:FTr()
func! s:FTr()
let max = line("$") > 50 ? 50 : line("$")
for n in range(1, max)
" Rebol is easy to recognize, check for that first
if getline(n) =~? '\<REBOL\>'
setf rebol
return
endif
endfor
for n in range(1, max)
" R has # comments
if getline(n) =~ '^\s*#'
setf r
return
endif
" Rexx has /* comments */
if getline(n) =~ '^\s*/\*'
setf rexx
return
endif
endfor
" Nothing recognized, assume Rexx
setf rexx
endfunc
因此,您需要在文件中为Vim提供注释以正确检测R。
如果您从不使用Rexx或Rebol文件,您可以覆盖检测:
au BufNewFile,BufRead *.r,*.R setf r