主要透過reveal.js來生成投影片
您可以自己Build,如果不想要建立,可以到release的頁面下下載對應平台的zip檔案,裡面有build完成的執行檔
git clone https://github.com/CarsonSlovoka/slides.git
cd slides
git submodule update --init --recursive reveal.js
git submodule update --init --recursive plugin/guess
git submodule update --init --recursive plugin/marker
# go install -ldflags "-s -w" -tags tmpl # 執行檔GOPATH/bin目錄
go build -ldflags "-s -w" -tags tmpl
建議打包的時候可以包含
-tags tmpl
,他可以將預設的slides.gohtml嵌入使得當您不想要再對樣板修改時,也不在需要提供樣板
拿到此執行檔後,可以將執行檔的位置加入環境變數
接著在你想要的工作目錄,建立三種內容
-
📂 md: 這是一個目錄,裡面放所有你想要投影的md檔案
-
(optional ) 📜 slides.gohtml, 這是一個模板你可以抓取預設的內容後修改, 如果你不想準備此模板,請用
go build -tags tmpl
去生成執行檔注意! slides.gohtml裡面對於md的分隔符號是
\n
,如果你想要改成\r\n
可以調整為data-separator="^\r\n---\r\n" data-separator-vertical="^\r\n----\r\n"
-
(optional ) 📂 assets: 如果你在md之中,有想要用img來加入本地的圖片,可以考慮將圖片路徑保存在此目錄。使用連結
/assets
會自動以此目錄為相對位置開始找尋
啟動上可以直接
slides.exe
slides.exe -port=12345 # port預設用8080, 如果被佔用或者不喜歡可以改成其他,或者指定為0會自動抓取
# 如果你不喜歡把幻燈片都保存在md的目錄,你可以自定義您的目錄名稱,啟動上使用-md來告知
slides.exe -md="mySlides"
或者用https
slides.exe -tls
提供兩種方法
-
使用carsonTseng/slides: 把slides當作image, 所以你還要自己額外寫Dockerfile才可以看到結果,可以參考Dockerfile.example
-
使用carsonTseng/slides-cmd: 好處是你不需要再寫Dockerfile,可以利用綁定掛載(Bind mounts)的方式,來讀取到要被渲染的內容,請參考以下範例
# 使用powershell docker run -p 8080:8080 -e PORT=8080 ` -e MD_DIR="docs" ` # 放到md的所在目錄 -v .\docs:/usr/local/bin/docs ` # 後面的docs需與MD_DIR所指定的目錄相同 -v .\slides.gohtml/:/usr/local/bin/slides.gohtml ` # 可選,如果你需要自定義slides.gohtml也可以告知 -v .\assets:/usr/local/bin/assets ` # 可選(assets目錄,預設就會被當成fs,不需要再加到FS_DIRS去) -e FS_DIRS="pages,static,tmpl" ` # 即 -fs pages -f static -fs tmpl -v .\pages:/usr/local/bin/pages ` # 這些內容對應於 FS_DIRS # 其中的.\docs應該於您目前的工作目錄中能找到 -v .\static:/usr/local/bin/static ` # 同上 -v .\tmpl/:/usr/local/bin/tmpl ` # 同上 --name my-slides-example carsontseng/slides-cmd:v0.2.1
可以參考此commit
裡面製作了一個guessEx的插件
當你製作好plugin之後,可以在工作目錄下建立一個plugin的目錄,將其內容放入即可被程式抓到