【问题标题】:Associate .Rnw with vim latex suite将 .Rnw 与 vim 乳胶套件关联
【发布时间】:2010-12-03 00:33:50
【问题描述】:

我敢肯定这是非常基本的东西。我刚开始使用 gvim 和 latex-suite。但是,当我编辑扩展名为 .Rnw 的 sweavefile 时,我希望加载乳胶套件。

我的 .vimrc 看起来像这样

" These settings are needed for latex-suite
filetype indent on
filetype plugin on
filetype on
let g:tex_flavor='latex'
set grepprg=grep\ -nH\ $*
"let g:Tex_Folding=0 "I don't like folding.
set iskeyword+=:

我想我可以在这里设置一些选项,让 vim 将 Rnw 视为 .tex?

【问题讨论】:

    标签: r latex vim sweave


    【解决方案1】:

    在 /usr/share/vim/vimfiles/ftdetect(全局)或 .vim/ftdetect(本地)中放入一个名为 Rnw.vim 的文件,如下所示:

    " Vim filetype detection plugin
    " Language:    sweavefile
    
    autocmd BufRead,BufNewFile *.Rnw set filetype=tex
    

    编辑:我很确定你也可以把这个自动命令放在你的 .vimrc 中,因为它是在程序启动时加载的,在加载任何文件之前,但这是文件类型检测的自然目录。

    编辑:如果您想对这些文件进行一些不同于 TeX 的处理,您可以将文件类型设置为 rnw,根据需要将脚本添加到 ftplugin、缩进和语法目录,很可能是采购 TeX 脚本,然后做自己的事。

    【讨论】:

    • 我将您的建议放在 ftdetect 中(必须先创建它)。现在 gvim 以乳胶模式打开 .Rnw 文件。这是我要求的。非常感谢!
    • 供参考:Vim-R-Plugin 现在会自动执行此操作。
    【解决方案2】:

    希望这些建议对您有所帮助:

    【讨论】:

    • 酷。文件类型检测与我建议的基本相同,但这会为您提供嵌入的语法区域,这非常好。为了让乳胶套件也能加载,正如我在回答中提到的那样,您需要为此文件类型添加一个 ftplugin,它与您在 TeX 文件类型插件中看到的加载相同(在 ftplugin 中,无论是乳胶-套件已安装)。
    • 谢谢谢恩。 Chip Campbell 在 R-help 列表上的帖子对我来说有点神秘——因为我对 vim 中的语法集群一无所知。但我想我可以复制 Johannes Ranke 提供的文件。 feferraz 的帖子写得很好,我认为很容易理解。它接缝了 feferraz 和 Ranke 使用不同的方法来实现同样的事情吗?有没有一种方法比另一种更好?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多