LaTeX技巧935: Sublime Text 下的 LaTeX 及高級應用

Sublime Text 是一個很好的文本編輯器,它的各種方便的功能以及優美的代碼高亮讓人心曠神怡,相較于其他的編輯器還具有打開速度快的特點,使其在文本編輯器中占有一席之地。那么在 Sublime Text 中如何編輯、編譯 LaTeX 呢?又如何將其配置成超越 IDE 的神器呢?本文就是介紹這個的。

選擇 Sublime Text 寫 LaTeX 的理由

  • 優美的代碼高亮

  • 高效的代碼補全

  • 便利的自定義補全

  • 強大的快捷鍵

  • 近乎完美的輔助周邊——如集成 Detexify、清理輔助文件、字數統計、跳轉打開宏包說明文檔、雙向搜索

  • 公式、插圖的實時預覽

    Preview.gif

  • 列舉環境下自動補全(Shift+Enter)\item 等信息。Item.gif

  • 引用時的自動補全(交叉引用、參考文獻、宏包均支持)

  • 環境的自動擴展與快速修改

  • 文本編輯的功能(下劃線、強調、加粗等等)快速完成

  • 便捷的自行搭建多發行版

  • 完善的魔術注釋生態

下載列表清單

開始搭建

安裝 Sublime Text

官網下載后雙擊執行,基本沒什么要注意的。注:Sublime Text 是收費軟件,但是試用版享有所有的功能,只是偶爾彈出購買的對話框,相較于大多數收費軟件算十分良心了。

安裝 Package Control

依次點擊 Tools -> Install Package Control,或者參考官網給出的兩種方法。

插件安裝

Control+Shift+P,輸入pcip(找到Package Control: Install Package),回車后,輸入LaTeX,找到待安裝的插件—— LaTeXTools、LaTeX-cwl、LaTeXYZ 等等,依次敲回車后進行安裝。

注意:

  • 插件安裝后需要重啟Sublime Text 方能生效,尤其是安裝 Package Control 后。

  • 在安裝 LaTeXTools 之前需要安裝有 TeX 發行版,如 MikTeX、TeXLive 等。安裝好該插件后可以依次點擊 Preferences -> Package Settings -> LaTeXTools -> Check System 來對環境進行檢測。

關于插件的功能,之后會再提到。

安裝 Sumatra PDF

官網下載后執行安裝。

接下來是配置 Sumatra PDF 用于反向搜索:

  • 由于最新版本的 Sumatra PDF 關閉了直接設置反向搜索選項功能,所以我們需要先編譯一個簡單的 tex 文檔,然后才能夠進行配置。

    測試樣例如下,將其復制粘貼后命名為 test.tex (只要名字不含中文均可),然后將其編譯(在 Sublime Text 中按 Ctrl+B)。

    \documentclass{article}\begin{document}  Hello, \LaTeX{}.\end{document}

    接下來用 Sumatra PDF 打開生成的 PDF,然后點擊左上角,找到設置,然后點擊選項,在最下方添加以下字符:

    "C:\Program Files\Sublime Text 3\sublime_text.exe" "%f:%l"

    如圖所示。

    Sumatra_PDF.jpg

  • 你也可以用命令行執行以下代碼以完成配置(未測試過此方法是否仍然可行)

    sumatrapdf.exe -inverse-search "\" C:\Program Files\Sublime Text 3\sublime_text.exe\ " \"%f:%l\""

    想來,直接在高級選項中添加如下代碼應該也是可以的

    InverseSearchCmdLine = "C:\Program Files\Sublime Text 3\sublime_text.exe" "%f:%l"

注:不論哪種方法,你都需要將 Sublime text 的安裝路徑改成你自己的安裝路徑。至此,你就可以在 Sumatra PDF 中點擊跳轉到相應的代碼了——不管該代碼是否在 Sublime Text 中打開。

安裝 ImageMagick & GhostScript

這一步是為了實現行間公式和插圖的實時預覽。

  • 安裝 ImageMagick這一步需要注意的是,必須勾選上兩個:添加系統環境變量、安裝實用工具,如圖所示:ImageMagick.jpg

  • 安裝 GhostScript官網上下載后安裝。

    至此,你就可以享用在 TeX 環境下由 LaTeXTools 插件帶來的在線查看行間公式以及插圖的功能了。

    注:如果在使用過程中,出現了某一個實時預覽不消失的情況,請點擊Ctrl+Shift+P 后輸入lcc 找到 LaTeXTools: clear cache 清除一下緩存。

LaTeXTools 高級應用

設置

依次點擊Preferences -> Package Settings -> LaTeXTools -> Settings-User可以打開設置文件.

亦可以在官網上查看

設置文件里面的注釋說得很清楚,基本上可以讓懂得英語的人看懂每一項設置是什么。

設置文件分為以下幾個部分——

  • 通用設置:參考文獻、交叉引用等常用功能的監視器與觸發器開關

  • 預覽設置:與數學公式、插圖相關的設置

  • 輔助文件設置:指明哪些是輔助文件,以確認在使用Ctrl+L,Backspace時所需清理的輔助文件

  • 平臺設置:與平臺相關的設置,如發行版路徑、發行版類型、終端平臺、編輯器平臺等等

  • 輸出目錄設置:日志之類的文件輸出設置

  • 構建器設置:一般不涉及,使用默認即可

  • 構建面板設置:錯誤、警告信息相關設置

  • 閱讀器設置:默認值與平臺相關

  • 可于代碼中打開的文件類型設置:主要用于插圖時的提示

  • 參考文獻設置:如使用 BibTeX 還是 BibLaTeX,參考文獻應用時格式的自動生成等

  • 緩存選項

這里只提點兩個地方

  • “texpath” 用以發行版的指定路徑,如果自己要用兩種發行版的話,這里不能指定,留空即可,系統會自動添加 $Path 參數。

  • “distro” 用以指定發行版類型,默認為MiKTeX,TeXLive 用戶最好指定一下,以消除 Check System 中不必要的參數。

常用快捷鍵

所有的快捷鍵都可以在 Sublime-keymap 中找到,亦可以去官網查看。LaTeXTools.jpg

注意:

  • 在使用時,鍵盤須是英文狀態。

  • 快捷鍵大多數是以 ctrl+l 開始的。

  • Mac 下請將 ctrl 換成 command

自動補全

LaTeXTools 插件為常規文本和數學文本提供了相當豐富的自動補全功能,這些自動補全都以 Tab 鍵作為觸發。你可以在 LaTeXTools 插件的安裝目錄里面看到LaTeX.sublime-completionsLaTeX math.sublime-completions,這兩個文件分別定義了常規文本模式下和數學模式下的自動補全,它們都以 Tab 鍵作為觸發。

  • 在數學模式下,主要提供的是希臘字母的自動補全。

  • 在常規文本下,提供了常用環境的簡寫以實現補全功能。

自定義自動補全

我們可以仿照 LaTeX.sublime-completions 的模式,添加自己所需要的自動補全。如添加以下一行

{ "trigger": "befr", "contents": "\\begin{frame}{$1}\n$0\n\\end{frame}"}

就可以實現在 Sublime Text 中輸入 befr 后按 Tab 就自動擴展為后面的內容了。注意:$后數字越大,光標先出現在那兒,按了 Tab 后光標會按數字降序移動。

此外,Shift+Enter 也為我們提供了一個非常好的功能,那就是當光標所處環境為 itemize、enumerate 時,自動添加\item,而如果只是敲Enter 則僅有為文本編輯器自帶的換行功能——即換行加縮進,如果環境為description,則會添加、item[],這個無疑為列舉環境的快速書寫提供了很大的便利。

修改編譯選項與多發行版的集成

在 LaTeXTools 包文件中用 Sublime Text 打開 LaTeX.sublime-build。以下是經我修改過的一段配置文件

{  "name": "TL - XeLaTeX",  "builder": "basic",  "program": "xelatex"},

namebuilderprogram 均是默認參數,name 用以指定編譯選項中的名稱,program 用以指定最終執行的編譯引擎,這些引擎均是可以在系統環境變量 Path 下可以找到的編譯引擎。

如何進行多發行版的配置呢?只需要添加一個參數 builder_path, 以下是我修改過的一部分配置文件,這樣在我使用 Ctrl+Shift+B 后,就可以出來兩個選項 —— TL - XeLaTeXMiK - XeLaTeX經檢測(編譯后查看.log文件)是可以實現多發行版的指定的。

{  "name": "TL - XeLaTeX",  "builder": "basic",  "builder_path":"C:\\texlive\\2018\\bin\\win32",  "program": "xelatex"},{  "name": "MiK - XeLaTeX",  "builder_path": "C:\\MiKTeX\\miktex\\bin\\x64",  "program": "xelatex"},

需要注意的是,json中路徑要么用/,要么用\\

魔術注釋

很多編輯器支持魔術注釋,Sublime Text 亦不例外,到目前為止,支持多種魔術注釋。

  • 編譯引擎指定,這個是有提示的,支持所有的編譯引擎。

% !TEX program = xelatex  (pdflatex,lualatex...)
  • 文件編碼指定為UTF-8,支持幾乎所有的編碼

% !TEX encoding = UTF-8  (utf8)
  • 編譯選項指定,如在使用 minted 時需要添加這個。

% !TEX options = --shell-escape
  • 主文件指定,在使用input、include導入文檔時用這個指定主文件,實現在其他文件界面時編譯的文件是主文件。

%!TEX root = <master file name>
  • 拼寫檢查,設置Sublime Text中集成的拼寫檢查器的語言。

%!TEX spellcheck

其余的魔術注釋請參考可以參考官方文檔

其他 feature

其他 feature,均可去 官方文檔中查詢到,此處不再贅述。基本都可以在Ctrl+Shift+P后輸入LaTeX后找到。

LaTeXYZ 簡介

LaTeXYZ 提供了更多的數學環境下的自動補全,諸如各種箭頭符號、帶定界符的括號等的快捷輸入。官方說明里面有更多的信息。LaTeXYZ.gif

LaTeXYZ 和LaTeXTools 自帶的補全有相同的地方 —— 都是用 Tab 進行擴展觸發,但是也有不同的地方,LaTeXYZ 提供了不少以 ` 開始的自動補全,如分數(\frac)為 `+/。

總之,LaTeXYZ 提供的數學環境自動補全支持還是挺好的。當然除了當在數學環境下選中某些字符,試圖添加"{}",結果變成了"\{ \}"外。

分享到:
未經允許不得轉載:LaTeX技巧935: Sublime Text 下的 LaTeX 及高級應用
已有 條意見

    最新文章

    加載中...
      本站提供專業LaTeX排版、咨詢、定制服務,請點擊下圖咨詢詳情


      全國首個精品的LaTeX視頻教程,大牛帶著你入門,讓LaTeX學習不再糾結,請點擊下圖咨詢詳情

      熱門評論

        聯系我們

        交流QQ群:91940767
        本站QQ號:343083553
        郵箱聯系[email protected]
        淘寶店鋪latexstudio.taobao.com 提供排版,模板定制,培訓,圖片處理,視頻教程等LaTeX服務。


        如果您投稿或者希望加入我們團隊,請發送您的簡歷到[email protected]

        科技藝術的完美融合,專業精致的排版體驗

        聯系我們聯系我們
        快乐飞艇哪里开的