看板 LaTeX 關於我們 聯絡資訊
上次弄模板已經是兩年前的事了,一開始只是寫給自己和碩班同學使用,所以 不太在意細節,能弄出來就好了… 不過陸陸續續還是發現在 GitHub 上有使用者會默默地給那個專案 Star 或者 Fork 下來自己改,於是趁著前陣子勞動節連假稍微大修了一下(幾乎跟一開 始長得不太一樣了…): - 專案倉庫:https://bit.ly/2YFf3VU - Overleaf:https://bit.ly/2YJ9bLl 初次使用時,先到 ntusetup.tex 下面進行論文相關資訊的設定,至於模板的 選項和主要進入點則是 main.tex 檔案。這次的修改將資料夾結構切得比較清 楚一點,以便 GitHub Actions 的集成,將各個檔案切開之後也比較能夠讓新 手快速進入狀況,並將精力投入在寫作上而不是模板的設定上: ``` ├── back │ ├── appendix-*.tex // 附錄 │ ├── references.bib // 參考文獻 │ └── ... ├── contents │ ├── chapter-*.tex // 論文內容 │ └── ... ├── figures │ └── ... ├── front │ ├── abstract.tex // 摘要 │ ├── acknowledgement.tex // 致謝 │ └── denotation.tex // 符號列表 ├── main.tex // 主文件 └── ntusetup.tex // 模板設定 ``` 在文檔選項的部分,可以在 main.tex 的 \documentclass 中進行設定,這次 修改很大一部分參考了對岸清華大學的模板,使用 kvsetkeys, kvoptions 套 件進行鍵值(key-value)對的處理,比起傳統透過 \DeclareOption 來設定 選項的方式,能夠更方便地處理預設值。 這份模板基於 report 文檔,所以能夠使用他的相關選項,比如雙面印刷時可 以設置 twoside 和 openright 來自動地插入空白頁,使得新章節起頭都在奇 數頁。除此之外,目前提供的可選項有(擺在第一位的是預設值): ``` % 碩士論文 or 博士論文 degree = master | doctor % 中文內容 or 英文內容 language = chinese | english % 字體設定 % - default : 使用標楷體與 Times New Romans (不含粗體) % - template: 使用 Kaiti 與 Times New Romans (含粗體) % - system : 有點雞肋,尚未實作,打算根據不同系統選字體 > " < % - overleaf: 使用 Overleaf 提供的楷體與 Times New Romans fontset = default | template | system | overleaf % 是否插入浮水印 watermark = true | false % 是否插入 DOI 數位標識 doi = true | false ``` 相信對很多人來說,尤其是剛剛入門 LaTeX 的初學者,經常會出問題的就是 編譯環境的建置與安裝,不同系統(macOS, Windows, Linux)搭配不同的發 行版本(MacTeX, MikTeX, cwTeX, cTex, TexLive)又有好幾種編譯環境( pdflatex, xelatex, lualatex...),讓人望之卻步。 所以 Overleaf/ShareLaTeX 的出現無疑是一線曙光,然而免費版本的並不具 備有版本追蹤和回溯功能。由於之前接觸 Docker 技術一段時間,又一直在搗 搞 CI/CD 環境建置,所以我用 GitHub Actions 服務搭配這個模板創建了一 個簡單的自動化編譯與佈署方案: - https://bit.ly/3bcl6ny 可以直接點選 "Use this template" 以模板方式打開這個倉庫,創建自己的 專案,接著只需要在自己的電腦上使用自己喜歡的編輯器進行寫作,當推送上 去時會觸發工作流(workflow)進行編譯與推送,編譯完成會將最新編譯完成 的版本放到 Release 頁面並記錄時間,這樣一來便可以透過 git 管理你的論 文代碼版本,並且不需要在自己的電腦上安裝 LaTeX 也可以編譯出文件… 如果有問題或建議,還請不吝指教 > " < -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.247.1 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/LaTeX/M.1588928606.A.454.html ※ 編輯: Hsins (140.112.247.1 臺灣), 05/08/2020 17:05:46
sppmg: 讚!GitHub actions 部份感覺很強。kv 可以考慮用 expl3 做 05/09 10:02
tzudata: 幫推 05/10 10:30
k010447: 超實用!感謝大師的提供 05/10 21:56
k010447: 想當初寫論文搞了好久 05/10 21:58
Ice9: 好人一生平安! 05/19 06:09
st1009: LaTeX 新手想請問新細明體怎用?我看網路上別人都直接引用 07/01 12:53
st1009: 但我用的時候出現他提示我找不到.... 07/01 12:56
sppmg: 說你的環境,xelatex或pdflatex,是否使用樣板,提供簡易範例 07/01 20:52
st1009: 我用Overleaf xelatex 07/01 21:05
st1009: 沒有使用樣板,不過有從版上台科樣板挖一些設定回去用 07/01 21:07
st1009: #1T1AJG0G (LaTeX) 就是這篇,我挖了他設定中文的方式, 07/01 21:10
st1009: 不過他的設定好像沒有新細明體 07/01 21:13
st1009: #1HTtAF82 (LaTeX) 我參考這篇用\setCJKmainfont{新細明 07/01 21:22
st1009: https://imgur.com/UZZlwcA.jpg 07/01 21:24
st1009: 錯誤訊息是 "新細明體" cannot be found. 07/01 21:26
Hsins: XeLaTeX 可以直接使用系統已經安裝的或是指定路徑下的字體 07/02 07:24
Hsins: Overleaf 支援的字體清單請參考 https://bit.ly/2YRsX7a 07/02 07:27
Hsins: 裡面並沒有新細明體,你可以從列表找相近的字體使用,或者 07/02 07:28
Hsins: 把字體檔放入專案工作目錄下,直接指定檔案使用 07/02 07:30
Hsins: 比如放到工作目錄下的 fonts 資料夾 07/02 07:32
Hsins: \setCJKmainfont[Path=./fonts/]{Ming.ttf} 07/02 07:34
st1009: 謝謝!我試看看 07/02 09:03
sppmg: 如原po,你選含Ming的像 cw* 或 AR PL * 都可。另外細明體 07/02 22:08
sppmg: 最好用英文 MingLiU,曾聽說用中文會找不到(windows下)。 07/02 22:10
sppmg: 新細跟細應該只有差英文字母是否固定間距。 07/02 22:12
st1009: 我的英文要用time new roman所以這樣說好像用細就好了 07/02 22:32
st1009: 我不懂為何我的字的換行跟樣板對不起來,我的字形是直接抓 07/07 11:19
st1009: win裡面的字形檔,邊界設定也一樣,可是我的緒論會換行的 07/07 11:23
st1009: 字跟我樣板不一樣....理論上模板對會一樣對吧? 07/07 11:26
st1009: https://reurl.cc/D9rQed 07/07 11:40
st1009: 上面是我的overleaf和要做的模板,不知道有人可以幫忙嘛Q 07/07 11:44
sppmg: (還沒看)如果沒差很多的話應該正常,因為字元大小不同, 07/07 19:53
sppmg: 一旦 LaTeX 判斷需要換行,那行字距會拉開來填滿行尾。 07/07 19:54
sppmg: 你第二個根本不是LaTeX生成的啊!XD 檔名都 .docx 了! 07/07 19:57
sppmg: office字距是死的,LaTeX字距是活的,甚至還可能縮字體寬度 07/07 20:00
st1009: 原始模板是docx現在希望可以做latex版,希望對方不嫌棄... 07/07 22:14
st1009: 我這樣發論文應該不會太冒險吧... 我想審查人員很難看出差 07/07 22:19
st1009: 別... 為了不害人,如果有過再公開模板上來分享 07/07 22:21
st1009: 總覺得行距怪怪的,每頁莫名多好多行,可是1.5感覺沒錯... 07/11 16:13
st1009: 可能還是乖乖開虛擬機用word寫了...不然會不急(′_ゝ`) 07/11 16:15
st1009: *會不急 -> 來不急 07/11 16:19
sppmg: 你字體多少 07/12 18:06
st1009: 12 07/12 18:27
Hsins: 有額外問題的話發文討論吧,集中在這篇以後的人要找不方便 07/13 15:14
st1009: 好的抱歉,我先再自己研究一下 07/13 20:48
shownlin: 真的很感謝,今年就是用你的模板寫論文的y 08/04 20:29
sarsman: 感謝,省去很多摸索的時間! 11/24 17:24
emeqcoindo: 雖然有點久了,但還是抱持著有問有機會的想法:請問gi 01/05 10:13
emeqcoindo: thub action 中,有一個需要clone 的repository移除了 01/05 10:14
emeqcoindo: ,是否其他替代的方法?感謝 01/05 10:23
diabolica: 感謝 05/29 01:21