Unixでは各種の設定をテキストファイルに記述する事が多く、 テキストエディタが必須の道具です。 Unixで主流のテキストエディタといえばViかEmacsですが、 どちらも独特の操作方法を持ちUnix入門の鬼門ともいえます。 特に各種機能のキー割当は覚えるのに時間が掛かりますので、 基本的な操作をViとEmacsの比較表形式でまとめてみました。 手習いの補助にご利用下さい。
C-a | Ctrlキーを押しながらaを押す。 |
M-a | Escキーを押してからaを押す。 もしくはAltキーを押しながらaを押す。 |
<R> | Return(もしくはEnter)キーを押す。 |
<Space> | Spaceキーを押す。 |
<Esc> | Escキーを押す。 |
[string] | この部分にstringで指示されている内容を入力する。 |
エディタでのキーボード入力は、状態に応じて文字列の入力、編集コマンドのいずれかになります。 EmacsとViを操作する上での大きな違いは、基本モードが入力とコマンドのどちらがになるかです。 両者の違いを以下に記しますので、最初にこのことを頭に入れて下さい。
機能 | Emacs | Vi | 備考 |
---|---|---|---|
ファイルを開く | C-x C-f | :r [file-name]<R> | |
ファイルを閉じる | C-x k | :q<R> | viの強制クローズは:q!<R> |
編集中のファイルを保存する | C-x C-s | :w<R> | |
名前を付けて 編集中のファイルを保存する |
C-x C-w | :w [file-name]<R> | |
エディタを終了する | C-x C-c | :q<R> | viにて編集ファイルを破棄しての強制終了は:q!<R> |
機能 | Emacs | Vi | 備考 |
---|---|---|---|
1文字前進 | C-f | l | |
1文字後退 | C-b | h | |
前行 | C-p | k | |
次行 | C-n | j | |
行頭へ移動 | C-a | 0 | |
行末へ移動 | C-e | $ | |
先頭行へ移動 | M-< | 1G | |
最終行へ移動 | M-> | G | |
後方へスクロール | C-v | C-d | |
前方へスクロール | M-v | C-u |
機能 | Emacs | Vi | 備考 |
---|---|---|---|
前方検索 | C-s | /[string] | |
後方検索 | C-r | ?[string] | |
置換 | M-% | :g/[old-string]/s//[new-string]/gc | |
一文字削除 | C-d | x | |
一行切り取り | (行頭で)C-k C-k | dd | |
指定範囲切り取り | C-<Space>(範囲最後にカーソル移動)C-w | [削除数]d[カーソル移動コマンド] | |
指定範囲複写 | C-<Space>(範囲最後にカーソル移動)M-w | [削除数]y[カーソル移動コマンド] | |
複写範囲の貼り付け | C-y | P |
「EmacsとViの基本モードについて」で述べた通り、 Viではコマンドモードが基本で、文字入力は入力コマンドを使用します。 入力コマンドはその挙動により複数の種類がありますので、 以下に一覧を掲載します。
基本的な使い方はいずれも同じで、入力コマンドに続けて文字列を入力、 <Esc>で入力コマンド終了となります。
機能 | |
---|---|
カーソル位置に挿入入力 | i[input-strings]<Esc> |
カーソル位置に上書き入力 | R[input-strings]<Esc> |
カーソル位置の後ろに挿入入力 | a[input-strings]<Esc> |
カーソル行頭に挿入入力 | I[input-strings]<Esc> |
カーソル行末に入力 | A[input-strings]<Esc> |
カーソル行の下に空行を挿入して入力 | o[input-strings]<Esc> |
カーソル行の上に空行を挿入して入力 | O[input-strings]<Esc> |
何かととっつき難いといわれるUnix用エディタの操作方法ですが、 これには以下のような理由があります。
Unixでの設定作業の大半はテキストファイルの編集です。 テキストエディタに関しては、少々敷居が高くても、 習熟した時に作業効率の高い操作方法がとられています。 Unixの他のアプリケーションでも、マウスや特殊キーによる操作以外に、 Emacs / Viの操作に準じたショートカットキーが使用可能な物が多いので、 いずれか一方でも慣れておけば作業が捗る場面は多い筈です。
ページトップへ2004/09/20 | 新規設置 |
---|---|
2005/10/?? | 項目追加、加筆修正 |