(Vim+latex) 如何使用 \ll 編譯專案目錄中的單一 tex 文件

(Vim+latex) 如何使用 \ll 編譯專案目錄中的單一 tex 文件

我正在使用 Vim+latex。在我的專案目錄中,我有另一個單獨的 tex 檔案(例如用於繪製圖形的 tikz/PGF 檔案)。當我輸入\ll時,系統不會編譯當前文件,而是編譯專案文件。是否可以告訴系統編譯我目前的檔案?

多謝!

答案1

這可能被某些人認為是一種解決方法,但我認為它適合您的目的。來自LaTeX-Suite 參考:

每次 LaTeX-Suite 開啟新的 LaTeX 檔案時,它都會嘗試透過從目前檔案的目錄向上搜尋(到檔案系統的根目錄)來查看它是否是多檔案專案的一部分,以查看是否找到檔案格式為*.latexmain。如果找到這樣的文件,則認為目前文件是較大項目的一部分。

這意味著*.latexmain每個項目可以有多個文件,前提是它們位於不同的目錄層級。

因此,我們將主文檔mydoc.tex和單獨的文件稱為myfig.tex。如果您設定目錄結構如下:

project-dir/
    mydoc.tex
    mydoc.latexmain
    myfig/
        myfig.tex
        myfig.latexmain
    myfiles/
        ch01.tex
        ch02.tex

一切都應該如你所願。如果myfig.tex是活動緩衝區並且您按\ll,LaTeX-Suite 將會尋找myfig.latexmain並編譯myfig.tex。如果mydoc.tex是活動緩衝區,mydoc.latexmain將被找到並編譯該檔案。如果其中有任何內容myfiles/是活動緩衝區,LaTeX-Suite 將在目前目錄中找不到*.latexmain文件,並將向上遍歷一級。然後它將mydoc.latexmain根據需要查找並編譯該文檔。

唯一的其他變更將發生在包含文件文字來源的文件中。我假設你正在使用

\includegraphics{myfig} 

將圖形檔案的編譯輸出包含在文件中。既然檔案位於不同的目錄中,您需要將其變更為相對路徑。如果圖形包含在關卡中project-dir/,請使用

\includegraphics{myfig/myfig}

或者,如果圖形包含在關卡中myfiles/,則使用

\includegraphics{../myfig/myfig}

包括編譯的輸出。

這種方法也可以擴展到多個圖形檔案:只需為每個圖形引入另一個目錄,以便*.latexmain在向上遍歷目錄樹期間始終首先找到合適的目錄。

儘管如此,如果您需要對許多圖形檔案執行此操作,目錄結構可能會很快變得過於複雜。最好看一下 TikZ 的外部化方法(目前的第 50 章)pgf手動的)。

相關內容