Skip to content

craig7351/bookMDViewer

Repository files navigation

Markdown Viewer

繁體中文 | English

一款輕量、完全本機的 Markdown 檢視器與編輯器,支援 Windows、macOS 與 Linux。 以 Tauri v2 打造,使用作業系統內建的 WebView(Windows 用 WebView2、macOS 用 WKWebView、Linux 用 WebKitGTK),而非內嵌整個 Chromium —— 因此 Windows 執行檔僅 約 4 MB,閒置記憶體約 30–60 MB

雙擊任何 .md 檔即可瞬間開啟、漂亮渲染 —— 內建可導覽的章節大綱、程式碼語法高亮、 Mermaid 圖表、可即時預覽的編輯器,以及一鍵匯出成自包含的 HTML 檔。沒有安裝包肥大、 沒有雲端、沒有遙測,全部離線運作。

螢幕截圖

閱讀模式 —— 大綱 + 渲染後的 Markdown

左側的**章節大綱(TOC)**會依文件標題自動產生;點任一項即可跳轉,並會高亮你目前 正在閱讀的章節。

閱讀模式與大綱側欄

編輯模式 —— 即時編輯與預覽

Edit(或 Ctrl+E)開啟分割編輯器。預覽會隨輸入即時更新,左右兩欄同步捲動, 按 Ctrl+S 即可存回磁碟。

編輯模式與即時預覽

功能特色

  • GFM 渲染 —— 表格、任務清單、刪除線(markdown-it)
  • 程式碼語法高亮(highlight.js)
  • Mermaid 圖表 —— 延遲載入,只有文件實際含有 ```mermaid 區塊時才載入, 純文字文件完全不需付出這份成本
  • 大綱 / TOC 側欄 —— 依標題自動建立、捲動時高亮目前章節、可用 Ctrl+\ 收合
  • 即時編輯與預覽 —— 分割編輯器、左右同步捲動(Ctrl+E)、Ctrl+S 存檔, 關閉時若有未存檔變更會跳出確認
  • 匯出 HTML —— 在原檔旁產生單一自包含的 .html,內含大綱側欄、語法高亮的 程式碼,以及內嵌的 Mermaid SVG 圖
  • 即時重載 —— 監看開啟中的檔案,存檔後自動重新渲染
  • 檔案關聯 —— 雙擊任何 .md / .markdown 檔即可開啟
  • 拖放 —— 把 Markdown 檔拖進視窗即可開啟
  • 文件內搜尋(Ctrl+F)、開啟檔案對話框(Ctrl+O)與最近開啟清單
  • YAML front matter —— 開頭的 ---...--- 會渲染成漂亮的 metadata 卡片(標題、description、日期、標籤、Draft 徽章),而非亂掉的分隔線
  • 本機相對路徑圖片 —— 文件中 ![](images/x.png) 會正確顯示
  • 安全 —— 渲染後的 HTML 會經過 DOMPurify 清理並套用嚴格 CSP,打開不信任的文件也不會執行惡意腳本
  • 深色 / 淺色主題跟隨系統設定
  • 外部連結以你的預設瀏覽器開啟

下載

Releases 頁面取得最新版本:

平台 檔案
Windows(安裝版,推薦) Markdown.Viewer_*_x64-setup.exe*_x64_en-US.msi
Windows(免安裝可攜版) Markdown.Viewer_*_x64_portable.exe
macOS(Apple Silicon / Intel) *_aarch64.dmg / *_x64.dmg
Linux *_amd64.AppImage*_amd64.deb*.x86_64.rpm

安裝版會註冊 .md 檔案關聯(雙擊即可開啟);可攜版免安裝即可執行,但不會更改 檔案關聯。所有版本都需要系統內建的 WebView(Windows 11 已預載 WebView2)。

防毒軟體誤報(Windows)

本軟體為開源、且 exe 尚未經程式碼簽章(code signing),Windows Defender 或 SmartScreen 偶爾會把它誤判為 Program:Win32/Wacapew.A!ml 之類的「潛在不需要的 程式(PUA)」。這是誤報而非真的惡意程式 —— 名稱中的 !ml 代表這是機器學習的 推測性判斷,而非病毒特徵碼比對。

  • 建議優先下載「安裝版」,誤報機率通常比免安裝可攜版低。
  • 所有安裝檔都由 GitHub Actions 直接從公開原始碼自動建置,你可自行把 exe 丟到 VirusTotal 驗證(典型誤報的特徵是:數十家引擎中 僅少數報、且都是 !ml / PUA / Generic 這類啟發式名稱)。
  • 若被攔下,可在通知中按「允許 / 還原」,或到 Windows 安全性 → 病毒與威脅防護 → 保護歷程記錄 將它還原。

macOS 首次開啟(重要)

目前 macOS 版尚未經過 Apple 公證(notarization),加上近期 macOS 的安全限制越來越嚴格, 第一次開啟時可能會被系統攔下(出現「無法打開,因為無法驗證開發者」之類的訊息)。 請任選一種方式解除:

  • 右鍵開啟(Ventura 以前):在 Markdown Viewer.app 上按右鍵 →「開啟」→ 再按一次「開啟」。

  • 系統設定(Sonoma / Sequoia):先雙擊一次被擋下後,到 系統設定 → 隱私權與安全性, 找到被阻擋的提示,按 「仍要打開 / Open Anyway」

  • 或用終端機執行一次(清除隔離屬性):

    xattr -cr "/Applications/Markdown Viewer.app"

之後就能正常開啟,不需要每次都做。

Linux 疑難排解

若遇到白畫面、或 libGLESv2.so.2: undefined symbol(常見於不同 GPU/驅動/虛擬機環境), App 已預設停用 WebKitGTK 的 DMABUF 渲染來繞過。若仍有問題,可在啟動前再加一個環境變數:

WEBKIT_DISABLE_COMPOSITING_MODE=1 ./Markdown.Viewer_*_amd64.AppImage

(也可反過來用 WEBKIT_DISABLE_DMABUF_RENDERER=0 還原預設行為。)

鍵盤快捷鍵

快捷鍵 動作
Ctrl+O 開啟檔案
Ctrl+F 文件內搜尋
Ctrl+E 切換編輯 / 預覽
Ctrl+S 存檔
Ctrl+\ 切換大綱側欄
Ctrl++ / Ctrl+- 字型放大 / 縮小(也可用右上角 A+ / A− 按鈕)

啟動參數

md-viewer.exe file.md            # 開啟並渲染
md-viewer.exe file.md --edit     # 直接進入編輯模式
md-viewer.exe file.md --zoom=1.5 # 整體 UI 放大(高 DPI / 無障礙)

開發

npm install
npm run tauri dev

在本機建置執行檔

npm run tauri build

產出(Windows):src-tauri/target/release/md-viewer.exe,以及位於 src-tauri/target/release/bundle/ 的 NSIS / MSI 安裝檔。

跨平台發佈

推送版本 tag,GitHub Actions 會建置 Windows / macOS(Intel + Apple Silicon)/ Linux 安裝檔 —— 外加一個 Windows 可攜版 exe —— 並發佈到 release:

git tag v1.0.0
git push origin v1.0.0

詳見 .github/workflows/release.yml

About

opensource md viewer

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors