Files
md_reader/README.md

136 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# MD Reader
Markdown 文件閱讀器,支援 Mermaid 圖表、PDF 匯出,原生視窗預覽。
## 安裝
```bash
cargo build --release
```
## 功能
### 1. Markdown 轉 HTML
```bash
./target/release/md_reader render docs/example.md
# 輸出到 ~/docs/html/example.html
```
### 2. 原生視窗預覽
```bash
./target/release/md_reader preview docs/example.md
```
### 3. 批次轉換
```bash
./target/release/md_reader batch ./docs
```
### 4. PDF 匯出
```bash
./target/release/md_reader export docs/example.md -o output.pdf
# 或使用 render -p
./target/release/md_reader render docs/example.md -p
```
### 5. HTTP 伺服器
```bash
./target/release/md_reader server --port 8080 --path ./docs
```
## 視窗功能
### 工具列按鈕
| 按鈕 | 功能 |
|------|------|
| Print / Save as PDF | 列印或儲存為 PDF |
| Download All SVGs | 下載所有 Mermaid 圖表為 SVG |
| Pan | 滑鼠拖曳平移內容 |
| / + | 縮小 / 放大 |
| Reset | 重置縮放為 100% |
### 終端機命令
`/` 開啟終端輸入框。
| 命令 | 功能 |
|------|------|
| `/help` | 顯示幫助訊息 |
| `/clear` | 清除終端輸出 |
| `/print` | 開啟列印對話框 |
| `/svg` | 下載所有 SVG 圖表 |
| `/reload` | 重新載入頁面 |
| `/zoom [N]` | 設定縮放 (50-200%) |
| `/zoom in``/zoom +` | 放大 10% |
| `/zoom out``/zoom -` | 縮小 10% |
| `/zoom reset``/zoom 0` | 重置為 100% |
### Shell 命令
直接輸入 shell 命令(不帶 `/`)執行:
```bash
ls # 列出檔案
pwd # 顯示目前目錄
cd <dir> # 切換目錄
cat <file> # 顯示檔案內容
```
### Pan 模式
1. 點擊工具列的 `Pan` 按鈕
2. 按住滑鼠左鍵拖曳移動內容
3. 再次點擊 `Pan` 按鈕關閉
### 快捷鍵
| 按鍵 | 功能 |
|------|------|
| `/` | 開啟終端輸入框 |
| `Esc` | 關閉終端輸入框 |
## Mermaid 圖表支援
在 Markdown 中使用 ```mermaid 程式碼塊:
````markdown
```mermaid
graph TD
A[Start] --> B[End]
```
````
支援的圖表類型:
- Flowchart (流程圖)
- Sequence Diagram (序列圖)
- Class Diagram (類別圖)
- State Diagram (狀態圖)
- Entity Relationship Diagram (ER 圖)
- Gantt Chart (甘特圖)
- Pie Chart (圓餅圖)
## 專案結構
```
md_reader/
├── Cargo.toml
├── src/
│ └── main.rs # 主要程式碼
└── docs/
└── mermaid.md # Mermaid 範例文件
```
## 依賴
- Rust 2021 edition
- tao (視窗管理)
- wry (WebView)
- pulldown-cmark (Markdown 解析)
- clap (命令列參數)