quarto-plus チュートリアル
このチュートリアルでは、quarto-plus で .md / .qmd / .adoc を単一サイトに統合する手順を説明します。
前提条件
以下が必要です。
- Quarto 1.3 以降(
quarto renderが動くこと) - Node.js 20 以降(
npm) - Asciidoctor(
.adocを使う場合のみ)
プロジェクト構成
quarto-plus/
_quarto.yml # quarto プロジェクト設定
index.qmd # ランディングページ
docs/ # .md / .qmd
adoc/ # .adoc
themes/ # カスタムCSS
tools/ # パイプラインスクリプト
dist/ # 最終出力(GitHub Pages 用)
手順1: 文書を追加する
docs/ に .qmd や .md、adoc/ に .adoc を置きます。
---
title: "サンプルページ"
---
## セクション
本文ここ。
.adoc の例:
= サンプル
== セクション
本文ここ。
手順2: 依存をインストール
npm install手順3: ビルド
npm run build:all内部では次の順に処理されます。
.adocを asciidoctor で HTML化quarto renderで.md / .qmdを生成- adoc由来HTMLを
build/siteにマージ(上書き優先) - 全ページを見出しID・目次・リンクで正規化(harmonize)
- 画像を内容ハッシュ名で
assets/に集約 - リンク切れを検証(validate)
- 最終成果物を
dist/に出力
手順4: 確認
dist/ をブラウザで開いて確認します。
python3 -m http.server 8000 -d dist手順5: GitHub Pages に公開
.github/workflows/pages.yml が用意されています。main に push すると自動でビルド・デプロイされます。
- GitHub リポジトリの Settings → Pages で「Source: GitHub Actions」を選択
_quarto.ymlのsite-urlを自身の URL に更新
見出しIDの規約
- 見出しは
h2からh6が対象(h1はページタイトル) - ID は
pagePrefix-<slug>形式 - 日本語はかな→ローマ字、未対応漢字は
_にフォールバック - 同一ページ内で重複する場合は
-2,-3を付与
詳しい仕様は ドキュメント と テンプレートライブラリ を参照してください。