BOX 範囲のコピー&ペーストを使いやすくしました。クリップボードのデータを既存のテンプレートに挿入したり、加工して定型的なリストを作ったりするのに便利です。秀丸エディタ v8.40 以降が必須です。
[動作]
・BOX 選択状態で実行すると、BOX 範囲全体を“埋める”ように貼り付けます。
・無選択状態で実行すると、カーソル前後の文字列で“挟む”ように貼り付けます。
・通常の文字列選択状態で実行すると、その範囲が削除され、無選択状態と同様になります。
・ていうか、こんなわかりにくい説明を読んでないでスクリーンショットを見てください。
[ヒント]
・BOX 範囲をコピーしたものを“普通に”貼り付けたいときは、空行にカーソルを置いて実行します。
・秀丸本体の貼り付けコマンドをこのマクロで置き換えたいときは、マクロ冒頭の設定を
#BoxOnly = yes;
にします。コピー元が BOX 範囲である場合に限って“挟む”動作が有効になります。
[設計思想]
このマクロは *貼り付け時の* 範囲選択状態に応じて貼り付け結果が決まります。貼り付け時の選択範囲 (カーソル行) 以外には影響を及ぼしません。
秀丸本体の貼り付けコマンドは *コピー時の* 範囲選択状態に応じて貼り付け結果が決まります。BOX 範囲を扱う場合、この仕様はしばしば直感に反する結果をもたらします。たとえば、BOX 範囲をコピーしたものを無選択状態で貼り付けると、下へ向かって既存の文書に割り込んでいきます。また、複数行の文字列範囲をコピーしたものを BOX 選択状態で貼り付けると、とても予測困難な結果になります。
秀丸の仕様は実装がシンプルな反面、実際の編集場面ではあまり使いどころがありません。そこで、実用的に意味のある編集結果が得られるような仕様を設計・実装したのがこのマクロです。
[必要なもの]
・秀丸エディタ v8.40 以降
[主な更新]
v1.1 (2014/05/04) ← v1.0 (2013/03/27)
・複数選択対応 (秀丸エディタ v8.40 以降が必須です)
|
|
|