---
# System prepended metadata

title: LaTeX+vscode 環境架設

---

# LaTeX+vscode 環境架設

如題。這篇文章是關於架設 LaTeX 及 vscode 的整合環境的教學。作業系統為 Windows 10 & 11。

## 軟體

- vscode : 1.71
- MikTex : 24.1
- Strawberry Perl : 5.32.1.1

## 流程

1. **安裝 vscode & extension**
    - 安裝 vscode。(https://code.visualstudio.com/download)
    - 安裝 Extention: LateX Workshop。
    ![Untitled](https://hackmd.io/_uploads/SkMS9OjR0.png)

2. **安裝 MikTex 環境**
    1. 前往 https://miktex.org/download ，進行安裝。
    安裝包含了 LateX 編譯器以及自帶的文字編輯器。
    2. 搜尋打開應用程式 MikTeX Console，於 Overview 中點擊 Check for updates。
        ![螢幕擷取畫面 2022-09-03 181027](https://hackmd.io/_uploads/ByCZi_oAR.png)
    3. 於 Updates 中點擊 Update now
        ![螢幕擷取畫面 2022-09-03 181259](https://hackmd.io/_uploads/BJ_rous0A.png)
    4. 可於 Packages 中安裝之後會用到的 packages。 (亦可不安裝，因為後面在編譯時會自動詢問是否安裝相應的 package)
3. **安裝 Strawberry Perl**
    安裝 Strawberry Perl ( MikTeX 環境必要 )。
    https://strawberryperl.com/
4. **確認環境變數**
    確認環境變數 (以下為小編電腦的位置)。
    - C:\Users\\\*\AppData\Local\Programs\MiKTeX\miktex\bin\x64\
        - (很多 .exe)
    - C:\Strawberry\perl\bin
        - (perl.exe)
    
    可在終端機測試是否啟用成功：
    ```shell
    $ xelatex --version
    $ perl --version
    ```
    若以上兩條指令都沒有報錯，則表示安裝成功。
5. **測試**
    1. 建立一份 .tex 檔案
        ![Untitled](https://hackmd.io/_uploads/HygJpOjRC.png)
    2. 複製貼上下面這份 code，先測試一下基本英文編譯功能。

        ```latex=
        \documentclass{article}
        \usepackage[utf8]{inputenc}

        \begin{document}
        abc
        \end{document}
        ```
    3. 儲存檔案後，點擊右上方的綠色三角形，看著下方的 Build 圖示轉圈圈~
        ![螢幕擷取畫面 (139)](https://hackmd.io/_uploads/HyOZaOsAA.png)
    4. 接著，沒意外 Build 會變成一個打勾圖示，並且生成一堆檔案。仔細看就會發現其中一個是 pdf 檔，沒錯，那就是編譯好生成的文件，點擊右上角的閱覽圖示，即可用分頁檢視該文件。至於其他的檔案，現階段都可不用理會，刪掉也沒問題。
        ![螢幕擷取畫面 (140)](https://hackmd.io/_uploads/rkMB6djAR.png)
        ![螢幕擷取畫面 (141)](https://hackmd.io/_uploads/HyfUTuoAC.png)
    5. 添加中文 Package：
        你會發現，如果檔案中出現中文，它就無法編譯了。下面是一個測試檔。(中文字型需要用到xeCJK package)。
        ```latex=
        \documentclass{article}
        \usepackage{xeCJK}
        \usepackage[utf8]{inputenc}
        \setCJKmainfont{標楷體}

        \begin{document}
        \noindent
        abc 我好帥。
        \end{document}
        ```
        如此會直接報錯 (Build 會變成一個小叉叉)。
        ![Untitled](https://hackmd.io/_uploads/Sy7Rpdi00.png)
        這個問題是因為你的預設編譯器它看不懂中文，所以此時你就必須更換不同的編譯器了。於測欄中找到 TEX 圖示，然後點進去。點開第一個 Build LaTeX project，你就會看到有很多綠色三角形。這些全部都是不同的編譯器，一般來說點擊第四個 Recipe (xelatex) 的綠色三角形就能順利編譯英文以外的文字了。
        ![Untitled](https://hackmd.io/_uploads/S1BfRuiAA.png)
        到此，基本上就沒啥問題了。編譯時它可能會跳出視窗叫你安裝一些 package ，這時就直接點安裝就行了。如果你發現 Build 圖示一直在轉圈圈，很可能是你沒有同意安裝 package 的視窗。
6. **自動以支持中文編碼的編譯器編譯**
    為了省事，我們可以讓 vscode 知道要將檔案以可以編譯中文的 xelatex 來編譯，以下是兩種方法。
    ### 方法一、變更 vscode 設定檔 (推薦)
    找到 vscode 模組設定檔的位置，一般會在如
    ```
    C:\Users\*\AppData\Roaming\Code\User\settings.json
    ```
    進入後加入/修改設定檔 如下
    ```json
    "latex-workshop.latex.tools": [{ 
            "name": "latexmk", 
            "command": "latexmk", 
            "args": [ 
                    "-xelatex", "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%" 
            ] 
    }],
    ```
    此方法若要換回預設就必須將此修改復原
    ### 方法二、Magic comments
    所謂的 “Magic comments”，是一種特殊的註解文字，如下:
    ```latex
    % !TeX program = xelatex
    ```
    只要在 .tex 檔案的開頭加上這段註解，vscode就會在編譯時自動切換到上面說到的第四種編譯器。不過要注意的是，LaTeX Workshop 在 v8.23.0 以後禁用了 Magic comments，所以如果你發現沒效果你就必須依照以下步驟進行操作。
    
    步驟如下：
    1. 快捷鍵 Ctrl+Shift+P 搜尋找到 Preferences: Open User Settings (JSON)
        ![Untitled](https://hackmd.io/_uploads/rkT5JtsAR.png)
    2. 點擊進入檔案，並於檔案中加入以下設定(記得符合 JSON 檔案格式)，然後儲存。
        ```json
        "latex-workshop.latex.build.forceRecipeUsage": false
        ```
        ![Untitled](https://hackmd.io/_uploads/Sy2Tyto0A.png)
        
    接下來就如同之前所述，於文件開頭加上 Magic comments，之後 Ctrl+S 或點擊右上方的綠色三角形，vscode 就會自動以 xelatex 進行編譯。
    ![Untitled](https://hackmd.io/_uploads/BkmylFjCC.png)



