コンテンツコンポーネント
<Markdown>、<Code>、<Diff>、<Spinner>、<AsciiFont>。
これらのコンポーネントは、Markdown、コード、差分、大きな文字をセルグリッド上に描画します。
<Markdown>
ストリーミングに対応したMarkdownです。長くなり続ける文字列を渡しても、フレームは安定したままです。
ライブr stream againtsx
const [text, setText] = useState("");useEffect(() => stream.on("token", (t) => setText((s) => s + t)), []);return <Markdown>{text}</Markdown>;<Code>
ts、tsx、json、bash、python、rust、go などの構文ハイライトに対応しています。
<Code code={source} language="tsx" showLineNumbers maxHeight={12} />| プロパティ | 説明 |
|---|---|
language | 言語ID |
showLineNumbers | 行番号欄 |
highlightLines | 色を付ける行 |
maxHeight | 「残りの行」フッター付きの表示切り詰め |
<Diff>
Unified形式の差分、または { before, after } から計算した差分を表示します。
ライブ72×12 · booting Turbolog…tsx
<Diff patch={{ before, after, filename: "app/page.tsx" }} /><Spinner>
種類は dots、pulse、matrix、line、braille(ターミナル向け。Menloには点字グリフがありません)です。一時停止中はタイマーが停止します。
<Spinner variant="dots" label="Building…" /><AsciiFont>
見出し用の大きなピクセル文字です。
ライブ64×11 · booting Turbolog…tsx
<AsciiFont text="▼ TEXT.JS" color="accent" />3行の表示には font="compact" を使います。FIGlet文字の表示には、font={slant} のように @textjs/font のFIGletフォントを渡します。