LaTeX的宏包選擇的最佳實踐一般都是怎麼找的?

有下面幾種情況

一種情況是不知道有更好的工具:比如我用siunit時候,不知道居然有siunitx宏包。

另一種情況是不知道居然這個也可以弄:比如查淘汰了用法的nag宏包

還有就是載入的冗餘:比如對於amsmath宏包來說,調用該宏包的同時,另外三個與之相關的宏包:amsbsy、amsopn amstext,也自動被載入了。如果我還寫一遍調用amsbsy,就重複了。

所以你們一般是怎麼尋找LaTeX的宏包選擇的最佳實踐的?


TeX Live有個texdoc工具,在我們的努力下,越來越多的人開始用這個東西來查文檔了,無論是包的,系統的,命令行工具的。但是,texdoc是有個GUI工具的:

但是,這個GUI工具,我2009年就看它長這樣,現在都2016年,它還這樣。在下面的這些個按鈕下面關聯的文檔來說,實際上也沒有多大的變化。要查的話還真得用上面第一行的第二個和第三個按鈕。

另外,在我們安裝完TeX Live的話,是有一個總索引的,比如:

C: exlive2016&>ls *html
doc.html index.html

我們可以在doc.html直接在網頁裡面進行搜索。

當然了,現在網路這麼好,還是上stackoverflow上抄代碼去吧。


找宏包可以參考以前的回答:用 TeX 編輯論文時,如何選擇合適的 Packages ?

對於冗餘載入的問題,一般宏包文檔裡面都會講到。例如 AMS 的手冊 一開始就說:

The amsmath package incorporates amstext, amsopn, and amsbsy. The features of amscd and amsxtra, however, are available only by invoking those packages separately.


這個基本沒辦法,只能靠積累和經驗。

最佳實踐應該是一套方法,而不是具體的某個點。所以我心裡的最佳實踐應該是這樣的

網上檢索,找到可用的宏包。

查閱宏包的說明文檔,網上檢索例子,然後自己寫代碼,跑出來。

舉一反三,檢索同一個話題,看看別人怎麼說。

有必要的話,讀宏包代碼。

至於重複載入宏包的問題,這個沒所謂的。


在 Google 上搜索「LaTeX + 英文關鍵詞」,基本前三項就是 stackoverflow,點開之後選擇一個最喜歡的解決方案即可,贊數高的一般都是老司機推薦的,能少走不少彎路。

縮進不會,LaTeX + Indent

頁邊距不會,LaTeX + Margin

偽代碼不會,LaTeX + Algorithm

強行斷行,LaTeX + Force Break Line

文字底色,LaTeX + Text Back Color

文字邊框,LaTeX + Text Frame

公式對齊,LaTeX + Equation Align

。。。。


補充幾點,比較良心的文檔會在接近正文結尾的位置比較實現與自己類似功能的宏包,這一部分可以看一看。另外就是利用宏包內的語言校正一下自己對問題的表述,再次搜索,這樣避免自己語言太富於描述性。剩下的還是老生常談的看文檔,憑經驗吧。


推薦閱讀:

請教在 LaTeX 中使用帶有中文的 PDF 書籤的正確姿勢?
LaTeX 論文中如何畫這種下圖所示4個圖拼接起來的圖?
如何評價 ShareLaTeX?
怎樣才能被稱作是美觀的排版?
為什麼有的出版社使用AI排版,而不是Indesign?

TAG:排版 | 編程 | LaTeX |