下載
請透過 GitHub 抓取最新版本的 Eliza 文件系統:
git clone https://github.com/2460124601/Eliza_doc.git
cd ./Eliza
docker-compose up --build dev
訪問:http://127.0.0.1:8080
此指令將自動建立開發容器,並啟動對應服務。
初始
開始前請於「content」資料夾下建立版本號,可支援多版本,接續在於該本本之資料夾中,建立語系資料夾。例如:
Eliza/
├─ content/ # 內容(Markdown)
│ ├─ v1.0/
│ │ ├─ en/ # 01-overview.md, ...
│ │ └─ zh-TW/ # 01-overview.md, ...
│ └─ v1.4/
│ ├─ en/
│ ├─ zh-TW/
│ └─ jp/
這將產生出1.0與1.4兩種版本,其中1.0將有英文(en)、中文(zh-TW)兩種語言。而1.4將有英文(en)、中文(zh-TW)以及日文(jp)三種。
建立文件
假設目前於「v1.0」>「zh-TW」希望建立文件,建議您先以「index.md」為首份文件,在此處可以說明專案、應用之簡介。隨後其餘文件,建議以數字為開頭,方便於編輯器檢視順序,例如:04-database.md。
假設都於「v1.0」文件夾下,想要建立「zh-TW」與「en」兩種版本,文件名稱需要一樣,才可切換。例如:都取名為 04-database.md 這樣才可建立映射。
檔案名稱不影響路由,但建議為英文並避免空格。
文件必要資訊
一份文件需要包括3樣初始值,包括:title、slug、order。
- title:該頁面主標題,這將自動套用至
<title>與<h1>標籤中 - slug:路由路徑,編譯時會加上編號。
- order:排序
---
title: 你好!世界
slug: hello_word 以當前為例,將會顯示-->xxx.com/zh-TW/v1.0/02-hello_world.html
order: 2
---
slug建議使用ASCII編碼,並搭配駝峰、蛇行命名法。
請注意:如果該篇文章slug沒有對應到其他語系的slug,將無法跳轉。
功能說明
- 靜態頁面:適用於固定內容,例如介紹、條款、教學。
- 動態內容:可擴充以 Scaffold 產生 CRUD 模組與後台管理介面。
系統運作說明
Eliza 內含兩個主要腳本,用於文件生成與本地開發。
| 檔案 | 功能 |
|---|---|
| build.rb | 將 content/ 下的 Markdown 轉換為 HTML,生成靜態網站。 |
| watch_poll_serve.rb | 監看檔案異動、自動重建並啟動本地 HTTP 伺服器。 |
build.rb:文件建置器
此腳本負責將 Markdown 檔案轉換為靜態 HTML,並輸出至 public/ 目錄。
功能概要
- 解析 YAML Front Matter。
- 自動判別語系與版本(如
content/zh-TW/v1/)。 - 生成 H2/H3 目錄(TOC)。
- 產生別名轉址(alias redirect)。
- 清理不再使用的舊 HTML 檔案。
watch_poll_serve.rb:監看與即時預覽
此腳本用於開發階段,持續監看 content/ 與樣板檔案,並在有變更時自動重新建置,同時啟動本地伺服器。
主要用途
- 監看路徑:
content/**/*、template.html.erb、build.rb - 每 0.8 秒比對檔案雜湊變化
- 使用 WEBrick 提供 HTTP 服務(預設埠 8080)