サイト検索
作成2026年3月11日Takeshi Takatsudo
zudo-docでの検索の仕組みと設定方法。
検索の仕組み
zudo-docは全文サイト検索にMiniSearchを使用しています。コンテンツファイル(タイトル、説明、本文)から検索インデックスが生成され、単一のJSONファイルとして配信されます。ブラウザがこのインデックスを読み込み、すべての検索をクライアントサイドで実行します — サーバーや外部サービスは不要です。
検索の使い方
検索ダイアログを開くには:
- キーボードショートカット:
Ctrl+K(Windows/Linux)またはCmd+K(macOS) - 検索ボタン:ヘッダーの検索アイコンをクリック
クエリを入力すると結果が即座に表示されます。結果をクリックするとそのページに移動します。
すべての環境で動作
検索はすべての環境で動作します:
- 開発モード(
pnpm dev):検索インデックスはViteミドルウェア経由でオンザフライで生成 - 本番ビルド(
pnpm build):インデックスは静的サイトとともにsearch-index.jsonに出力 - Electron:同じインデックスファイルを読み込み — 特別な処理は不要
💡 Tip
検索をテストするためにビルドする必要はありません。pnpm devですぐに動作します。
ページを検索から除外する
フロントマターにsearch_exclude: true、draft: true、またはunlisted: trueが設定されたページは、検索インデックスから自動的に除外されます。
ページを明示的に除外するには、フロントマターにsearch_exclude: trueを追加します:
---
title: My Internal Page
search_exclude: true
---
💡 Tip
これは変更履歴、インポートされたコンテンツ(例:CLAUDE.md)、検索結果を煩雑にする内部専用ページなどに便利です。
検索機能
MiniSearchは以下を提供します:
- ファジーマッチング:タイポを許容(最大20%の文字差異)
- プレフィックス検索:入力中に結果を検出(例:「conf」は「Configuration」にマッチ)
- フィールドブースティング:タイトルの一致は本文の3倍、説明は2倍にランク付け
- 即時結果:フルインデックスが一度読み込まれ、メモリ内でクエリを実行