概要
Quarkdownは 多機能なMarkdown拡張 による組版システム。 書籍・スライド等への多様な出力 が可能。 スクリプト機能 や関数定義をMarkdownで実現。 高速コンパイル とライブプレビュー対応。 多様なターゲット・比較・導入方法 も明確。
Quarkdownとは
- Quarkdown は、 Markdownベース の最新組版システム。
- 柔軟性 を重視し、 書籍やインタラクティブなプレゼンテーション を簡単に作成可能。
- Turing完全な拡張Markdown で、強力な自動組版を実現。
- CommonMarkやGFM の拡張として誕生し、 関数や追加構文 を導入。
- 標準ライブラリ により、レイアウト、I/O、数式、条件分岐、ループもサポート。
- 独自関数や変数の定義、ライブラリ作成も可能。
- 例:
.function {greet} to from: **Hello, .to** from .from!
- 例:
- スクリプト対応 で、従来Markdownでは困難な動的コンテンツも実現。
- ライブプレビュー や 高速コンパイル に対応。
主なターゲットと出力形式
- HTML: 標準対応
- プレーン出力: デフォルト
- スライド: reveal.js連携
- ページ組版(書籍・記事): paged.js連携
- ページ組版にはWebサーバーが必要(
-pオプション)
- ページ組版にはWebサーバーが必要(
- PDF: HTMLサポート機能すべて対応
- 詳細はWikiのPDFエクスポートページ参照
- 出力形式の指定:
.doctype {slides}や.doctype {paged}関数で制御
他システムとの比較
- Markdown, LaTeX, Typst, AsciiDoc, MDX との比較
- 簡潔さ・可読性: Markdown/Typst/AsciiDoc/MDX/Quarkdownは◎、LaTeXは×
- ドキュメント制御: Quarkdown/LaTeX/Typstは◎
- スクリプト対応: Quarkdown/Typst/MDXは◎
- 書籍・記事出力: Quarkdown/LaTeX/Typst/AsciiDocは◎
- サードパーティプレゼン対応: Quarkdown/LaTeX/Typst/AsciiDocは◎
- 学習コスト: Quarkdown/Markdown/AsciiDoc/MDXは低め
- ターゲット: QuarkdownはHTML/PDF両対応
構文例
- Quarkdown構文 例
.tableofcontents目次生成# Sectionセクション1. **First** item番号付きリスト.center中央寄せ.row alignment:{spacebetween}画像横並び配置
- LaTeXとの比較 も容易
導入方法
- 最新版のquarkdown.zip をダウンロードし、解凍
- binディレクトリ に実行ファイル
- PATH登録 でコマンド利用が容易
- lib/qmdディレクトリ にライブラリ格納
- Java 17以上 が必須
- 主要OSすべて対応
プロジェクト作成
quarkdown create [ディレクトリ]でプロジェクトウィザード起動- メタデータ・初期コンテンツが自動生成
- Wikiで詳細参照可能
- 手動で.qmdファイル作成 も可能
コンパイル方法
quarkdown c file.qmdでコンパイル、出力ファイル生成- 複数ファイル構成 の場合はルートファイルを指定
- 他ファイルのインクルード も可能
- REPLモード (
quarkdown repl)で対話的に試行
主なオプション
-p, --preview: コンパイル後自動リロード、Webサーバー起動-w, --watch: ファイル変更時自動再コンパイル--pdf: PDF出力-o <dir>, --output <dir>: 出力ディレクトリ指定-l <dir>, --libs <dir>: 外部ライブラリディレクトリ指定-r <renderer>, --render <renderer>: レンダラー指定(html/html-pdf等)--server-port <port>: Webサーバーポート指定(デフォルト8089)--pretty: 出力コードを整形(デバッグ向け)--clean: 出力ディレクトリ初期化(破壊的操作)--strict: エラー時即終了(通常は文書内にエラー表示)--no-media-storage: メディアストレージ無効化-Dloglevel=<level>: ログレベル設定
モックドキュメント
- Mock はQuarkdownで書かれた 視覚要素集
- mockディレクトリ にソース、
quarkdown c mock/main.qmd -pでコンパイル - 全テーマ組み合わせのPDF も生成・公開
コントリビューション
- 貢献歓迎
- CONTRIBUTING.md参照で IssueやPull Request による貢献方法を確認
スポンサー
- プロジェクト支援者へ特別感謝
コンセプト
- ロゴ はMarkdownアイコンをベースに、 Quarkdownの多機能性とカスタマイズ性 を象徴
- 回転する矢印 で進化・拡張性を表現
- 惑星に見えるが実はダウンクォーク (down quark)をモチーフ
- ダウンクォーク は物質の基本構成要素であり、Quarkdownの 根本思想 を体現