2015-02-23 40 views
5

(總結在底部)我已經使用Vim-R-plugin設置了Vim和R,它的工作原理完美無缺。我也在Vim中使用Latex套件,並且可以毫無問題地創建,編譯和查看.tex文件。對於knitr,我曾經使用Rstudio,但我真的很想留在Vim。我剛剛開始使用vim-latex-suite,所以也許我錯過了一些基本的東西,但是有些東西在我的Vim + Latex-Suite + knitr組合中不起作用。使用Vim + latex-suite + knitr

以下Associate .Rnw with vim latex suite,我在我的vimrc中包含.Rnw文件應該被讀作.tex文件(雖然有人在該帖子的評論中指出它應該在2011年在vim-r-plugin中自動執行,但它沒有:最初文件類型被檢測爲rnoweb,當我嘗試編譯時,它拋出一個錯誤,說我試圖編譯一個非.tex文件)。現在

,如果我使用下面的代碼作爲.Rnw文件:

\title{Data analysis} 
\begin{document} 
\maketitle 
\Section{Introduction} 
Some text as introduction 
\end{document} 

它編譯沒有問題。當我包括

<<>>= 
1 + 1 
@ 

它編譯,但它打印到

!! ?? = 1 + 1

@

而不塊顏色和!和?轉過身來。 當我有一個評論(# comment)返回一個錯誤說

在垂直模式

不能使用「宏參數字符#」,但它並編譯和打印爲

評論

當我使用轉義,沒有顯示任何錯誤,它打印

#評論

我使用的MacVim 7.4和更新了所有的插件(安裝使用捆綁/更新)和R 3.1.2(最新更新)。

因此,總結:vim + r的作品,vim +乳膠作品,但vim + r +乳膠不起作用。 R代碼未執行且註釋顯示錯誤。

如果有人能指出我在正確的方向,這將不勝感激!

回答

4

自發布此問題以來,我已經做了一些研究並找到了解決方案。我必須給我很多(也許都是?)信貸給Josh Davis,我從中獲得了大部分的設置。他指着我踢我的.Rnw文件。但是,對於一個沒有經驗的用戶來說,我需要一些時間和額外的信息來源。所以對於其他用戶來說,這個概述可能會很有趣。

現在,通過我的終端中的一些初始設置,我可以編輯。在VIM中的Rnw文件,同時觀看我的PDF格式。

的工作流程:

  • 我(使用vim-R-插件和VIM乳膠套房)
  • 起腳手錶編輯VIM我.Rnw文件我.Rnw文件
  • $ Rscripts ... (由噴射器調用)編譯.Rnw到.tex
  • latexmk手錶我.tex文件,並將其編譯成PDF

安裝組件:的kicker

gem install kicker -s http://gemcutter.org 

安裝我做一個「配方」的踢球者觀看的.Rnw文件,當它改變它執行終端命令。我把它叫做knitr.kick恩把它放在我的主目錄:

#!/bin/bash 

    FILE="${1}" 

    KNITR="echo \"Rerunning Knitr..\"; Rscript -e \"library(knitr); knit('./${FILE}')\"" 

    echo "Watching ${FILE}..." 
    kicker -e "${KNITR}" ${FILE} 

我做了一個別名加入到.bash_profile中調用這個踢球者:

knitr="~/knitr.kick" 

installation of latexmk後,我可以叫

$ latexmk -pvc -pdf example.tex 

現在我可以撥打:

$ knitr example.Rnw 

在我的終端中,example.Rnw被監視,每次改變時,Rscript都會運行,.Rnw文件被編譯爲一個.tex文件。比.tex文件被latexmk編譯爲PDF。

這是我的第一個答案,所以如果有一些信息缺失的部分,請讓我知道。

p.s. Sweave和乳膠語法VIM突出真棒混合,可以發現here

+0

嘿,freek,我很高興我的博客文章幫助你。如果您想出任何可以改進我的設置的其他內容,請告訴我們! – 2015-11-29 03:38:18

0

對於Rnoweb文件,按鍵綁定<LocalLeader>kn<LocalLeader>kp當你的文件格式設置爲rnoweb可用於構建.tex和.pdf文件分別在Vim中。詳情請參閱https://raw.githubusercontent.com/jcfaria/Vim-R-plugin/master/doc/r-plugin.txt。爲了便於編輯,您可能更願意將文件格式設置爲tex。我添加了以下行~/.vim/ftplugin/tex.vim

map <LocalLeader>k :w<CR>:cd %:p:h <CR>:!Rscript -e 'library(knitr);knit("%:p")'<CR>:!latexmk -pdf -pdflatex='pdflatex -shell-escape -synctex=1 -file-line-error -interaction=nonstopmode' %:r.tex <CR>:!open -a Skim %:r.pdf <CR><CR> 

到.Rnw轉換爲PDF <LocalLeader>k鍵綁定。這適用於Mac。我相信它可以很容易地針對Linux進行調整。