秀丸で「■が入っている行をHタグで囲む」マクロを作りました

こんにちわ。きみひこです。秀丸がすきです。

表題の件、これだけだと意味が分かりにくいと思うのでマクロの動作例を書きます。

動作例

これが

■りんごとは

リンゴは、バラ科リンゴ属の落葉高木樹。またはその果実のこと。植物学上はセイヨウリンゴと呼ぶ。春、白または薄紅の花が咲く。

■■青森のりんごについて

青森県では、津軽地方に世界でも有数の生産団地が形成されており、現在、全国のりんご生産量の約60%を占める日本一のりんご王国となっています。

■■■赤りんご「ふじ」について

(母親)国光×(父親)デリシャス。果果肉はやや粗めでシャキシャキした食感 を楽しめます。果汁が多く、甘さと酸味のバランスが抜群です。

こうなります

<h2>りんごとは</h2>

リンゴは、バラ科リンゴ属の落葉高木樹。またはその果実のこと。植物学上はセイヨウリンゴと呼ぶ。春、白または薄紅の花が咲く。

<h3>青森のりんごについて</h3>

青森県では、津軽地方に世界でも有数の生産団地が形成されており、現在、全国のりんご生産量の約60%を占める日本一のりんご王国となっています。

<h4>赤りんご「ふじ」について</h4>

(母親)国光×(父親)デリシャス。果果肉はやや粗めでシャキシャキした食感 を楽しめます。果汁が多く、甘さと酸味のバランスが抜群です。

使い方

以下を、任意のファイル名.macで保存して、秀丸のマクロメニューから実行します。

setcompatiblemode 0x0F;

begingroupundo;
replaceall “^(.*■■■.*)$” , “<h4>\\1</h4>”, regular;
replaceall “■■■” , “”;
replaceall “^(.*■■.*)$” , “<h3>\\1</h3>”, regular;
replaceall “■■” , “”;
replaceall “^(.*■.*)$” , “<h2>\\1</h2>”, regular;
replaceall “■” , “”;
if( ! result ) beep;
endgroupundo 1;

秀丸マクロのざっくりせつめい

要所がどんな処理をしているのかのみ、ざっくり解説します。

setcompatiblemode 0x0F;

begingroupundo;
replaceall “^(.*■■■.*)$” , “<h4>\\1</h4>”, regular; ⇒ ■■■の行をH4タグで囲む
replaceall “■■■” , “”; ⇒ ■■■を削除
replaceall “^(.*■■.*)$” , “<h3>\\1</h3>”, regular; ⇒ ■■の行をH3タグで囲む
replaceall “■■” , “”; ⇒ ■■を削除
replaceall “^(.*■.*)$” , “<h2>\\1</h2>”, regular; ⇒ ■の行をH2タグで囲む
replaceall “■” , “”; ⇒ ■を削除
if( ! result ) beep;
endgroupundo 1;

使用上の注意点

タイトル文字の前の「■」を検知して、文字列を置換する仕様です。

本文中に■が出現すると、その行をタイトルタグで囲んでしまうので注意してください。

誤って置換しても、コントロールZで戻せます。

作成のきかっけ

Backlogなどで独自に整形するツールが流行っているので、昔から慣れ親しんでいる秀丸で実現できたら便利だなと思って。

よろしければ、お使いください。

この記事は役に立ちましたか? 役立った 役立たなかった
0 人中 0 人がこの記事は役に立ったと言っています。

★レクタングルWset