Quarkdown:讓 Markdown 不只是 Markdown,輕鬆打造專業文件與簡報!(給台灣初學者的入門指南)
你是不是也覺得 Markdown 很好用,簡單易學,寫筆記、部落格文章都很方便?但你有沒有覺得,Markdown 有時候好像少了點什麼,沒辦法做出更精美的排版,或是更複雜的功能?
今天要介紹一個讓你對 Markdown 刮目相看的工具:Quarkdown。它不只是一個 Markdown 編譯器,更是一個讓你用 Markdown 就能打造專業文件、簡報,甚至是書籍的強大系統。
什麼是 Quarkdown?
簡單來說,Quarkdown 是一個「現代的、基於 Markdown 的排版系統」。它就像是幫 Markdown 打了一劑強心針,讓它擁有更強大的功能,例如:
- 函數 (Functions):沒錯,你可以在 Markdown 裡面寫函數!這代表你可以建立更動態、更複雜的文件。
- 標準函式庫 (Standard Library):Quarkdown 內建了許多好用的函式庫,包含排版、輸入/輸出、數學計算、條件判斷、迴圈等等,讓你事半功倍。
- 自定義功能 (Custom Functions):如果你覺得內建的函式庫不夠用,還可以自己定義函數和變數,打造專屬於你的 Markdown 工具。
Quarkdown 的核心概念是「多功能性 (Versatility)」。你可以用它來:
- 製作印刷品質的書籍 (Print-ready books)
- 打造互動式簡報 (Interactive presentations)
- 輸出成 HTML 或 PDF 等多種格式
總之,Quarkdown 讓 Markdown 不再只是單純的文字編輯工具,而是一個可以用來創造各種專業文件的強大平台。
為什麼要用 Quarkdown?
你可能會想,市面上已經有很多文件編輯工具,例如 Word、LaTeX 等等,為什麼我還要學 Quarkdown?以下是一些 Quarkdown 的優點:
- 簡單易學:Quarkdown 建立在 Markdown 的基礎上,所以如果你已經熟悉 Markdown,就能很快上手。
- 強大功能:Quarkdown 提供了許多進階功能,例如函數、函式庫、自定義功能等等,讓你輕鬆打造複雜的文件。
- 多種輸出格式:Quarkdown 可以輸出成 HTML、PDF 等多種格式,滿足你不同的需求。
- 快速編譯:Quarkdown 的編譯速度非常快,讓你不用花太多時間等待。
- 跨平台:Quarkdown 支援 Windows、macOS、Linux 等主流作業系統。
Quarkdown vs. 其他工具
Quarkdown | Markdown | LaTeX | Typst | AsciiDoc | MDX | |
---|---|---|---|---|---|---|
簡潔易讀 | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
完整文件控制 | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :x: | :x: |
腳本功能 | :white_check_mark: | :x: | Partial | :white_check_mark: | :x: | :white_check_mark: |
書籍/文章輸出 | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: | Third-party |
簡報輸出 | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: | Third-party |
學習曲線 | :green_circle: | :green_circle: | :red_circle: | :orange_circle: | :green_circle: | :green_circle: |
輸出格式 | HTML, PDF | HTML | PDF, PostScript | HTML, PDF, ePub | HTML |
馬上開始使用 Quarkdown
以下是如何開始使用 Quarkdown 的步驟:
1. 安裝 (Installation)
- 到 Quarkdown 的 GitHub Release 頁面 下載最新版本的
quarkdown.zip
。 - 解壓縮
quarkdown.zip
。 - 將
bin
目錄加入到你的系統PATH
環境變數中 (Optional)。 這樣你就可以在任何地方執行quarkdown
指令。 - 確認你有安裝 Java 17 或更高的版本。
個人實作心得:
* 加入 PATH
環境變數可以讓你更方便地使用 Quarkdown,強烈建議這麼做。
* 如果你不確定怎麼設定 PATH
環境變數,可以 Google “設定 PATH 環境變數 [你的作業系統]”,例如 “設定 PATH 環境變數 Windows”。
2. 建立專案 (Creating a project)
Quarkdown 提供了一個方便的專案建立工具,讓你快速建立一個包含基本設定和內容的專案。
- 打開終端機 (Terminal) 或命令提示字元 (Command Prompt)。
- 輸入
quarkdown create [目錄名稱]
,例如quarkdown create my-project
。 - 按照提示輸入專案的相關資訊。
或者,你也可以手動建立一個 .qmd
檔案,然後從那裡開始。
3. 編譯 (Compiling)
- 打開終端機 (Terminal) 或命令提示字元 (Command Prompt)。
- 輸入
quarkdown c [檔案名稱].qmd
,例如quarkdown c main.qmd
。 - Quarkdown 就會編譯你的檔案,並將輸出結果儲存到預設的
output
目錄中。
常用指令選項 (Options)
-p
或--preview
: 啟用自動重新載入功能。如果沒有網頁伺服器正在執行,它會啟動一個伺服器,並在預設瀏覽器中開啟文件。這是瀏覽器中呈現分頁文件所必需的。-w
或--watch
: 監看來源目錄中的檔案,只要有檔案變更就會自動重新編譯。小技巧: 結合
-p -w
實現即時預覽!-
--pdf
: 產生 PDF 檔案。 詳情請參閱 wiki 的 PDF export 頁面。 -o <目錄>
或--output <目錄>
: 設定輸出檔案的目錄。 預設為./output
。-l <目錄>
或--libs <目錄>
: 設定可以載入外部函式庫的目錄。 預設為<安裝目錄>/lib/qmd
。-r <渲染器>
或--render <渲染器>
: 設定目標渲染器。 預設為html
。 可接受的值:html
html-pdf
(等同於-r html --pdf
)
--server-port <port>
: 自訂本機網頁伺服器的連接埠。 預設為8089
。--pretty
: 產生美觀的輸出程式碼。 這對於偵錯或更容易讀取輸出程式碼很有用,但在生產環境中應停用此選項,因為結果可能會受到視覺影響。--clean
: 在產生新檔案之前,刪除輸出目錄的內容。 這是個破壞性操作。--strict
: 強制程式在發生錯誤時結束。 如果不是在嚴格模式下,錯誤會以方塊顯示在文件中。--no-media-storage
: 關閉媒體儲存系統。
錯誤排除指南:
- Quarkdown 指令找不到: 確認你已經將
bin
目錄加入到PATH
環境變數中。 - 編譯錯誤: 仔細檢查你的
.qmd
檔案是否有語法錯誤。可以參考 Quarkdown 的 Wiki 學習更多語法。 - 無法產生 PDF: 確認你已經安裝了必要的 PDF 渲染引擎。可以參考 PDF export 頁面。
實際範例:製作一份簡單的簡報
以下是一個簡單的 Quarkdown 簡報範例:
.doctype {slides}
# 我的簡報
## 第一頁
這是簡報的第一頁。
* 重點一
* 重點二
## 第二頁
這是簡報的第二頁。

將以上內容儲存為 presentation.qmd
檔案,然後執行 quarkdown c presentation.qmd -p
指令,就可以在瀏覽器中看到你的簡報了!
深入學習 Quarkdown
- Quarkdown Wiki: Quarkdown 官方 Wiki 是學習 Quarkdown 的最佳資源,裡面包含了詳細的語法說明、範例程式碼等等。 https://github.com/iamgio/quarkdown/wiki
- Quarkdown 文件: Quarkdown 官方文件提供了更深入的技術細節和 API 參考。 https://quarkdown.com/docs
- Mock 文件: Quarkdown 內建了一個名為 “Mock” 的範例文件,裡面展示了 Quarkdown 的各種功能和用法。 你可以編譯 Mock 文件來學習 Quarkdown。
總結
Quarkdown 是一個強大且多功能的 Markdown 排版系統,它可以讓你用 Markdown 輕鬆打造專業文件、簡報,甚至是書籍。如果你正在尋找一個更強大的 Markdown 工具,那麼 Quarkdown 絕對值得你一試!
參考閱讀
https://github.com/iamgio/quarkdown