【!Mode::】解決編碼導致的 LaTeX IDE 中漢字亂碼的問題

0x00 前言

最近想試着用LaTeX寫寫作業,也是爲了方便未來寫論文的時候可以不那麼手忙腳亂,
從IDE開始就陷入了選擇困難,最終選定使用 CTex 和 TeXStudio 這兩者,
CTeX 一直沒有更新過了,是官網的那個 CTeX_2.9.2.164_Full.exe (1.31G)
TeXStudio 則用的是 texstudio-2.12.14-win-qt5.exe (74.2M)

而說到爲什麼我裝了 CTeX 還要裝 TeXStudio,就開始進入正題了——
因爲我當時手頭有個模板 CTeX 打開跑不起來!我就裝了一個 TeXStudio 就跑起來了……
事後才發現是編碼問題:

  • CTeX 默認採用和 Windows 系統一致的 GB2312 編碼
  • TeXStudio 默認採用最廣爲使用的 UTF-8 編碼
  • 用 Notepad++ 打開模板之後發現,原來模板是 UTF-8 編碼的

0x01 代碼層面解決方案

其實 CTeX 也是可以處理 UTF-8 編碼的,但是你得告訴它你讓他讀的這個文件是 UTF-8 的才行。

我們可以在 .tex 文件的開頭加一行,用來告知 CTeX 這個文件是用 UTF-8 編碼的,
這個操作是不是很眼熟?Python 裏面也有 # coding: utf-8 這樣的操作,
TeX 裏的其實差不多,也是需要在代碼首行寫上 % !Mode:: "TeX:UTF-8" ,形似 :

% !Mode:: "TeX:UTF-8"
\documentclass[11pt]{article}
\usepackage[a4paper]{geometry}
\geometry{left=2.0cm,right=2.0cm,top=2.5cm,bottom=2.5cm}

這樣一來,就可以在 CTeX 里正確的讀取執行使用 UTF-8 編碼的文件啦!

0x02 IDE層面解決方案

既然 “默認” 按照某種編碼方式來讀入,那麼我們修改掉這個 “默認” 不就好啦。

這裏我主要還是想要向比較主流(主流的意思是組裏的學長們都在用)的 CTeX 看齊,
所以就倒騰一下 TeXStudio,讓它在 GB2312 和 UTF-8 編碼時都可以和 CTeX 對齊。
(其實就是我喜歡 TeXStudio 的右側預覽功能,原因也簡單 —— 就是好看!)

那麼 TeXStudio 的默認編碼修改其實也簡單:
Option -> Configure TeXstudio -> Editor -> Default Font Encoding
選項 -> TeXstudio 配置 -> 編輯器 -> 默認編碼
Configure TeXstudio

0x03 碎碎念

剛上手 LaTeX,感覺是真的有點複雜,對於按照自己的理解寫的東西也不知道對不對,
如果有哪裏不對或者是需要補充說明的地方請各位不吝賜教,非常感謝~

0xFF IDE界面

爲了給還沒有開始 LaTeX 學習的小夥伴做個簡單的介紹,
把自己手頭有的 TeXStudio 和 CTeX(WinEdt) 的界面給大家展示下好啦
順帶一提:右側的PDF生成預覽,都是這倆IDE自帶的,裝了就有。

TeXStudio
CTeX

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章