自作秀丸マクロ

コーディングしていて、「function」を「fucntion」とタイプしてしまうことが多い僕には(「cahrset」とかもよくやる)重宝するマクロなんだが、そんな人もあんまいないと思うし、秀丸マクロライブラリに登録するほどのもんでもないしな。

//==============================================
// カーソル位置の左右の文字を入れ替えるマクロ //
//==============================================
disabledraw;
escape; // 選択状態にある場合は解除
if( linelen == x || 0 == x ) endmacro; // カーソルが行頭/行末にあるときは何もしない

// カーソル位置の左側の一文字を選択
// gettext(x-1,y,x,y);みたいにやるとマルチバイト文字が壊れちゃう
// あまりスマートではないけど文字コード判別するよりこっちの方が楽
left;
beginsel;
right;
$first_letter  = gettext(seltopx,seltopy,selendx,selendy);
escape;

// カーソル位置の右側の一文字を選択
right;
beginsel;
left;
$second_letter = gettext(seltopx,seltopy,selendx,selendy);
escape;

// カーソル位置の左右の計2文字分を選択して削除
left;
beginsel;
right 2;

// 入れ替えた文字をそこに挿入
insert $second_letter + $first_letter;

// カーソル位置を元に戻す
left;
enabledraw;