網頁環境
Overleaf
Overleaf 是一個在線的 LaTeX 編輯環境,可以避免在本地安裝和配置的過程,同時還能和他人共享編輯
本地環境
TeX Live
TeX Live 可以利用鏡像安裝節省下載時間
可以在安裝 TeX Live 時同時勾選上安裝 TeXworks 前端,然后就可以使用 TeXworks 作為 IDE 來使用了
TeXstudio
TeXstudio 也是一個很好的 LaTeX 編輯軟件,可以直接去官網下載安裝,並且有中文界面
VSCode
個人更喜歡 VSCode,通過安裝擴展並進行相應的配置即可較好的支持 LaTeX,同時還有格式化和自動補全等功能,非常方便
安裝 LaTeX Workshop 擴展
直接在 VSCode 的擴展商店中搜索 LaTeX Workshop 安裝即可
編譯鏈配置
-
默認配置
TeX Live 安裝時會同時安裝
latexmk, LaTeX Workshop 會默認使用latexmk來編譯.tex,無需手動再配置 -
手動配置(可選)
手動配置 LaTeX Workshop,在 VSCode 的配置文件
settings.json中直接手動添加如下代碼:主要參考插件的官方 recipes 配置修改
// 配置編譯鏈,可以根據需要做修改 "latex-workshop.latex.recipes": [ { "name": "xelatex 🔃", "tools": [ "xelatex" ] }, { "name": "pdflatex 🔃", "tools": [ "pdflatex" ] }, { "name": "latexmk 🔃", "tools": [ "latexmk" ] }, { "name": "xelatex ➞ bibtex ➞ xelatex`×2", "tools": [ "xelatex", "bibtex", "xelatex", "xelatex" ] }, { "name": "pdflatex ➞ bibtex ➞ pdflatex`×2", "tools": [ "pdflatex", "bibtex", "pdflatex", "pdflatex" ] } ], // 具體的編譯命令配置 "latex-workshop.latex.tools": [ { "name": "latexmk", "command": "latexmk", "args": [ "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "-pdf", "-outdir=%OUTDIR%", "%DOC%" ] }, { "name": "xelatex", "command": "xelatex", "args": [ "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%" ] }, { "name": "pdflatex", "command": "pdflatex", "args": [ "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%" ] }, { "name": "bibtex", "command": "bibtex", "args": [ "%DOCFILE%" ] } ],
正向同步
正向同步指的是編譯完成后,在 .tex 文件內通過快捷鍵,快速定位到光標位置在 .tex 的對應位置,方便查看 PDF 文件
推薦打開文件修改后,編譯完成后自動正向同步。該功能通過 latex-workshop.synctex.afterBuild.enabled 來控制
"latex-workshop.synctex.afterBuild.enabled": true,
反向同步
反向同步指的是編譯完成后,在 PDF 文件內通過快捷鍵,快速定位點擊部分在 .tex 的位置,方便修改 .tex 源碼
主要參考插件的官方 synctex 配置修改
-
VSCode 內部 PDF 瀏覽器
如果直接使用 VSCode 來瀏覽 PDF,不需要額外設置,可以根據需要修改
latex-workshop.view.pdf.internal.synctex.keybinding來修改反向同步的快捷鍵即可,默認 Ctrl 加鼠標左鍵// 默認 Ctrl 加鼠標左鍵 "latex-workshop.view.pdf.internal.synctex.keybinding": "ctrl-click", -
外部 PDF 瀏覽器
SumatraPDF 是一款流行的小巧方便的免費 PDF 瀏覽軟件。VSCode 支持使用外部的 PDF 瀏覽器來查看編譯后的 PDF 文件,以及反向搜索功能。主要需要如下配置:
// 配置為使用外部 PDF 瀏覽軟件來瀏覽 PDF "latex-workshop.view.pdf.viewer": "external", // 配置外部 PDF 瀏覽軟件的命令行以及參數 "latex-workshop.view.pdf.external.viewer.command": "D:/Program/SumatraPDF/SumatraPDF-3.2-64.exe", // 自行修改路徑 "latex-workshop.view.pdf.external.viewer.args": [ "%PDF%" ],在 SumatraPDF 的設置-選項中設置反向搜索命令行
C:\Users\<user>\AppData\Local\Programs\Microsoft VS Code\Code.exe -g "%f:%l",Code 的路徑應該為完整的絕對路徑
其他可選配置
// 關閉自動編譯
"latex-workshop.latex.autoBuild.run": "never",
// 默認選擇上次編譯鏈
"latex-workshop.latex.recipe.default": "lastUsed"
// 右鍵菜單
"latex-workshop.showContextMenu": true,
// 關閉編譯出錯的彈窗
"latex-workshop.message.error.show": false,
"latex-workshop.message.warning.show": false,
中文支持
該節主要參考 Overleaf Chinese 文檔
推薦使用 XeLaTeX 和 LuaLaTeX 來編譯含有中文字符的 .tex 文件
XeLaTeX 和 LuaLaTeX
- 直接使用
ctexart文檔類即可支持中文 - 或者使用
ctex包來支持中文
參考代碼如下:
\documentclass{ctexart}
\begin{document}
\tableofcontents
\begin{abstract}
這是簡介及摘要。
\end{abstract}
\section{前言}
\section{關於數學部分}
數學、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
這是繁體中文。
\end{document}
或者
\documentclass{xxx}
\usepackage{ctex}
XeLaTeX
XeLaTeX 還可以使用 xeCJK 包來支持中文
參考代碼如下:
\documentclass{article}
\usepackage{xeCJK}
\begin{document}
\section{前言}
\section{關於數學部分}
數學、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
這是繁體中文。
\end{document}
pdfLaTeX
pdfLaTeX 對中文支持不是很好,只用 pdaLaTeX 的話需要引入 CJKutf8 包,並且用 \begin{CJK*}{UTF8}{gbsn} 和 \end{CJK*} 包住所有的中文。
gbsn和gkai是簡體的字體bsmi和bkai是繁體的字體
參考代碼如下:
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK*}{UTF8}{gbsn}
\section{前言}
\section{關於數學部分}
數學、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
\end{CJK*}
\bigskip %% Just some white space
You can also insert Latin text in your document
\bigskip %% Just some white space
\begin{CJK*}{UTF8}{bsmi}
這是繁體中文。
\end{CJK*}
\end{document}
編譯
-
首先
.tex文件名以及路徑盡量不要含有空格以及中文字符 -
在使用
latexmk和 VSCode 的 LaTeX Workshop 時,推薦使用第三個編譯鏈Recipe: latexmk (lualatex)
參考資料
- 【LaTeX Workshop】依賴
- 【LaTeX Workshop】recipes 配置
- 【LaTeX Workshop】synctex 配置
- 【知乎】使用 VSCode 編寫 LaTeX
- 【知乎】Visual Studio Code 配置 LaTeX
- 【Overleaf】Chinese
本文作者: ywang_wnlo
本文鏈接: https://ywang-wnlo.github.io/posts/4f94956.html
版權聲明: 本博客所有文章除特別聲明外,均采用 BY-NC-SA 許可協議。轉載請注明出處!
