TATEmd — 縦書き Markdown プレビュー(VSCode 拡張)

Markdown ファイルを 縦書き でリアルタイムプレビューし、絵巻 PDF(横長1枚) として書き出せる VSCode 拡張です。
tatemd の変換コア(renderToTypesettingHtml)と縦書き CSS を直接再利用しています。

機能
- 縦書きプレビュー — Markdown を和文組版の縦書き(
writing-mode: vertical-rl・右から左)でレンダリング。エディタの編集に追従してリアルタイム更新(150ms デバウンス)。本文は差分更新するので、更新時に白くちらつかない。
- 編集位置に追従 — エディタでカーソルを動かすと、プレビューがその位置までなめらかに自動スクロール(横スクロールで中央寄せ)。長い原稿でも「いま書いている場所」を見失わない。
- 横スクロールで読める — 縦書きは右から左へ伸びるため、プレビューは横スクロールで先頭(右端)から読み進められる。
- 本物の縦書き組版 — 禁則処理・英数字の整列・約物はブラウザネイティブ CSS に委譲。傍点(
*強調*)や見出し・引用・リスト・水平線も縦書きで自然に表示。文字色は読みやすい濃い墨に固定(エディタテーマに左右されない)。
- 絵巻 PDF 書き出し — 本文を既定ブラウザで開き、そこから「PDF で保存」すると**横に長い一枚(絵巻物スタイル)**の PDF になる。文字は画像化せず選択可能。
- Web 版と同じコア — tatemd の Web 版・CLI と同一の変換ロジック/CSS を共有。見た目が揃い、挙動も一貫。
インストール
VS Code Marketplace
- 拡張ビュー(
Ctrl+Shift+X / Cmd+Shift+X)を開く
- 「TATEmd」で検索してインストール
Open VSX(VSCodium など)
Open VSX のページ からインストール、または拡張ビューで「TATEmd」を検索してください。
手動インストール(.vsix)
Releases から .vsix をダウンロードし、次のいずれかで導入します。
使い方
- Markdown ファイルをエディタで開く
- 以下のいずれかの方法でプレビューを開く
- コマンドパレット(
Ctrl+Shift+P / Cmd+Shift+P)から「TATEmd: 縦書きプレビューを開く」を実行
- エディタ右上のタイトルバーの本(📖
$(book))アイコンをクリック(Markdown ファイルのときのみ表示)
- エディタで編集するとプレビューが自動で更新され、カーソル位置まで自動スクロールします(150ms デバウンス)
- 絵巻 PDF として保存したい場合は、コマンドパレットの「TATEmd: 絵巻 PDF を書き出す(横長1枚)」、またはタイトルバーの PDF(
$(file-pdf))アイコンを実行
開発(ローカルビルド)
cd vscode-extension
npm install
npm run build # out/extension.js と media/vertical.css を生成
npm run typecheck # 型チェックのみ(出力なし)
デバッグ起動(F5)
- VSCode でリポジトリを開く
vscode-extension/ ディレクトリを開いた状態で F5 キーを押す
- 拡張開発ホストウィンドウが起動し、拡張が読み込まれる
あるいは .vscode/launch.json に以下を追加することで vscode-extension/ から直接起動できます:
{
"version": "0.2.0",
"configurations": [
{
"name": "拡張機能を実行",
"type": "extensionHost",
"request": "launch",
"args": ["--extensionDevelopmentPath=${workspaceFolder}"],
"outFiles": ["${workspaceFolder}/out/**/*.js"],
"preLaunchTask": "npm: build"
}
]
}
公開(メンテナ向け)
ext-v* タグ(例: ext-v0.0.1)を push すると、GitHub Actions
(.github/workflows/publish-extension.yml)が VS Code Marketplace と Open VSX の
両方へ公開します。手動実行(workflow_dispatch)も可能です。
ライセンス
MIT — 詳細はリポジトリルートの LICENSE を参照してください。