Color mode

Search notes

Filter with tag:, lang:, or path:.

レンダラー(Renderer)

レンダラーはコンテンツの対象をプラグイン固有のHTMLに変換します。対象を処理しない場合は null を返し、別のレンダラーに処理を渡します。Canvas、Excalidraw、添付ファイルの描画が例です。

レンダラーの契約

レンダラーは kind、path、raw、label、url、embed を持つ対象と、標準の PluginContext を受け取ります。対象を処理しない場合は null を返し、次のレンダラーが試されるようにします。

レンダラーの型

PluginContentRenderer 型がレンダラーの契約を定義します。

ts
type PluginContentRenderer = {
  kind: string;
  handle(
    target: { kind: string; path: string; raw: string; label: string; url: string; embed?: string },
    context: PluginContext,
  ): string | null;
};

各レンダラーは kind 文字列(例:"canvas"、"excalidraw"、"attachment"、"media")を宣言します。フレームワークは kind で対象をレンダラーに照合し、プラグインは異なるコンテンツ種別用に複数のレンダラーを登録できます。

例

組み込みのレンダラーには、canvas(Excalidraw)、添付ファイル、mediaがあります。Basesやサードパーティの図ライブラリなどの形式向けに、プラグインごとに独自のレンダラーを定義できます。

関連用語

さらに詳しく

Local Graph

Nearby Notes

Open in Explorer →
レンダラー(Renderer)プラグイン(Plugin)コンテンツフック(Content Hook)アイランド(Island)アセット(Asset)エンドポイント(Endpoint)パイプライン(Pipeline)
CurrentOutgoingBacklink