モードラインとミニバッファ - ファイルを開く
Emacsでは、編集対象となるファイルをすべて「バッファ」と呼ばれるメモリ領域に読み込んでから編集を行う。また、テキストの表示/編集を行う領域は「ウィンドウ」と呼ぶ。ウィンドウの最下部には「モードラインと呼ばれる、現在編集中のバッファに関する情報を表示するエリアが用意されている。また、ウィンドウの最下部には「ミニバッファ」と呼ばれる、特殊な入力領域が用意されている。
|
|
図8 モードラインとミニバッファ。画面を分割し、同時に複数のウィンドウを表示することもできる
|
モードラインには、編集対象とするバッファの情報(文字コードや改行コード)やカーソル位置、バッファのモード(後述)といった情報が表示される(図9)。
|
|
図9 モードラインに表示される情報の例
|
表2 モードラインに表示される情報
| ① | 文字コード(「u」ならUTF-8、「S」ならShift-JIS、「E」ならEUC-JP、「J」ならISO-2022-JP(JIS) |
| ② | 変更の有無(「--」なら未変更、「**」なら変更済み |
| ③ | バッファ名(通常はファイル名に相当) |
| ④ | カーソルがある行の先頭からの位置。0%が先頭、100%が末尾 |
| ⑤ | カーソルがある行の行番号 |
| ⑥ | モード。この例では「Text」モード |
また、ミニバッファはEmacsからの通知メッセージなどが逐次表示されるほか、ユーザーになんらかの入力を求める際に利用される。たとえば「C-x C-f」というショートカット(ファイルを開く)を実行すると、ミニバッファに「Find file: <カレントディレクトリ>」と表示されてカーソルがミニバッファに移動し、ユーザーからの入力を受け付けるようになる(図10)。ここで開きたいファイル名を入力しEnterキーを押すことで、指定したファイルを開くことができるというわけだ。また、ここで存在しないファイル名を入力すると、そのファイル名で新たなファイルが作られる。
ミニバッファでは状況に応じてTabキーによる補完機能が利用できる。たとえばファイルを開く場合、ファイル名を途中まで入力した状態でタブキーを2回押すと、候補となるファイルが一覧表示される(図11)。また、もし候補となるファイルが1つだけなら、タブキーを1回押した段階でそのファイル名が自動的に入力される。
|
|
図10 ミニバッファを使って開くファイルを選択する、この例ではカレントディレクトリが「~/」(ホームディレクトリ)になっている
|
|
|
図11 ミニバッファでTabキーを2回押すと、候補となるファイルが一覧表示される
|
編集を加えたファイルは「C-s」というショートカットで上書き保存できるが(表3)、もしファイルを保存していない状態でEmacsを終了しようとすると、ファイルを保存してから終了すべきか問うメッセージがミニバッファに表示される(図12)。ファイルを上書き保存したい場合は「y」を、保存しない場合は「n」を押せばよい。なお、ここで「n」を押すと最後に「Modified buffers exists; exit anyway?(未保存の変更があるが、破棄して終了しても良いか?)」とのメッセージが表示される。本当に終了しても良いなら、ここで「yes」と入力することでEmacsを終了できる。
|
|
図12 ファイルを保存せずに終了しようとすると、ミニバッファに確認メッセージが表示される
|
表3 ファイルを開いたり、保存するショートカットキー
| ショートカットキー | 動作 |
| C-x C-f | ファイルを開く |
| C-x C-s | ファイルを上書き保存 |
| C-x C-w | ファイルを別名で保存 |
| C-x i | カーソル位置に別のファイルの内容を挿入 |