最終更新日 2025-06-27

「無題」であっても実行できるようにしたいという場合

無題でもプレビューしたい場合

無題のままMarkdownを記述し続ける、といったシーンはないかと思いますが、
対話AIの返答の一時貼り付け、あるいは、他のファイル用のMarkdown内容を一旦コピーなど、
「無題」のままでもプレビューしたいということもあるかと思います。

無題の時は「HmMermaidSimpleRender」を使う手

「AIからの返答」などを一旦秀丸上で見たいだけ、などといった場合には、
「わざわざファイル名を付けたくない」と思うこともあるかと思います。
こういった場合には、HmMarkdownSimpleRender を利用するのが良いでしょう。

HmMarkdownSimpleSwitcher.mac
if (filename2 == "") {
    execmacro "*** HmMarkdownSimpleRender.macのパス ***";
}
else {
    execmacro "*** HmMarkdownSimpleServer.macのパス ***";
}

といったようなスイッチングマクロを利用するようにすれば、「ファイル名あり」「ファイル名なし」両方で自動的に切り替えられるマクロとなります。

記述例

HmMarkdownSimpleSwitcher.mac
if (filename2 == "") {
    execmacro macrodir + "\\HmMarkDownSimpleRender\\HmMarkDownSimpleRender.mac";
}
else {
    execmacro macrodir + "\\HmMarkdownSimpleServer\\HmMarkdownSimpleServer.mac";
}

「無題→自動的にファイル名」を付けて、「HmMarkdownSimpleServer.macを自動起動」する手

以下のようなマクロファイルを用意して、HmMarkdownSimpleServer.macと同じフォルダに入れよう

手段としては色々な考え方がありますが、
以下のマクロを用意するのは、一つの考え方です。

という処理の流れになっています。

HmMarkdownSimpleServerNoFilename.mac (HmMarkdownSimpleServer.macと同じフォルダに入れる)
jsmode "JScript\\" + currentmacrofilename;

js {

var currentMacroDirectory = currentmacrodirectory();

// 無題の場合だけ発動
if (filename2() == "") {
    // 現在のファイル全文取得
    var text = gettotaltext();

    var tempDir = getenv("TEMP") || getenv("TMP")

    // 一時ファイル保存(0x06=UTF8)
    var saveFilePath = tempDir + "\\HmMarkdownSimpleServerTemp.md";

    // 一時ファイル保存(UTF-8)
    saveas(saveFilePath, 0x06);
}

hidemaru.setTimeout( function() {
    hidemaru.postExecMacroFile( currentMacroDirectory + "\\HmMarkdownSimpleServer.mac" );
}, 0);

}