秀丸エディタ上で Markdown / Mermaid / MathJax に対応したリアルタイムプレビューを表示するマクロです。 主に、ChatGPTのような対話AIの返答や、GitHubのMarkdownファイルなどを、秀丸エディタに貼り付けて素早くプレビューするために作成されました。
- リアルタイムプレビュー: 編集中のMarkdownがリアルタイムでプレビューに反映されます(約2秒ごとに更新)。
- 多彩な表現力:
- GitHubスタイル: プレビューは使い慣れたGitHub風のCSSで表示されます。
- ローカル画像対応: プレビューしたいMarkdownファイルが保存されていれば、そこを基準とした相対パスでの画像表示に対応しています。
- 簡単導入: 外部ライブラリのインストールは不要です。マクロを配置するだけで動作します(ライブラリはCDN経由で読み込まれます)。
- 秀丸エディタ Ver 9.43.99 以降 (WebView2 対応版)
- WebView2 ランタイム (通常はWindows 11や最新のWindows 10にはプリインストールされています)
- 本リポジトリから以下のファイルをダウンロードします。
HmMarkdownSimpleRender.macHmMarkdownSimpleRender.htmlHmCustomRenderServer.WebView2.js
- ダウンロードした3つのファイルを、秀丸エディタのマクロ用フォルダ(
C:\Users\YourName\AppData\Roaming\Hidemaruo\Hidemaru\Macroなど)に配置します。
- 秀丸エディタでMarkdown形式のファイルを開くか、テキストを貼り付けます。
- マクロメニューから
HmMarkdownSimpleRender.macを実行します。 - エディタの右側にプレビュー用のペインが表示されます。
- テキストを編集すると、自動でプレビューが更新されます。
このマクロは、秀丸エディタのWebView2機能を活用して、以下の流れで動作しています。
HmMarkdownSimpleRender.mac: マクロの起点。WebView2の準備とサーバー役のJavaScript(HmCustomRenderServer.WebView2.js)の読み込みを行います。HmCustomRenderServer.WebView2.js: 秀丸エディタ内でローカルHTTPサーバーを起動します。このサーバーは、エディタ内のテキストをリクエストに応じて提供する役割を持ちます。HmMarkdownSimpleRender.html: WebView2ペインに表示されるWebページ。定期的にローカルHTTPサーバーに問い合わせてエディタの最新テキストを取得し、marked.js,Mermaid,MathJaxを使ってHTMLに変換・描画します。
このプロジェクトは CC0 (Creative Commons Zero) の下に公開されています。ご自由にお使いください。
- 各JavaScriptライブラリをCDN経由で読み込むため、初回利用時やキャッシュが切れた後は、インターネット接続が必要です。
- プレビューの更新は2秒間隔です。キー入力ごとのリアルタイム更新ではありません。
- 非常に長い、あるいは複雑なドキュメントの場合、描画に少し時間がかかる可能性があります。
https://秀丸マクロ.net/?page=nobu_tool_hm_custom_render_browser_all_render
