« Pythonで携帯の機種判別をする | メイン | Webアプリケーションの国際化 »

言語モード毎にキーボードマクロを設定する(Emacs)
このエントリーをブックマークに追加 このエントリーをlivedoorクリップに追加

こんばんは。bokkoです。

Emacsを使っている人に限らず、タイプ数を減らすために、
キーボードマクロを使っている人は多いと思います。
私の場合、for文やmain関数などをキーボードマクロで自動生成したりしているのですが、
最近、ほかの言語の構文と名前がかぶってしまったり、
RubyやPythonで書いているときは欲しいんだけど、
CやC++で書いているときは、全然いらないマクロがあったりするのが気になったので、
整理することにしました。
最初はマクロに言語の名前をつけて区別しようとしたのですが、
Emacsではadd-hookが使えるので、そっちを使って言語モード毎にマクロを設定することにしました。

(setq c_macros_dir "~bokko/emacs-macros/c/")
(add-hook 'c-mode-hook
          '(lambda ()
             (load-file (concat c_macros_dir "create_nested_block_main.macs"))
             (load-file (concat c_macros_dir "create_nested_block_for.macs"))
             (load-file (concat c_macros_dir "create_nested_block_while.macs"))
                                                        ・
                                                        ・
                                                        ・
             ))
(setq php_macros_dir "~bokko/emacs-macros/php/")
(add-hook 'php-mode-hook
          '(lambda ()
             (load-file (concat php_macros_dir "create_nested_block_func.macs"))
             (load-file (concat php_macros_dir "create_nested_block_class.macs"))
             (load-file (concat php_macros_dir "create_nested_block_foreach.macs"))
             (load-file (concat php_macros_dir "var_dump_exit.macs"))
                                                        ・
                                                        ・
                                                        ・
             ))

このように書くと、各言語モードだけに必要なキーボードマクロを設定することができますし、
別の言語に同じ名前のマクロがあっても大丈夫です。

トラックバック

このエントリーのトラックバックURL:
http://www.unoh.net/mt32/mt-tb.cgi/930

この一覧は、次のエントリーを参照しています: 言語モード毎にキーボードマクロを設定する(Emacs):

» Lispに苦戦 from javaプログラマ日誌
Emacs使ってみたら、当然のことながらLispのことを知りたくなった。 なので... [詳しくはこちら]

コメントを投稿


画像の中に見える文字を入力してください。

  [PR] 転職
ウノウラボはウノウ株式会社のエンジニア/デザイナーによる大小のアウトプットを行っていく場です。

現在ウノウは絶賛人材募集中です。詳細は求人ページへ。

About

2007年8月14日 21:00に投稿されたエントリーのページです。

ひとつ前の投稿は「Pythonで携帯の機種判別をする」です。

次の投稿は「Webアプリケーションの国際化」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

ウノウサービス