« Home

tr [tr-0000]

A site generator based on a collection of racket/scribble programs.

下面著手描述這個專案的核心想法

地址唯一性 [tr-0003]

每張卡片應有唯一的地址

生成 embed 與 index HTML [tr-0001]

embed 之間需要按引用關係構造,所以用 topological sort 排序(從 metadata.json 中復原依賴關係)後按順序編譯

通過分成兩階段生成,可以讓 index 引入 embed 的內容

raco tr next 與使用方式 [tr-0002]

raco tr next xxx 生成新的地址,就可以用 code $(raco tr next xxx).scrbl 這樣的方式開啟新檔案

數學支援 [tr-0004]

用 Katex 支援公式,用 LaTeX 支援複雜的圖

LaTeX 工作的獨立標籤 [tr-0006]

每個 address yyy 對 LaTeX 會創造新的相關的 _tmp/yyy/tex3212.tex 之類的檔案,tex3212 是用 gensym 產生。

如此一來 *.tex 檔案可知道自己是哪個 address 產出,如果 source 沒有更新便不編譯。

RSS 與 searching [tr-0005]

利用預先生成的 addr.metadata.json 進一步生成 RSS 與索引資料