Powered by SmartDoc

Emacsカスタマイズ入門(Emacsをsetqする方法)

$Date: 2002/07/24 11:06:54 $
Kiyoka Nishiyama(西山 清香)
http://www.netfort.gr.jp/~kiyoka/emacs_setq/emacs_setq.html

目次

本資料のライセンス

本資料のめざすところ

Emacsをカスタマイズしよう

Emacsってどんなもの?

世間ではテキストエディタということになっていますが、ただのエディタではありません。

カスタマイズって何?

なぜカスタマイズするのか?

Emacsのカスタマイズ手段

要はEmacsを自分の使いやすいものにできればいいのです。 どんな手段があるのでしょうか?

.emacsの編集するために知っておきたい知識

Emacsの始動

Emacsが始動する時のelispファイルの読み込み順について解説します。これにより、.emacsの位置付けがわかるでしょう。

ロード順

Emacsは始動時に、startup.elというファイルをロードして実行します。以下はstartup.elでの処理内容です。

※ ここでは GNU Emacs 20.6 の動作を例として挙げています。XEmacs等では少し違うかもしれません。

  1. ロードパスload-pathにある各ディレクトリにおいてsubdirs.elを実行する
  2. LANG等の環境変数から言語環境・端末のコーディングシステムを設定する
  3. ウィンドウシステムを利用している場合はウィンドウシステムに関係している初期化をする
  4. 初期化オプションを処理する
  5. 必要ならば、ウィンドウフレームとフェイスを初期化する
  6. site-start.elをロードする
  7. ~/.emacsをロードする(コマンド行で-qや-batchが指定されていない場合のみ)
  8. 以下、長くなるので略(コマンドラインスイッチ等の処理も行なう)

.emacsについて

.emacsはユーザー毎の設定を記述するのを目的としたファイルです。

最低限のelispの知識

customize機能を使ってみる

customize機能とは

Emacsに関係するユーザー設定をメニューで変更できるものです。

ほとんどのアプリケーションは この customize を利用して代表的な設定項目を変更できるようになっています。

customize機能の起動方法

カスタマイズ変数値を変更する場合の注意

カスタマイズ変数は必ずしもcustomize機能から対話的に設定しなくても良いのです。setqを使って直接、変数を変更することができます。

但し、注意しなければならないこともあります。

カスタマイズ変数の挙動

カスタマイズ変数に関連する挙動は次の通りです。

失敗例と対策

代表的なカスタマイズ項目

トラブルシューティングのノウハウ

.emacsを変更しているうちに、括弧の対応が合わなくなってエラーになる等の問題が出てきます。

ここではその場合の対応方法等を解説します。

どこでエラーが出ているのか調べる

括弧の対応が狂ってないか調べる

byte-compiled(.elc)ファイルに問題がないか調べる

.elcファイルは .elをEmacsでバイトコンパイルしたものなのですが、これはXEmacsとGNU Emacsでフォーマットが 異なります。ですので、.elcファイルを共有しようとするとエラーが出ます。

問題が無いかどうかは以下のようにして調べます。

アプリケーション同士の整合・依存関係に問題が無いか調べる

アプリケーションのバグかどうか調べる

ここまで来ると、かなり高度な話題になります。一応指針だけ書いておきます。

まとめ

基本的な部分のカスタマイズはそれほど難しくないということが分かっていただけたと思います。

参考資料

Emacsのカスタマイズは無限です。興味を持ったら以下の資料等でelispを習って次のステップに進みましょう。