emacsの使い方
ここではUNIXシステムの高機能エディタであるemacsの使い方を
紹介します。OSは一応Linuxを前提にしていますが,emacsが使える環境ならば
基本的に問題ないと思います.
主にemacsを一度も使ったことのない人などが
対象ですが、後半は少し詳しい内容になってくるので、
ある程度使える人もよければ目を通してみてください。
このページの内容は神戸大学工学部 情報知能工学科 CS23研究室の 環境に準拠しています. お使いの環境によっては一部のコマンド等が異なることがあります.
このページの目次
emacsの起動
まず、emacsを起動するにはターミナルを開いて
$ emacsと入力してみてください。("$" はターミナルに もともと表示されているので、実際に入力するのは"emacs"だけ)
上の通りに入力してEnterを押すとemacsが起動します。
ちなみに、このとき開いたemacsを終了するまではターミナルでコマンドの 実行ができなくなっています。もしemacsを開いたままターミナルも 使いたい場合は、
$ emacs &と入力してください。
emacsの起動時は下のようになっています。

今開いているのは*scratch*というバッファで、落書き用紙のような ものです。バッファ(buffer)というの は作業中のファイルのことで、 とりあえずはファイルと同じようなものだと 思っておいてください。
また、ウィンドウ下部の*scratch*と書かれている 部分はモード行(あるいはモードライン)と 言い、現在開いているバッファ名などの情報が書かれています。
さらに、ウィンドウの一番下の 行はエコー領域と言い、 いろいろなメッセージが表示されます。
カーソルの移動
まずは上のスナップショットのように、カーソルを2行目真ん中あたりの i の
位置にもってきてください。
ここで Ctrlキーを押しながらf を押してみてください。すると
カーソルが1つ右に移動します。
次に、 Ctrlキーを押しながらb を押してみてください。
カーソルが1つ左に移動します。
同様に Ctrlキーを押しながらn を押すと1つ下に、
さらに Ctrlキーを押しながらp を押すと1つ上に移動します。
もちろん矢印キーを使って移動することもできますが、これらのコマンドを
使えばわざわざそこまで指を持っていかなくても移動できるので、
慣れれば作業効率は格段に上がります。
ちなみにfはforward、bはbackward、nはnext、pはpreviousの意味なので、
それぞれ意識しておくと覚えやすいでしょう。
他にも次のようなものがあります。
- Ctrlキーを押しながらa でカーソルが行頭に移動します。
- Ctrlキーを押しながらe でカーソルが行末に移動します。
- Ctrlキーを押しながらv で1画面分下に移動 します。PageDownキーと同じです。
- Altキーを押しながらv で1画面分上に移動 します。PageUpキーと同じです。
- Homeキー で文書の先頭に移動します。
- Endキー で文書の末尾に移動します。
コマンド一覧表 によく使うコマンドをまとめてありますが、始めはとりあえず このページの内容からじっくり見てもらった方がいいと思います。
操作の中止
emacsを使っていると、キーを打ち間違えて変な動作になったときや、
ファイルを開こうとしてやっぱりやめたいときなど,
操作を途中で中止したくなることがあります.
そのときは,Ctrlキーを押しながらg で中止できます。
最重要コマンドです。
必ず覚えておいてください。
日本語入力の切り替え
日本語入力のOn/Offは、Ctrlキーを押しながら\ で
切り替えられます。
また、他にも
- Shift + Space
- 半角/全角キー
- Ctrlキーを押しながらo
バッファの保存
では、今度はバッファを保存してみましょう。
Ctrlキーを押したまま x s と続けて入力してみてください。
すると下のようになります。

カーソルが一番下の行に移動しましたね。ここをエコー領域と言いましたが、
カーソルが移動して何か書き込める状態になっている
ときはミニバッファが
開かれている状態です。
ここで ~/ に続いてファイル名を書き込むことでバッファの保存ができます。
~はホームディレクトリの意味で、例えば ~/sample.txt と入力
してEnterを押すと、ホームディレクトリの下にsample.txtという名前で
保存されます。
もちろん他のディレクトリも指定できるので、
例えば ~/study/sample.txt とすると、ホームディレクトリの中の
studyというディレクトリの中に保存されます。
というわけで、~/sample.txtと入力してEnterを押すと、

となり、sample.txtが無事に保存されました。
モードラインを見ると、*scratch*というバッファ
がsample.txtというバッファ名に変更されたのがわかります。また、
バッファ名の左の**となっていた部分が--になりました。
**は編集中で未保存、--は保存済み という意味です。
ちなみに、%%はread-only(書き込み不可)のバッファ です。
これで「書きかけ
のバッファがファイ
ルとして保存された」ことになります。
これ以降にまた Ctrlを押したまま x s でsample.txtを
上書き保存します。
このコマンドも超重要なので必ず覚えておいてください。
また、別名で保存するには、Ctrlを押したまま x w と
続けて入力した後、ミニバッファでファイル名を指定すればできます。
なお、別名で保存するときなどでカーソルがミニバッファに移動しているとき
、やっぱりやめたい場合は Ctrlを押しながらg でできます。
emacsの終了
ここで一旦emacsを終了してみましょう。Ctrlを押したまま x c と
続けて入力してください。ウィンドウが閉じてemacsが終了します。
このときもし未保存のバッファがある場合は、エコー領域に
Save file (バッファ名)? (y, n, !, ., q, C-r or C-h)
と表示されるので、バッファを保存してemacsを終了する場合はyを、
保存しない場合はnを入力します。もしnと入力すると、今度は
Modified buffers exist; exit anyway? (yes or no)
と聞いてきます。ここでyesと入力してEnterを押すとバッファを
保存しないままemacsを終了し、noと入力してEnterを押すとemacsは
終了せず編集に戻ります。もちろん C-g で中断しても構いません。
ただし、例外として*scratch*バッファは編集して
未保存の場合でも保存するかどうか聞かずに終了するので注意してください。
ファイルを開く
ターミナルに戻って、今度は最初に開くファイル名を指定してemacsを起動して みましょう。
$ emacs sample.txt &と入力してみてください。先ほど保存したsample.txtがemacsで開きます。
もしターミナルで現在いるディレクトリと違うところに ファイルがあるときは,正しくファイルのパスを書いてやる必要があります。
また、ファイルを開くのはemacs上でも
できます。Ctrlを押したまま x f と続けて入力し、
ファイル名を指定すればOKです。
ちなみに、ファイルを開くときに存在しない
ファイル名を入力すると、その名前を持つ新規バッファが作られます。
そして、そのバッファを Ctrlを押したまま x s で保存する
と、その名前のファイルとして保存されます。新しいファイルを
作るときはこの方法で行うといいでしょう。
その他のコマンドについては
コマンド一覧表
を参照してください。
ちょっと休憩
ここまでで、emacsの大まかな使い方はわかってもらえたかと思います。 とりあえずこれだけ覚えていればemacsを使うことはできます。 でも、もっとコマンドを覚えることでemacsはどんどん便利になっていきます。 この後はもうちょっと進んだ内容を説明していきます。
ところで、ここからは Ctrlを押しながら
何かキーを押す操作を C-○ と
表すことにします。例えば、カーソルを右に進めるのは C-f、
ファイルを開くのは C-x C-f と表します。
また、Altを押しながら何かキーを押す
操作を M-○ と表します。
なぜAltキーなのに M-○ と書くかというと、MはMetaの略で、昔の
あるキーボードにはメタキーというキーが付いていました。
今のキーボードにはメタキーは付いていないので、
Altキーを代わりに割り当ててあり、
M-○ という表記はその名残なわけです。
これらの表記はemacsで一般的に使われる表記法なので
覚えておいてください。
ちなみに、M-○ は Escキーを押した後に○を押す ことでも 入力できます。こちらはEscを押した後指を離すことに 注意してください。
文字の削除
基本的な文字列処理の方法を覚えましょう。
まずは文字の削除からやってみます。
先ほどのsample.txtを開いて、どこか適当なところに
カーソルを合わせて C-d と入力してみてください。すると、
カーソル位置の文字が削除されます。Deleteキーと同じですね。
ではカーソルの左の文字を削除、つまりBackspaceキーにあたる
コマンドは何かというと、おそらく C-h を使うのが
一般的だと思いますが、C-h は
デフォルトではヘルプに割り当てられているため使えないと思います。
一度試してみて、もしエコー領域に
C-h (Type ? for further options)-
と表示された場合はヘルプに割り当てられているので C-g で
中止してください。しかし、これだとBackspaceに当たるコマンドが
なく、かといってBackspaceキーまで指を伸ばすのは面倒なので
不便です。
そこで、 C-h をBackspaceとして割り当てる方法を
このページの下 で紹介していますが、
少しだけ知識が要ります。そこまで読む頃には余裕で設定できるように
なっているとは思いますが、今はとりあえずBackspaceキーを使うように
してください。
また、C-h をBackspaceとして割り当てているときは C-h でヘルプが
見れなくなりますが、F1キーもヘルプに
割り当てられているので、必要なときはそちらを使ってください。
コピーやカットなど
次に文字列のコピーやカットをやってみましょう。
emacsでキーボードを使ってコピーやカットをする方法はちょっと特殊で、
WindowsのようにShiftキーを押しながらカーソルを移動しても
範囲が選択されません。
そこで、まずは範囲を選択したい最初の文字に
カーソルを合わせて C-SPC を押してください。
するとエコー領域に Mark set と表示されたと思います。
このマークセット(Mark set)が範囲の選択を
始める合図で、この後カーソルを移動させるとその範囲が
選択されます。マークセットして選択した範囲のこと
をリージョン(region)と言います。
ただし、マークセットしてリージョンを選択する時、デフォルトでは
マウスでドラッグしたときのように選択範囲が強調表示されないと
思いますが、見えていないだけでちゃんと選択されています。
強調表示されるように設定を変える方法は
このページの下
でも紹介しています。
リージョンを選択したら、コピーは M-w、
カットは C-w でできます。
また、マークセットの中止は C-g です。
今度はコピーやカットした文字をペーストしてみましょう。
ペーストしたい場所にカーソルを合わせて C-y でペーストできます。
ちなみに、ペーストのことはヤンク(yank)とも言います。
また、カットはもう一つ方法があって、 C-k で
カーソル位置から行末までをカットします。
カーソルを動かさずに繰り返し C-k でカットすると、
繰り返しカットした行全てがコピーされます。適当に数行カット
した後 C-y でペーストして確かめてみてください.
C-k によるカットは非常に便利です。
なお、マウスでドラッグしてもリージョンの選択ができ、M-w のコピー
や C-w のカットもできますが、ドラッグで
選択した後マウスのホイールをクリックすると,わざわざコピーや
カットをしなくても貼り付けることができます。
ただし、C-SPC でマークセットしてリージョンを
選択した場合は,ホイールクリックで貼り付けることはできません。
ホイールクリックによる貼り付けはとても便利ですが、emacsの
ウィンドウをホイールを使ってスクロールしているときに
誤ってホイールクリックしてしまうと、そのときマウスカーソルが
あった位置に貼り付けられてしまいます。
こうなるとどこにどんなテキストが
貼り付けられたかわからなくなることがあるので、
スクロールにはなるべくホイールを使わないようにし、
どうしてもホイールを使うときは十分気をつけてください。
もしホイールクリックで貼り付けてしまったときは、すぐに
C-/ または C-_ でアンドゥ
(Undo:元に戻す)しましょう。
ちなみに、Linuxではemacs以外でもこの方法で貼り付けが
できます。
例えばブラウザのテキストをemacsに貼り付けたり、逆にemacsから
ブラウザに貼りつけたりするときはこの方法がいいでしょう。
ウィンドウ操作
複数のファイルを編集するとき、複数のウィンドウを並べて
表示したいことがあります。まず、C-x 2 でウィンドウを
縦に分割できます。C-x 3 でウィンドウを横に分割できます。
ウィンドウの分割は複数回できるので、何度もやるとたくさんのウィンドウを
作れます。
C-x o で次のウィンドウにカーソルを移動します。C-x C-f で
ファイルを開くときなど、エコー領域にミニバッファが開いている
ときはミニバッファにもカーソルが移動します。
C-x 1 で分割されたウィンドウを1つにします。ウィンドウを
何分割していても1つになります。このとき、
カーソルを合わせているウィンドウが表示されます。
C-x 0 でカーソルを合わせているウィンドウを削除します。
例えば、ウィンドウを3つに分割していたときはカーソルのあるウィンドウ
だけが削除され、ウィンドウは2つになります。
ちなみに、C-x 1 や C-x 0 でウィンドウを減らしても、
そのウィンドウで表示していたバッファ自体は削除されず、emacs上に
ちゃんと残っています。
実際にウィンドウを分割してみると例えば下のようになります。

これは C-x 2 で縦に分割した後 C-x 3 で横に分割した状態です。
このように、それぞれのウィンドウで異なるバッファを開いて
編集できます。
分割したウィンドウの大きさを変えることもできます。
マウスカーソルをモードラインに合わせたとき、カーソルの形が変わるところで
ドラッグすると調節できます。
コマンドでは、C-x ^ でカーソルのあるウィンドウを
縦に伸ばし、C-x { でカーソルのあるウィンドウを横に縮め、
C-x } で横に伸ばします。
一度やってみるとよくわかると思うので、いろいろ試してみてください。
バッファの切り替え
emacsでは一度に複数のファイルを開くことができ、バッファとして
記憶されています。
例えば、まず C-x C-f でsample.txtを開き、次にもう一度 C-x C-f で
今度はsample2.txtを開いたとします。
現在ウィンドウはsample2.txtのバッファを表示しています(下の図の状態)。

ここで、C-x b と入力してください。
(C-x を入力したあと、Ctrlは押さずにbを押す)
するとカーソルがミニバッファに移動し、下のように表示されます。

ここでバッファ名を入力することで、バッファの切り替えができます。
ミニバッファに (default sample.txt) とあるのは、何も書かずに
Enterを押すとsample.txtのバッファに切り替えるという意味です。
つまり、
直前に開いていたバッファがdefaultとなり、
何も書かずにEnterを押すとdefaultのバッファ名を入力したことと同じ
になります。
試しに何も書かないか、sample.txtと入力してみましょう。バッファ名を
入力するときは、途中でTabもしくはSPCキーを押すと補間でき、続けて押すと
補間候補が表示されます。

sample.txtに切り替えられました。このように、emacsでは
1つのウィンドウでも複数のバッファを管理できます。
ちなみに、密かにモードラインのバッファ名のところをマウスでクリックしても
バッファの切り替えができたりします。他にも、モードライン上の
ドラッグでウィンドウの移動ができるところで、
マウスを右クリックするとそのウィンドウを削除(C-x 0 と同じ)できたり、
ホイールクリックするとそのウィンドウを1つに(C-x 1 と同じ)できたりします。
次の内容はそれほど重要ではないので最初は飛ばしてもらって構いません.
興味があれば読んでみてください.
今どのバッファが開かれているかを調べたいときは、C-x C-b で
バッファリスト(*Buffer List*)を表示することができます。
バッファリストが表示されたら、
C-x o で*Buffer List*が開かれているウィンドウに移動します。
バッファリスト内で行える主な操作は、
-
d:カーソルのある行のバッファを削除するための マークをつける。
バッファ名の前にDと表示されます。この時点ではまだ
削除されません。
-
s:カーソルのある行のバッファを保存するための マークをつける。
バッファ名の前にSと表示されます。この時点ではまだ
保存されません。
-
x:DやSのマークをつけたバッファに対し、 それぞれの処理を実行。
- u:DやSのマークを取り消す。カーソルのある行の バッファに対して行います。
-
1:カーソルのある行のバッファを1つの ウィンドウで表示
-
f:カーソルのある行のバッファを、*Buffer List*の あるウィンドウで表示
なお、バッファの削除はemacs上から消去するだけで、元のファイルが削除 されるわけではありません。
バッファリストはバッファをたくさん開いて同時に管理する場合 などは便利です。 ただ、バッファリストを表示するために*Buffer List*バッファを 作って勝手にウィンドウが分割されてしまうので、基本的には C-x b で バッファを切り替える方がいいかと思います。そのとき、もしCtrlキーから 指を離すのが遅れたりして C-x C-b が暴発して しまったら、C-x 1 で分割されたウィンドウを1つにします。
バッファを閉じる
バッファを閉じるには、C-x kでできます。このとき
ミニバッファにカーソルが移動し、何も入力せずにEnterを押すと
現在開いているバッファ(カレントバッファ)を閉じます。
ミニバッファで閉じるバッファ名が入力できますが,実際に使うときは
何も入力せずにカレントバッファを閉じる
ことが多いと思います.
文字列の検索
文字列の検索は C-s で行います。C-s を押すとカーソルが
ミニバッファに移動し、I-search: と表示されます。ここで文字を
入力すると、1文字入力する度にヒットした候補にカーソルがジャンプします。
電子辞書で単語を調べるときと同じ方式ですね。このような検索方式
をインクリメンタルサーチと
言います。
では実際に検索してみましょう。
まずは"this"という文字列を検索してみます。

これは C-s を入力後、th まで入力した状態です。
ヒットした候補が強調表示されています。そして、最初にヒット
した1行目の"This"のThの後ろにカーソルがジャンプしました。
このように大文字が含まれる場合、小文字で検索してもヒットします。
ただし、逆に小文字の文字列を大文字で検索してもヒットしません。
続けてiを入力してみましょう。

候補が2つまで絞り込まれました。今度は"that"を検索するために
、Backspaceを一度押してからaを入力して
みましょう。

新たにヒットした候補にジャンプしました。
ここで、次の候補にジャンプするときはもう一度 C-s を押します。
また、前の候補にジャンプするときは C-r を押します。
もし文書の最後まで検索してもヒットしなかったときは、
再び C-s を押せば先頭から検索し直してくれます。
検索を終了するときはEnterを押します。
ちなみに、今回は最初に C-s で検索を開始しました
が、C-r を押すことでも検索を開始でき、そのときは
カーソル後方の文字列を検索します。もちろん C-r で検索中
でも C-s を押せば前方の検索に切り替えられます。
また、日本語を検索するときは注意が必要です。C-s で
I-search: と表示されているときは日本語が入力できなくなっているので、
何も入力せずにEnterを押してください。すると、今度はミニバッファに
Search: と表示され、このときは日本語も入力できます。
こちらはインクリメンタルサーチではないので、検索ワードを
入力後にEnterを押すことで検索を開始します。
また、たぶんヒットした候補が強調表示されないと思いますが、
検索自体はちゃんとできています。
文字列の置換
次は強力なツールである文字列の置換をやってみましょう。
文字列の置換は M-% でできます。ちょっと押しにくいですが、
Alt + Shift + 5 と押すか、一度Escを押した後、Shift + 5 と
押してもいいです。
ミニバッファにカーソルが移動し、Query replace: と表示されるので、
まずは置き換える前の文字列を入力してEnterを押します。すると、
その右にwith: と表示されるので、
置き換えたい文字列を入力してEnterを押します。
置換には日本語も使えます。
では、"abc"という文字列を"ABC"という文字列に置換してみます。
M-%を押した後、まずは abc と入力し、次に ABC と入力します。

するとエコー領域に上のように表示され、ヒットした abc という
文字列を ABC という文字列に置換してよいかと聞いてきます。
ここで、置換する場合は yまたはSPC、置換せずにスキップする
場合は nまたはDEL(注) を
押します。途中で置換を終了する
場合は qまたはRET です。C-g でも中止できます。
また、! でヒットした全ての置換候補を一発置換できますが、
思わぬところまで置換してしまう可能性があるので、長い文書では
使わない方がいいでしょう。
(注) emacsで "DEL" は
カーソル前の文字を削除、つまりBackspaceキーのこと
ということで、適当に置換を進めると、

このように置換できました。
なお、置換は M-% を押したときのカーソル位置より前方だけ行います。
なので、カーソル位置より前の文字列は ! でも置換されません。
置換は非常に便利です。C言語のソースを書いていて変数名を
変えたくなったりしたときなどは、置換がないとやってられません。
置換の活用例としては他にも、
- "x=1" → "x = 1" のように空白を入れる("=" → " = "と 置換してもよい)
- "abc" → "abcde" のように、全く別の文字列に置き換える のではなく、元の文字列に付け加える
コマンドに引数を与える
emacsのコマンドには引数を与えることができます。
例えば、C-5 a と入力すると,aが5回出力されます。
次に、C-1 C-0 C-n と入力すると,カーソルが10行下に移動します。
このように,何か入力する前に C-数字キー で予め引数を
入力しておくことで、次に入力するコマンドを
引数の回数だけ実行することができます。Ctrlの代わりにAltを
使って M-5 a としても同じです。
また,C-u でも引数を与えることができます。C-u は
デフォルトで4が引数として与えられるので,例えば C-u a と
するとaが4回出力されます。C-u C-u a とすると16回,C-u C-u C-u a と
すれば64回出力されます。
主な使い道は、カーソルを一度にたくさん移動することなど
でしょうか。C-u C-u C-n あたりは使い勝手がいいです。
M-x 関数について
実は、今まで紹介してきたコマンドのほとんどは M-x ○○ という
コマンドで実行することができます。例えば C-f でカーソルを1つ右に進める
のは M-x forward-char と入力しても同じです。また、forward-char の部分
は関数と言います。今までやって
きた C-f などのコマンドはそれぞれの関数のショートカットコマンド
であり、キーバインドとして
割り当ててあったわけです。
M-x と入力するとカーソルがミニバッファに移動するので、まずはTabを
押してみてください。たくさんの候補が出てきたと思います。
カーソルを動かすのもファイルを保存するのも、
全てこの中のある関数で実行されています。
今まで紹介してきたコマンドがどんな関数なのかを調べる1つの方法としては、
何かコマンドを実行した後 C-x z とするのが簡単です。
C-x z は直前の操作を繰り返すコマンドで、例えばカーソルを右に移動した後
に C-x z と入力すると、エコー領域に Repeating command forward-char と
表示され、forward-char という関数が繰り返されたことがわかります。
ただし、この方法で調べられないものもあります。
ファイルを保存する C-x C-s などがそうなんですが、
なぜできないのかは・・・まぁやってみればわかります。
ちなみに正解は save-buffer という関数です。
キーバインドを調べるには M-x describe-bindings とすればできます。
これを実行するとキーバインドと関数の一覧が表示されるので、
キーバインドに対応する関数を調べることができます。
メジャーモードとマイナーモード
例えばtxtファイルを開いたときにモードラインを
見ると、(Text Fill) などと表示されていると思います。
また、texファイルを開いたときは (LaTeX Fill) または (やてふ Fill) などと
表示されていると思います。
( )内の "Text" や "LaTeX"、"やてふ" の部分はそれぞれ、txtファイルを
開いたときは text-mode に、texファイルを
開いたときは latex-mode または yatex-mode になった
ということを表しています。
これをメジャーモードと言います。
どのバッファも必ず1つのメジャーモードになっています。
各々のメジャーモードではまずテキストの編集機能が大きく違います。
それぞれのモードに応じて、適切なインデントや
文字の色付け(font-lockと言います)を行ってくれます。
また、そのメジャーモードのときだけ使える関数やコマンド
が定義されていることもあります(コメントアウトなど)。
ちなみに、ファイルを開くと適切なメジャーモードが自動的に
選択されますが、自分でモードを切り替えたいときは、M-x の後に
モード名を入力することでできます。上で書いた text-mode や yatex-mode の
他にも c-mode、c++-mode、java-mode などがあります。
また、M-x shell でemacs上でシェルを開くことが
できます(shell-mode)。
また、( )内の "Fill" の部分
は auto-fill-mode がオンになっているという意味で、
これをマイナーモードと
言います。auto-fill-mode はテキストを書いていて行が長くなると、
自動的に改行を入れてくれるマイナーモード
です。M-x auto-fill-mode でオン・オフの
切り替えができます。
マイナーモードは他にも数種類あり、メジャーモードと違い
個別にオン・オフを切り替えることができます。
ちなみにInsertキーが付いているキーボードでは、Insertキーを押す
ことで overwrite-mode になり、モードラインに Ovwrt と
表示されます。作業中にもしテキストが上書き入力されるようになって
しまったときは、間違ってInsertキーを押して overwrite-mode に
なっているはずです。そのときはもう一度 Insert を
押して overwrite-mode をオフにしてください。
ちなみに、M-x overwrite-mode とすることでもオン・オフの切り替えが
できます。
emacsのカスタマイズ
emacsはデフォルトでも十分高機能なエディタですが,
気に入らない設定があったり新しく機能を追加したい
ときは,.emacsというファイルを編集する
ことで設定を自分好みにカスタマイズできます。
.emacsはemacsの起動時に自動的に読み込まれるファイルで,
普通はホームディレクトリに置いてあると思います.なければ
作ってみてください。LinuxなどUNIX系OSの場合,"." で始まるファイルは
隠しファイルなのでファイラなどでは表示設定を変えないと見えないと
思いますが,emacsで普通に開けます.
ただし、.emacsはEmacs Lispという言語で書かれて
いるため、自分で本格的に編集するにはLispの知識が必要になります.
基本的には人の書いた設定をコピーして使うことに
なると思います。
.emacsの設定例を紹介します.
このページの上で少し触れた C-h をBackspace に割り当てる設定と,
リージョンを強調表示する設定は下のようになります.
;; C-h をBackspaceに割り当て (global-set-key "\C-h" 'delete-backward-char) ;; リージョンを強調表示 (transient-mark-mode t)この設定を使用する場合は、これを.emacsにコピー&ペーストして保存して ください.Linuxならマウスでドラッグしてホイールクリックで貼り付け られます.なお、セミコロン(;)で始まる行はコメントとみなされます.
編集した設定は,emacs本体を再起動すると有効になります。
この他にも便利な設定をいくつかまとめたものを .emacsの便利な設定 に載せてあります。
研究室のマシンで設定を書く場合,.emacsとは別のファイルに分けて 置いておくためにホームディレクトリの すぐ下に .emacs.my.el というファイルを作り, そこに書くようにしてください.
emacsは起動時に.emacsを読み込みますが、研究室の 設定では.emacsから.emacs.elというファイルを読み込み, さらにそこから.emacs.my.elを読み込むように予め書かれています.
Meadowについて
emacsをWindows用に移植したMeadowというフリーソフトがあります。
若干異なるところもありますが、基本的にはemacsと同じなので、
ここで書かれていることのほとんどはMeadowでも使えます。
ただ、Meadowのインストールはちょっとややこしいです。解説サイトも
いくつかあるので、興味のある方は調べてみてください。
インストールの仕方は気が向いたらこのページでも載せようと思っています。
その他の項目へのリンク
- emacsの使い方
- コマンド一覧表
- .emacsの便利な設定
- ちょっとした小技集
- リンク集