如何讓Sphinx doc支援MathJax公式

2022-09-23 16:51:11 字數 1365 閱讀 6413

實現這個目的難嗎?一點都不難,但是sphinx是以擴充套件的形式來支援mathjax數學公式渲染的,並且坦白地說,它支援的一點都不好。下面是我自己摸索的操作步驟,花了不少時間,因為中英文**上關於sphinx doc支援mathjax的tutorial基本沒有。

1. 直接配置外掛程式即可

按照參考資料2的文件中的做法,我們必須在sphinx doc目錄下的conf.py檔案中的extensions列表裡加上乙個字串:『sphinx.ext.mathjax』

extensions = [

'sphinx.ext.mathjax'

]

加上這個字串之後,使用make html重新編譯web頁面,有一定的概率你的**已經正確地把latex公式渲染出來了。

mathjax_path = ''
2. 使用輔助外掛程式3. 適用於有強迫症的人前兩種辦法已經非常省事了,但是我有強迫症,我既想把js放到本地host上,又不想引入輔助外掛程式。於是我手動去弄:

1)從mathjax的官方倉庫裡下到mathjax最新的release,注意要下3.x版本的。

"version 4.0 changes the version of mathjax used to version 3", 這是sphinx文件裡面的話。包內容大致如下:

2)es5資料夾拷貝到build/_static資料夾下

3)配置mathjax_path為相對路徑"es5/mathjax/tex-chtml.js",其中這個相對路徑是相對於build/_static資料夾的。

「the path can be absolute or relative; if it is relative, it is relative to the_staticdirectory of the built docs.」這也是文件中的話。

別問為什麼用相對路徑,因為絕對路徑不work。

這樣配置好之後,web頁面應該就能正常渲染數學公式了。

其他還踩了一些坑,比如使用mathjax2.x,使用apt-get安裝mathjax,比如es5這個資料夾不放在_static下就不work。當然讀者可以自己嘗試其他更好的做法,只是比較花時間... 還是那句話,sphinx doc其實對於支援mathjax沒有交代的那麼好。

如何讓Expat支援中文XML

剛剛學習使用expat,卻發現expat並不支援中文。後來查詢相關資料,得知expat不支援gb2312編碼格式,主要支援utf 8編碼格式。然而我們在程式中傳遞資料時,往往是用的gb2312格式文字的,於是想找出辦法解決之,想到兩種辦法 1 改寫expat源 這樣效率高,但不方便今後expat 的...

如何讓你的Apache支援https

主要講述在windows下apache配置ssl 以實現http轉換為https ssl ssl是為http傳輸提供安全的協議,通過證書認證來確保客戶端和 伺服器之間的資料是安全。也就是說在ssl下http傳輸是安全的,我們成為https.過程 步驟一 安裝apache,使其支援ssl,並安裝php...

如何讓CI框架支援service層

本文主要介紹了在controller和model中加乙個業務層service,由它來負責業務邏輯,封裝好的呼叫介面可以被controller復用,提高了通用的業務邏輯的復用性,設計到具體業務實現會呼叫model的介面。大家知道codeigniter框架式mvc分層的,通常大家把業務邏輯寫到contr...