アクセスカウンタ
読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。解除は→こちら
現在の読者数 1人
プロフィール
スポンジボブ

2010年11月27日

xyzzyのキーボードマクロをファンクションにする

xyzzyでプログラムを編集するときに、決まった作業を繰り返すことがよくあります。

そういうときは、キーボードマクロを定義します。

簡単なものならその都度キーボードマクロをさっと定義して、C-x e で実行すればいいのですが、作業的に頻繁に使うものならファンクションにして、.xyzzyに入れておき、いつでも使えるようにしておくと便利です。

たとえば、以前紹介した携帯用の絵文字変換の記事のように、imodeからau,softbankへの絵文字変換をファンクションとして定義してあるとき、作業手順としては、

1.imodo用のファイルを開く。
2.au用に1をコピーする。
3.softbank用に1をコピーする。
4.2を開き、 M-x au-replace を実行し、au用に絵文字変換する。
5.4を保存する。
6.3を開き、 M-x softbank-replace を実行し、softbank用に絵文字変換する。
7.6を保存する。

のようになります。
でも、たくさんのファイルを扱うときにいちいちこの手順を踏むのも面倒なので、キーボードマクロを定義します。

まず、imode用のファイルを開いておく。
C-x ( ← キーボードマクロの定義
C-x C-w au.html ← imode用のファイルをau.htmlという名前のファイルにコピー
C-x C-w softbank.html ← imode用のファイルをsoftbank.htmlという名前のファイルにコピー
C-x C-f au.html ← au.htmlを開く
M-< ← 念のため、ファイルの先頭に移動
M-x au-replace ← imodeの絵文字をauの絵文字に変換
C-x C-s ← 保存
C-x C-f softbank.html ← softbank.htmlを開く
M-< ← 念のため、ファイルの先頭に移動
M-x softbank-replace ← imodeの絵文字をsoftbankの絵文字に変換
C-x C-s ← 保存
C-x C-f mobile.html ← imode用のファイルを表示
C-x ) ← キーボードマクロの終了

まずここまでで、別のファイルでも C-x e としてこのキーボードマクロを実行するだけで、簡単にimodeの絵文字をauやsoftbankの絵文字に変換してくれます。

でも、これだけでは、エディタを閉じたら使えなくなってしまいます。
そこで、ファンクションにして、.xyzzyに書いておきます。

上のようにキーボードマクロを定義したら、

M-x name-last-kbd-macro mymacro ← キーボードマクロに名前を付ける。mymacroのところは適当に名前をつける
C-x C-f ~/.xyzzy ← .xyzzy を読み込み
M-x insert-kbd-macro mymacro ← mymacroをファンクションとして書きだす。

これで、ファンクションとして定義されました。こちらを参考。

M-x mymacro

で使えます。
次にxyzzyを開いたときから有効になります。

今のウインドウで有効にしたいときは、

M-x load-file ~/.xyzzy

としてやると、いまのウインドウでも有効になります。


同じカテゴリー(xyzzy)の記事
 キーボードマクロの繰り返し (2011-11-11 11:17)
 全角→半角変換(xyzzy) (2011-08-26 14:52)
 文字数をカウントする (2011-08-12 10:49)
 リージョンにインデント適用 (2011-07-13 20:51)
 MTでxyzzy (2011-02-12 16:28)
 xyzzyで正規表現 (2011-01-26 15:21)
Posted by スポンジボブ at 23:06│Comments(0)xyzzy
※このブログではブログの持ち主が承認した後、コメントが反映される設定です。
コメントフォーム
上の画像に書かれている文字を入力して下さい
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。