Copyright (c) 1985 Free Software Foundation, Inc;  ファイル最後を参照のこと
	   あなたが現在見ているのは Emacs 入門ガイドです。

Emacs のコマンドを入力するには、一般にコントロールキー（キートップに 
CTRL とか CTL と書いてある）やメタキー（キートップに META とか ALT と
書いてある）を使います。そこで、CONTROL とか META とか書く代わりに、次
のような記号を使うことにします。

 C-<文字>   コントロールキーを押したまま、<文字>キーを押します。例えば、
	    C-f はコントロールキーを押しながら f のキーを押すことです。

 M-<文字>   メタキーを押したまま、<文字>キーを押します。もしメタキーがな
	    い場合は、エスケープキーを押してから離し、それから<文字>キー
	    を押します。以降エスケープキーのことを <ESC> と書きます。

！重要！: Emacsを終了するには、C-x C-c をタイプします。

">>" で始まる行は、その時何をすべきかを指示しています。例えば、
<<Blank lines inserted here by startup of help-with-tutorial>>
>>  では C-v （次の画面を見る）をタイプして次の画面に進んで下さい。
	（さあ、やってみましょう。コントロールキーを押しながら v です）
	以降、一画面を読み終えるたびに同様にして次の画面に読み進んで下さい。

前の画面と次の画面とでは、表示される内容に何行かの重なりがあります。こ
れは、表示されている内容が連続していることがすぐ判るようにするためです。

まずは、ファイルの中を移動して行く方法を知る必要があります。C-v によっ
て先に進むことはもう判りました。元に戻るには、M-v （メタキーを押しなが
ら v、もしくは <ESC> を押して離して v）です。

>> M-v と C-v を使って、前後に移動することを何回か試して下さい。


＊ここまでの要約
================

     ファイルを画面毎に見て行くには、次のコマンドを使います。

     C-v     次の画面に進む
     M-v     前の画面に戻る
     C-l     画面を書き直す。このとき、カーソルのある行が画面の中央に
	     くるようにする。（C-1 じゃなくって C-L ですよ！）

>> カーソルを見つけ、その近くにどんな文章が書かれているかを覚え、
   それから C-l をタイプして下さい。
   カーソルがどこに移動したか、その近くのテキストはどうなったかを調べ
   てみましょう。


＊基本的なカーソルの制御
========================

画面毎の移動はできるようになりました。今度は、画面の中で、特定の場所に
移動するための方法を憶えましょう。

これにはいくつかのやり方があります。一番基本的な方法は C-p, C-b, C-f,
C-n を使うことです。これらはそれぞれカーソルを前の行、前の文字、次の文
字、次の行に移動させるます。図で書けば、

                               前の行，C-p
                                    :
                                    :
     前の文字，C-b   ....   現在のカーソル位置   ....   次の文字，C-f
                                    :
                                    :
                               次の行，C-n

>> C-n と C-p でカーソルを上図の真中の行に動かして下さい。それから C-l 
   をタイプして図の全体が画面中央にくるようにしてみましょう。


これらはのコマンドはそれぞれ、Previous, Next, Backward, Forward の頭文
字になっているので、憶えやすいでしょう。これらは、基本的なカーソル移動
コマンドであり、いつでも使うものです。今ここで覚えて下さい。

>> C-n を何回かタイプし、（今、あなたが読んでいる）この行までカーソル
   を移動させましょう。

>> C-f を使って行の中ほどに移動し、C-p で何行か上に移動させましょう。
   カーソルの位置の変化に注意して下さい。

各行の最後には（目には見えない） Newline 文字があります。これは次の行
との区切りを示すためです。ファイルの最後も Newline を付けるべきです
（もっとも Emacs はそれを強制はしませんが）。

>> 行の先頭で C-b をタイプしてみましょう。カーソルは前の行の末尾に移動
   するはずです。これは C-b が前の Newline 文字を越えて戻ったからです。

同様に C-f はカーソルを Newline 文字を越えて次に進めることができます。

>> さらにもう少し C-b をタイプしてカーソル移動の感じを把んで下さい。
   今度は C-f で行末まで進んで下さい。
   さらにもう一度 C-f をタイプして次の行に進んで下さい。

画面の先頭や末尾を越えてカーソルを移動させようとすると、その方向にある
文章が画面の中に移動して来てます。これを「スクロール」と呼びます。画面
がスクロールすることによって、カーソルを移動させても、カーソルは常に画
面内にあるようにされます。

>> C-n を使って、カーソルを画面の下端より下に移動させてみなさい。何
   が起こりましたか？

一文字単位の移動ではまどろっこしいなら、単語単位で移動することもできま
す。M-f (<ESC> f) で一単語先へ、M-b (<ESC> b) で一単語前へ移動します。

注意：	日本語については、単語の切れ目を認識することはできませんが、疑
	似的な文節を単語の切れ目としています。

>> M-f や M-b を何回か試してみましょう。

単語の中程にいる時は、M-f はその単語の終わりまで進みます。もし空白文字
にいる時には M-f は次の単語の終わりまで進みます。M-b も同様です、方向
は逆ですが。

>> M-f と M-b を C-f と C-b を交えながら数回試し、単語の中に入る時と、
   単語と単語の間にいる時の動きを調べて下さい。

C-f と C-b に対する、M-f と M-b の類似性に注目しましょう。多くの場合、
メタキーは文書を構成するユニット（単語、文、段落）に対する操作に使い、
コントロールキーはそれよりももっと基本的な対象（文字とか行等）に対する
操作に使います。

この類似性は行と文の関係にもあります。C-a と C-e はそれぞれ行頭と行末
に移動し、M-a と M-e はそれぞれ文頭と文末に移動します。

>> C-a を２回、それから C-e を２回試しましょう。
   M-a を２回、それから M-e を２回試しましょう。

C-a や C-e は繰返してもそれ以上移動しませんが、M-a を繰り返すとどんど
ん前の文頭に戻っていきます。この部分では類似性が破れていますが、まあこ
れが自然な動作ではないでしょうか。

文章中でカーソルがある位置を「ポイント」と呼びます。言いかえれば、カー
ソルは、文章のどこにポイントがあるかを画面上で示しているのです。

以下に単純なカーソル移動操作について要約します。このなかには、単語や行
単位での移動コマンドも含まれています。

	C-f	一文字次に進む
	C-b	一文字前に戻る

	M-f	一単語次に進む
	M-b	一単語前に戻る

	C-n	次の行に移動
	C-p	前の行に移動

	C-a	行頭に移動
	C-e	行末に移動

>> これら全部を何度か試して練習しましょう。
   どれも頻繁に使うコマンドです。

あと二つ、重要なカーソル移動コマンドがあります。ファイルの先頭に移動す
る M-< と、ファイルの末尾に移動する M-> です。

大抵の端末では "<" キーは ","キー（コンマ）の上にあり、それをタイプす
るにはシフトキーを使う必要があります。したがって M-< をタイプするには、
メタキーとシフトキーとコンマキーを同時に押さねばなりません。

>> M-< を試して、この入門ガイドの先頭に移動しましょう。
   それから、C-v を何度か使ってここまで帰ってきてください。

>> M-> を試して、この入門ガイドの末尾に移動しましょう。
   それから、M-v を何度か使ってここまで帰ってきてください。

もし端末に矢印キーがあれば、それを使ってカーソルを動かすこともできます。
けれど、次の３つの理由から C-b, C-f, C-n, C-p を覚えることを勧めます。
第一に、これらはどんな端末でも使えます。第二に、Emacs を使うのが上達し
てくれば、これらのコントロール文字を打つ方が、矢印キーを打つよりずっと
速いことが分るでしょう（手を通常の位置から大きく動かさないでよいので）。
最後に、一度これらのコントロール文字を打つ習慣を付けたら、もっと進んだ
カーソル移動コマンドも簡単に覚えることができます。

Emacsの大抵のコマンドには数値引数を与えることができます。大抵の場合こ
の数値で繰り返し回数を指示することになります。数値引数を与えるには、コ
マンドを入力する前に C-u に続いて数字何桁かタイプします。もしメタキー
が使えるなら、メタキーを押しながら数字をタイプすることもできます。でも
やはり C-u を覚えることを勧めます。それはどんな端末でも使えるからです。

例えば C-u 8 C-f とタイプすると８文字分先に移動します。

>> 適当な数値引数を C-n あるいは C-p に与え、一回のコマンドでなるべく
   この行の近くに来るようにしてみましょう。

大抵のコマンドは数値引数を繰り返し回数と解釈しますが、中には例外もあり
ます。C-v や M-v がそうです。この場合、指定された数の行だけ画面をスク
ロールさせることになります。例えば C-u 4 C-v は画面を４行分上にスクロー
ルさせます。

>> C-u 8 C-v を試してみましょう。

画面が上に８行スクロールしたはずです。また画面を下にスクロールさせるには
M-v に引数を与えればよいのです。

もし X ウィンドウを使っているのなら、スクロールバーと呼ばれる縦長の四
角いエリアが Emacs のウィンドウの左端にあるはずです。そこをマウスをク
リックして画面をスクロールさせることもできます。

>> スクロールバーの中でマウスの真中のボタンを押してみましょう。ボタン
   を押した位置で決まる文章の位置まで画面がスクロールします。

>> スクロールバーの中で真中のボタンを押したままマウスを上下に動かして
   みましょう。それに合せて画面がスクロールするのが分るはずです。


＊ Emacs がハングした時（動かなくなった時）
==========================================

もし Emacs がコマンドに反応しなくなったら、C-g をタイプすることでEmacs 
を安全に止めることができます。C-g でとても時間のかかるコマンドを止める
ことができます。

C-g はまた、数値引数を取り止めたり、２つ以上のキー入力を必要とする
コマンドを入力している最中にそれを取り止めたりするのにも使えます。

>> C-u 100 とタイプして引数１００を設定してから C-g を打ってみましょう。
   それから C-f を打って下さい。一文字しか進まないはずです。なぜなら、
   C-g で数値引数がキャンセルされたからです。

間違って <ESC> をタイプしてしまった時も、C-g でそれを取り消せます。


＊使用不可 (disabled) コマンド
==================================

いくつかのコマンドは初心者が間違って使わないよう使用不可になっています。

もし何れかの使用不可コマンドをタイプしたら、それはどういうコマンドかが
表示され、本当にそれを実行したいのかどうか訊ねられます。

もし本当に実行したいのならスペースキーをタイプして下さい。もし実行した
くなければ n とタイプして下さい。

>> C-x C-l とタイプしてみましょう（これは使用不可コマンドです）。
   それから n とタイプしましょう。


＊ウィンドウ
============

Emacs は幾つものウィンドウに、それぞれ個別の文章を表示することができま
す。どうやって複数のウィンドウを操作するかは後程説明しますが、ここでは、
どうやって余分なウィンドウを消して、元の一つのウィンドウの状態に戻るか
を説明します。それは簡単です。

	C-x 1	ウィンドウを１つにする（つまり他のウィンドウを全部消す）

つまり C-x を打ってからさらに 1 を打つのです。このコマンドはカーソルの
あるウィンドウを画面全体に広げます。他のウィンドウは全部消えます。

>> カーソルをこの行に持ってきて、C-u 0 C-l とタイプしてみて下さい。
>> 続いて C-h k C-f とタイプして下さい。
   新しいウィンドウが C-f コマンドの説明文を表示するために現れるととも
   に、このウィンドウがどのように縮むかを見て下さい。

>> C-x 1 とタイプして、説明文を表示していたウィンドウが消えるのを見て下さい。

このコマンド (C-x 1) はこれまでに覚えたコマンドとは異なり、２つのキー
からなります。最初のキーが Control-x です。このキーは、多くのコマンド
を始めるための最初のキーです。それらのコマンドの多くはウィンドウ、ファ
イル、バッファ、それらに関係するものを操作するためのもので、２あるいは
３、４個のキーを必要とするものがあります。


＊挿入と削除
============

テキストを入力したければ、単にそれをタイプして下さい。Emacs は、目に見
える文字（A, 7, * 等）をテキストであるとみなすので、それらはそのまま挿
入されます。<Return>（改行キー）をタイプすれば改行文字が挿入されます。

直前に入力した文字を削除するには、<Delete> をタイプします。<Delete> は、
キーボード上に「Del」と書いてあるキーです。時には <Backspace> キーも
<Delete> として動作しますが、いつもではありません。

より一般的には、<Delete> は現在カーソルのある位置の直前の文字を削除し
ます。

>> 文字をいくつかタイプし、それからそれらを <Delete> を使って削除し
   て下さい。このファイルを変更することを気にする必要はありません。オ
   リジナルの入門ガイドファイルは変更されませんから。今見ているファイ
   ルはあなたのためのコピーです。

文章の一行が画面に収まらない程長くなった場合、その行は画面上の次の行へ
と継続（continued）されます。画面の右端の backslash 文字 ("\") は、そ
の行が継続されていることを表しています。

>> 画面の右端まで文章を入力し、さらに入力を続けて下さい。
   継続行ができるのが分るでしょう。

>> <Delete> を使って画面に収まるところまで現在の行を短くしてみてくださ
   い。継続行は消えます。

改行文字も他の文字と同じように削除できます。２つの行の間の改行文字を消
すとそれらの行が合わさり１つの行になります。もしその合わさった行が画面
の幅よりも長い場合は、継続行となって表示されます。

>> カーソルを行の先頭に移動し、<Delete> をタイプして下さい。現在の行が
   その前の行とつながります。

>> <Return> をタイプして、今削除した改行文字をまた挿入して下さい。

Emacs のほとんどのコマンドは、繰り返しの回数指定できることを思い出して
下さい。これは、文字の挿入についても当てはまります。

>> C-u 8 * とタイプすると ******** が挿入されます。試してみましょう。

これで、Emacs でテキストを入力し、また間違いを修正するもっとも基本的
な方法を学んだことになります。文字と同じ様に、単語や行も削除することができ
ます。削除操作について要約すると次のようになります。

	<Delete>     カーソルの直前の文字を削除（delete）
	C-d	     カーソルのある文字を削除（delete）

	M-<Delete>   カーソルの直前の単語を消去（kill）
	M-d	     カーソル位置以降にある単語を消去（kill）

	C-k	     カーソル位置から行末までを消去（kill）
	M-k	     カーソル位置から文末までを消去（kill）

<Delete> と C-d に対する M-<Delete> と M-d は、C-f と M-f で始まった類
似性をまた拡張します。ここで <Delete> はコントロール文字ではありません
が、まあ、それは気にしないで下さい。C-k と M-k の関係は C-e と M-e の
関係（行と文の対比）と同じです。

一度に２文字以上消した場合、Emacs はその消したテキストを保存しておいて、
また元に戻すことができるようにしています。この「元に戻す」という動作を
再入（yanking）と呼びます。消したテキストは、元と同じ場所にでも元とは
違う場所にでも再入できます。また、何度も再入してテキストのコピーを複数
作ることもできます。再入のためのコマンドは C-y です。

「消去（kill）」と「削除（delete）」の違いに気をつけて下さい。消去した
テキストは再入できますが、削除したものは再入できません。一般に、大量の
テキストを消すコマンドはそのテキストを保存しておきますが、一文字とか空
白行や空白文字を削除するコマンドは削除したものを保存しきません。

>> 空行でない行の先頭にカーソルを移動させて下さい。
   それから C-k でその行のテキストを消去して下さい。
>> もう一度 C-k をタイプしてください。その行に続く改行文字が消されるの
   が分りましたか。

一回目の C-k はその行のテキストを消し、２回目の C-k はその行自身を消し
てその先の行を上げてきます。C-k の数値引数の扱いは特殊です。引数分の行
（行の内容と行自身）を消します。これは単なる繰り返しではありません。
C-u 2 C-k は２つの行とそれぞれに続く改行文字を消しますが、C-k を２度タ
イプしてもそうはなりません。

最後に消去したテキストを現在カーソルがある位置に再入するには C-y をタ
イプします。

>> 試して下さい。C-y をタイプして最後に消去したテキストを再入しましょう。

C-y は、あなたが無くしたものを取り戻すものだと考えましょう。C-k を続け
て実行すると、消去した各行は全部まとめて保存されるので、一回の C-y で
それらの行が全部再入されます。

>> C-k を何度か続けてタイプしてみて下さい。

さあ、消去したテキストを再入しましょう。

>> C-y をタイプして下さい。次にカーソルを数行下に移動させ、また C-y を
   タイプして下さい。どうやってテキストをコピーするか分りましたね。

過去に消去したテキストを再入したいのに、別のテキストをその後消去した時
はどうすればよいでしょう？ C-y は最後に消去したものを再入します。でも
それでより以前に消去したテキストがなくなるわけではありません。そういう
テキストは M-y で再入できます。C-y で最後に消去したテキストを再入した
直後にM-y をタイプすると、その再入されたテキストはそれ以前に消去したも
のに変更されます。何度も続けて M-y をタイプすると、さらに前に消去した
テキストを呼び戻せます。望みのテキストに行き当ったら、それはそのままに
して編集作業を続ければよいのです。

ある回数だけ M-y を繰り返したら、また最初（つまり最後に消去したテキス
ト）に戻ります。

>> 一行消去し、別の行に行ってその行を消去して下さい。
   それから C-y で２番目（最後）に消去した行を再入して下さい。
   続いて M-y でその行を最初に消去した行に変えて下さい。
   M-y を続けどうなるか見てみましょう。２番目に消去した行が戻って来る
   まで M-y を繰り返し、さらにもう何度か M-y をしましょう。
   もし望みなら M-y に正もしくは負の数値引数を与えても良いでしょう。


＊取り消し(UNDO)
================

もし、文章を変更した後でその変更は間違いだったと思ったら、取り消し
（undo）コマンド C-x u でその変更を取り消すことができます。

通常、C-x u は一つのコマンドによる変更を取り消します。続けて何度も C-x
u を行えばそのたびに一つ前のコマンドが取り消しになります。

ただしこれには例外が二つあります。まず、文章を変更しないコマンドは取り
消しになりません。カーソル移動やスクロールのコマンドがそれに当たります。
それから、テキスト文字の挿入（自己挿入コマンド）は 20 個一まとめで扱わ
れます。これはテキストの挿入を取り消すための C-x u の回数を減らすため
です。

>> この行をC-kで消して下さい。そして、C-x u で戻して下さい。

C-_ も取り消し（undo）を行なうコマンドです。機能は、C-x u と同じですが、
続けて何度もタイプする場合はより便利です。C-_ の問題は、キーボードによっ
てはどうやってタイプするのか分りづらい事です。だから C-x u があるので
す。端末によっては、コントロールキーを押したまま / をタイプすると C-_ 
をタイプしたことになります。

C-_ や C-x u は数値引数を繰り返し回数と解釈します。


＊ファイル
==========

編集している文章を恒久的な物にするには、それをファイルに保存しなければ
なりません。さもないと、Emacs の終了と同時にそれはなくなってしまいます。
文章をファイルにセーブ（保存）するには、テキストを入力する前に、まずファ
イルを開かなければなりません（ファイルを "visit" するとも言います）。

ファイルを開くとは、そのファイルの中身を Emacs で見ることを意味します。
色々な意味で、それはあなたがファイル自身を編集しているかの様です。しか
し、Emacs で行う変更はファイルをセーブする迄は恒久的なものとなりません。
これは、それを望まないのに、途中まで変更したファイルが残るのを避けるた
めです。セーブした後でさえ、変更したものが間違っていた時のために、元の
ファイルは名前を変えて残されます。

画面の一番下近くに、"-J:-- TUTORIAL.ja" の様な文字列で始まり "----" で
終っている行があるはずです。通常は画面のこの部分に現在開いているファイ
ルの名前が表示されています。今は "TUTORIAL.ja" という名のファイル（こ
れは Emacs 入門ガイドのあなた用のコピーです）を開いています。Emacs で
ファイルを開くとそのファイルの名前がこの部分に現れます。

ファイルを開くためのコマンドはこれまで学んだものとは違い、ファイルの名
前を指定しなければなりません。これを、コマンドが「端末から引数を読み込
む」と言います。今の場合は引数はファイル名です。次のコマンド

	C-x C-f   Find a file

をタイプすると、Emacs はファイル名を聞いてきます。タイプしたファイル名
は画面の最下行に表示されます。この最下行は、こういう入力のために使って
いる時は、ミニバッファと呼びます。通常の編集コマンドでファイル名を編集
することもできます。

ファイル名の入力中（あるいはその他のミニバッファ入力中）に C-g によっ
てコマンドをキャンセルできます。

>> C-x C-f をタイプしてから C-g をタイプしてみましょう。ミニバッファが
   取り消され、それを使っていたコマンド C-x C-f 自体も取り消されます。
   だから、ファイルは何も開かれません。

ファイル名を入力したら、<Return>キーをタイプし入力を完了させます。そう
すると、C-x C-f コマンドが走り始め指定したファイルを開きます。ミニバッ
ファは C-x C-f コマンドの終了とともに消えます。

ファイルの内容が画面に表示されると、その内容を変更することができます。
加えた変更を恒久的なものにしたければ、次のコマンドをタイプします。

	C-x C-s   Save the file

これは Emacs が保持している文章をファイルにコピーします。初めてこれを
実行するときは、元のファイルを新しい名前に付け替えるので、その内容は失
われません。その新しい名前は元のファイルの名前の最後に'~'をつけたもの
です。

セーブが終わると、セーブしたファイルの名前が表示されます。割と頻繁にセー
ブした方が良いでしょう。システムが落ちてもせっかくの作業がパアにならな
いように。

>> C-x C-s とタイプしてこの入門ガイドのコピーをセーブして下さい。
   画面最下段に "Wrote ...TUTORIAL.ja" と表示されます。

注意：システムによっては C-x C-s とタイプすると画面が動かなくなり 
Emacs が表示しようとするものが何も画面に出なくなります。これは、フロー
コントロールと呼ばれるＯＳの機能が C-s を捉え、Emacs に渡さないように
しているのです。これを解除するには C-q をタイプします。それから Emacs 
マニュアルの "Spontaneous Entry to Incremental Search (知らぬ間にイン
クリメンタルサーチになる)" の節を読んでください。このやっかいなＯＳの
機能にどう対処すれば良いかが載っています。

既存のファイルを開き、内容を見、編集することができます。存在しないファ
イルを開くこともできます。Emacs で新しいファイルを作るには次のようにし
ます。ファイルを開きます。最初は空っぽですね。文章を入力していきます。
ファイルをセーブしようとした時に初めて新しいファイルが作られ、今まで入
力した内容がそれに書き込まれます。それ以降は、あなたは既存のファイル
（たった今作られたファイル）を編集していると思って下さい。


＊バッファ
==========

２つ目のファイルを C-x C-f で開いても、最初のファイルは Emacs 内部に残っ
たままです。そっちのファイルに戻るにはもう一度 C-x C-f でそのファイル
を開けばよいのです。こうやって、幾つものファイルを Emacs で開くことが
できます。

>> "foo" という名のファイルを作りましょう。C-x C-f foo <Return> です。
   何か文章を入れ、編集し、C-x C-s で "foo" をセーブして下さい。
   最後に C-x C-f TUTORIAL.ja <Retrun> とタイプし
   入門ガイドに戻りましょう。
   
Emacs はファイルの内容をバッファ（buffer）と呼ばれるものの中に格納して
います。ファイルを開くと新しいバッファができます。Emacs が現在持ってい
るバッファのリストを見るには、次のようにタイプします。

	C-x C-b   List buffers

>> C-x C-b を試してみましょう。

各バッファがどんな風に名前やそれが開いているファイルに対するファイル名
を持っているか見て下さい。ファイルを開いていないバッファもあります。た
とえば、"*Buffer List*" という名のバッファはどんなファイルも開いていま
せん。これはバッファのリストを内容とするバッファで、C-x C-b で作られた
ものです。Emacs のウィンドウ内にあるテキストはどれも、いずれかのバッファ
の一部です。

>> C-x 1 とタイプしてバッファリストを消しましょう。

あるファイルの内容になんらかの変更を加え、それから他のファイルを開いて
も、最初のファイルはまだセーブされません。変更は Emacs の内部、そのファ
イルに対応するバッファの中に残ったままです。２番目のファイルのバッファ
を作ったり、編集したりしても、最初のファイルのバッファには何の影響もあ
りません。これはとても役に立ちますが、最初のファイルのバッファをセーブ
する何か便利な方法が必要だということでもあります。 C-x C-s でセーブす
るために C-x C-f で元のバッファに戻るのはは厄介です。そこで次のコマン
ドを使います。

     C-x s   何れかのバッファをセーブする

C-x s は、まだセーブしていない変更があるバッファそれぞれについて、それ
をセーブするかどうかを聞いてきます。

>> 一行テキストを入力してから C-x s とタイプして下さい。
   TUTORIAL.ja というバッファをセーブするかどうか聞いてくるはずです。
   「はい」と答えるために "y" とタイプして下さい。


＊コマンドの拡張
================

Emacs には、コントロール文字やメタ文字に割当られるよりもずっとずっと多
くのコマンドがあります。これらを扱うために、拡張（eXtend）コマンドを使
います。それには、以下の２つの種類があります。

     C-x     文字による拡張。続けて一文字を入力します。
     ESC x   名前による拡張。続けてコマンドの名前を入力します。

これらは、一般的には便利だけれども、これまで見てきたものほどは頻繁に用
いられないコマンドです。C-x C-f （ファイルを開く）や C-x C-s（ファイル
をセーブ）はこの仲間です。他に、C-x C-c（Emacs を終了）もそうです。C-x
C-c に関しては、それまでに加えた変更が無くなるのを心配する必要はありま
せん。Emacs を終了させる前に変更された各ファイルをセーブするかどうか聞
いてきますから。

C-z は「一時的に」 Emacs を抜けるコマンドです。また同じ Emacs セッショ
ンに戻ることができます。

それができるシステム上なら、C-z は Emacs を「中断」させます。つまり 
Emacs を終了することなく、コマンドシェルに戻ることができます。大方の標
準的なシェルなら、`fg' コマンドもしくは `%emacs' によって Emacs を再開
できます。

「中断」機能を実装していないシステムでは、C-z は Emacs の下で走るサブ
シェルを作り、他のプログラムを走らせてからまた Emacs に戻ることができ
るようにします。この場合本当に Emacs から抜け出るわけではありませんの
で、シェルコマンドの `exit' がそのサブシェルから Emacs に戻る普通のや
り方です。

C-x C-c はログアウトしようと思う時に使うものです。メールツール（mail 
コマンド等）やその他の様々なアプリケーションプログラムが起動した Emacs 
から抜け出る場合に使うのも正しい使い方です。これらのプログラムは Emacs 
の中断にどう対処して良いか知らないでしょうから。しかしながら、普通の場
合は、ログアウトしようしない限りは Emacs を終了させるよりは C-z で中断
させる方が良いでしょう。

C-x コマンドはたくさんあります。これまでに、以下を学びました。

	C-x C-f   ファイルを開く（Find）
	C-x C-s   ファイルのセーブ（Save）
	C-x C-b   バッファのリストアップ
	C-x C-c   Emacs を終了
	C-x u	  取り消し	

名前による拡張コマンドには、あまり使わないものや、特定のモードでしか使
わないものがあります。たとえば replace-string ですが、これは文字列を置
換するものです。M-x をタイプすると、Emacs は画面の最下行に M-x と表示
し入力を促すので、そこにコマンドの名前（この場合 "replace-string"）を
入れなければなりません。"repl s<TAB>" とだけタイプすると Emacs がコマ
ンド名を補完してくれます。コマンド名を入れたら <Return> を打って下さい。

"Replace string" コマンドには引数が二つ必要です。どの文字列をどう置換
するかです。各引数を入力するたびに <Return> を打って下さい。


>> カーソルをここから２行下の空行に移動させて下さい。
   M-x repl s<Return>changed<Return>Altered<Return> とタイプしましょう。

   この行がどう変わるか(changed)見ましょう。あなたはカーソル以降全部の 
   c-h-a-n-g-e-d という語を "altered" に変えたのです。


＊自動セーブ
============

ファイルに変更を加えてまだセーブしていない場合、それらの変更は計算機が
クラッシュすると失われてしまう可能性があります。そういう事態を避けるた
め、編集中の各ファイルについて自動セーブファイルが定期的に書かれます。
自動セーブファイルは頭とお尻に # が付いています。例えば "hello.c" とい
うファイルの自動セーブファイルは "#hello.c#" です。通常の方法でファイ
ルをセーブしたときに、そういう自動セーブファイルは消されます。

計算機がクラッシュした場合、自動セーブされた編集を回復させることができ
ます。普通にファイル（編集していたもので、自動セーブファイルじゃありま
せん）を開き、それから M-x recover file<Return> とタイプするのです。確
認を求めてきますので、yes<Return> とタイプし自動セーブされたデータを回
復します。


＊エコーエリア
==============

もしゆっくりとコマンドを打ったならば、画面の下のエコーエリアと呼ばれ
る場所に打ったものが表示されます。エコーエリアは画面の最下行です。


＊モードライン
==============

エコーエリアのすぐ上の行は、モードラインと呼びます。モードラインはこんな風に見えるでしょう。

-J:**  TUTORIAL.ja       (Fundamental)--L670--58%----------------

この行は Emacs の状態及び編集中の文章について有益な情報を与えてくれま
す。

ファイル名についてはもう分っていますね。それはあなたが開いたファイルで
す。-NN%-- は文章中の現在位置を示しています。文章の NN% が画面最上段よ
り前にあるということです。もし文章の最初の行が画面にある時には --00%-- 
の代りに --Top-- と表示します。もし文章の最後の行が画面にある時には 
--Bot-- と表示します。もし画面に全部収まってしまうような短い文章を見て
いるときには --All-- と表示します。

括弧に囲まれた部分はどうな編集モードにいるかを示します。デフォルトは 
"Fundamental" というモード、これが現在のモードです。これは「メジャーモー
ド（major mode）」の一例です。

Emacs には多くの種類のメジャーモードがあります。Lisp mode やText mode 
のように、どんなプログラム言語やどんな種類の文章を編集中かを意味するも
のもあります。いつでも必ずいずれかのメジャーモードの状態になっています。
どのメジャーモードにいるのかは、モードラインの現在は "Fundamental" と
表示している部分を見れば分ります。

各メジャーモードは幾つかのコマンドに異なる振る舞いをさせます。例えば、
プログラムリスト中にコメントを入れるためのコマンドがあります。コメント
の形式（シンタックス）は、プログラム言語によって異なり、メジャーモード
は、それに対応する言語に合った形式でコメントを挿入します。各メジャーモー
ドは拡張コマンドの名前になっています。つまりその拡張コマンドを使ってメ
ジャーモードを切り換えるのです。例えば、M-x fundamental-mode というの
は Fundamental モードに切り換えるためのコマンドです。

もし、通常の英語や日本語の文章（このファイルのような）を編集するのなら
ば、Text mode を使いましょう。

>> M-x text-mode <Retuen> とタイプしてみて下さい。

心配しないで。これまで学んだコマンドはたいして変わりませんから。だけど、
M-f や M-b がアポストロフィ "'" を単語の一部だと解釈するようになったの
が分るでしょう。以前の Fundamental モードでは M-f や M-b は "'" を単語
の区切りと見なしていました。

メジャーモードはこのように些細な違いを生みます。大概のコマンドはどのメ
ジャーモードでも同じ働きをしますが、実際の動きは少しだけことなるのです。

現在のメジャーモードについての説明文を見るには C-h m とタイプします。

>> C-u C-v を一二度やってこの行を画面の上の方に持っていきましょう。
>> C-h m とタイプし、Text mode と Fundamental mode の違いをみましょう。
>> C-x 1 で Text mode の説明文を画面から消しましょう。

メジャーモードが「メジャー」というからには「マイナーモード」もあります。
マイナーモードはメジャーモードの代わりになるものではなく、それをちょっ
とだけ修正するものです。各マイナーモードは、メジャーモードや他のマイナー
モードに影響を与えずに、それだけをオンオフできます。つまり、マイナーモー
ドを全く使わなかったり、一個だけ使ったり、いくつかを同時に使ったりでき
るのです。

通常の文章を編集している時にとても便利なマイナーモードの一つにオートフィ
ル（Auto Fill）モードというのがあります。このモードがオンの時に文章を
入力していって行を長くしすぎた場合、自動的に単語と単語の間で行が分割さ
れます（日本語の場合はどの文字の間でも）。

Auto Fill モードは M-x auto-fill-mode<Return> とやればオンにできます。
それがオンの状態で M-x auto-fill-mode<Return> とやれがオフにできます。
このコマンドは、モードがオフならオンに、オンならオフにするのです。こう
いうのを「モードをトグルする」と言います。

>> M-x auto-fill-mode<Return> とタイプして、 "asdf " で始まる行を入力
   して下さい。行が分割されるまで何度も "asdf " とタイプしましょう。ス
   ペースを忘れずに。Auto Fill はスペースが入力された時のみ働きます。

右マージンは通常 70 文字（カラム）ですが、C-x f コマンドでこれを変更す
ることができます。指定の文字数を数値引数として与えます。

>> 数値引数 20 で C-x f をやりましょう。 (C-u 2 0 C-x f)。
   それから適当な文章（英語）を入力し、20 文字で行が分割されるのを見て
   みましょう。それから C-x f コマンドでまたマージンを 70 文字に戻して
   下さい。

パラグラフの途中を変更しても Auto Fill モードはそれを自動的にフィルし
直しはしません。
パラグラフをフィルし直すにはカーソルをそのパラグラフの中に置いてから
M-q をタイプします。

>> カーソルをこの行直前のパラグラフに移動させ M-q とタイプして下さい。

＊検索
======

文章中の特定の文字列を、前向きにも後向きにも探す事ができます。文字列を
探すというのはカーソル移動コマンドです。つまり、次にその文字列が現れる
場所までカーソルを移動させるのです。

Emacs の検索コマンドは他の大概のエディタの検索コマンドとは異り「インク
リメンタル」です。検索する文字列をタイプしているそばから検索が起るので
す。

検索を始めるためのコマンドは、前向きに検索するならば C-s、後向きなら
C-r です。まだです！！今はまだ試さないで下さい。

C-s を打つと "I-search" という文字列がエコーエリアに表示されるのが見え
るでしょう。これは Emacs がインクリメンタル検索という状態にいて、あな
たが探したい文字列を入力するのを待っているのです。<Return> を打てば検
索を終われます。

>> さて C-s とタイプして検索を始めましょう。ゆっくりと１文字ずつ
   "cursor" という単語を入力します。１文字打つ毎にカーソルがどう動くか
   見ましょう。
   さあ、"cursor" が１回見つかりました。
>> もう一度 C-s と打って次の "cursor" を見つけましょう。
>> 今度は <Delete> を４回打って、カーソルの動きを見て下さい。
>> <Return> と打って検索を終了しましょう。

何が起ったか分りますか？インクリメンタル検索では、あなたがそれまでに打っ
た文字列が現れるところに行こうとします。次の "cursor" に行くにはもう一
度 C-s と打ちます。もしもうそういう文字列が無かったら、ベルをならして
検索が現在は失敗していることを知らせます。C-g を打てば検索を終われます。

注意：システムによっては C-s とタイプすると画面が動かなくなり Emacs が
表示しようとするものが何も画面に出なくなります。これは、フローコントロー
ルと呼ばれるＯＳの機能が C-s を捉え、Emacs に渡さないようにしているの
です。これを解除するには C-q をタイプします。それから Emacs マニュアル
の "Spontaneous Entry to Incremental Search (知らぬ間にインクリメンタ
ルサーチになる)" の節を読んでください。このやっかいなＯＳの機能にどう
対処すれば良いかが載っています。

インクリメンタル検索の途中で <Delete> を打つと検索文字列中の１番後ろの
文字が消えます。そして、カーソルは、前回の位置に戻ります。たとえば、
"c" とタイプして最初の "c" を探します。それから "u" を打つと最初の
"cu" の場所にカーソルが動きます。そこで <Delete> を打つと "u" を検索文
字列から消して、カースルは最初に "c" が現れた場所に戻ります。


C-s は、現在のカーソル位置以降に出てくる検索文字列を探し始めます。もし、
文章の前の方を探したかったら、C-r をタイプします。これまでの C-s につ
いての説明はすべて C-r にも当てはまります。検索の方向が反対なだけです。

＊複数のウィンドウ
==================

Emacs の素敵な機能の一つとして、一つの画面に同時にいくつものウィンドウ
を表示することができます。

>> カーソルをこの行に持ってきて C-u 0 C-l とタイプして下さい。

>> それから C-x 2 とタイプし画面を２つのウィンドウに分割しましょう。
   どちらのウィンドウもこの入門ガイドを表示しています。カーソルは上の
   ウィンドウにあります。

>> C-M-v とタイプし下のウィンドウをスクロールさせましょう。
   （メタキーがない場合は ESC C-v とタイプします。）

>> C-x o （"o" は "other（他方）" を意味します）をタイプし下のウィンド
   ウにカーソルを移して下さい。
>> 下のウィンドウで C-v や M-v を使ってスクロールさせましょう。
   ここに書いてある指示は上のウィンドウで読み進んでください。

>> もう一度 C-x o とタイプし、カーソルを上のウィンドウに戻します。
   カーソルは上のウィンドウの元あった位置に戻ります。

C-x o を使ってウィンドウ間を行ったり来たりできます。各ウィンドウはそれ
自身のカーソル位置を保持していますが、一度には一つのウィンドウだけがカー
ソルを表示します。通常の編集コマンドは皆カーソルがあるウィンドウに対し
て働きます。そのウィンドウを "selected window (選択中のウィンドウ)" と
呼びます。

C-M-v コマンドは、一つのウィンドウで文章を編集中に他のウィンドウを参照
している時に役立ちます。編集中の場所にカーソルを保ったまま、C-M-v で他
のウィンドウを読み進めて行くことができます。

C-M-v はコントロールメタ文字の一例です。メタキーがある場合は、コントロー
ルキーとメタキーを押しながら v をタイプします。コントロールキーとメタ
キーはどちらを先に押しても構いません。どちらもその後にタイプされる文字
に対する修飾キー (modifier key) として働くからです。

メタキーが無い場合、ESC キーを使いますが、この場合順番が大事です。まず
ESC を押してから離して C-v を打ちます。C-ESC v では駄目です。これは
ESC はそれ自体が一つの文字で修飾キーではないからです。

>> 上のウィンドウで C-x 1 とタイプし下のウィンドウを消しましょう

（もし下のウィンドウで C-x 1 とタイプすると上のウィンドウが消えます。
このコマンドは「現在自分がいるウィンドウだけにしなさい」というものだと
思って下さい。）

同じバッファを両方のウィンドウに表示する必要はありません。一方のウィン
ドウで C-x C-f でファイルを開いても他方のウィンドウは変化しません。各
ウィンドウにおいて別々のファイルを開くことができるのです。

>> C-x 4 C-f とタイプし続けて何か自分のファイル名を入力して下さい。
   <Return> で入力を終わらせて下さい。今指定したファイルが下のウィンド
   ウに現れます。カーソルもそっちに移ります。

>> C-x o とタイプし上のウィンドウに戻って下さい。それから C-x 1 で下の
   ウィンドウを消しましょう。


＊再帰編集レベル (RECURSIVE EDITING LEVELS)

時々（不本意に）再帰編集レベルと呼ばれる状態に入ることがあります。モー
ドラインのメジャーモード名を囲む丸括弧 "()" がさらに鉤括弧 "[]" で囲ま
れます。例えば、(Fundamental) と表示される代わりに [(Fundamental)] の
ようになります。

再帰編集レベルから抜け出すには ESC ESC ESC とタイプします。これは汎用
「抜け出し」コマンドです。余分なウィンドウを消したり、ミニバッファから
抜けたりするのにも使えます。


>> M-x とタイプしミニバッファに入って下さい。それから ESC ESC ESC とタ
   イプし抜け出してみましょう。

C-g では再帰編集レベルからは抜け出せません。これは、C-g が再帰編集レベ
ル内でのコマンドや引数を取り消すのに使われているからです。


＊もっともっとヘルプ
====================

この入門ガイドでは Emacs を使い始めるのに十分な情報を提供したつもりで
す。Emacs にはあまりにも多くの機能があるので、ここですべてを説明するの
は無理です。それでも役に立つ機能をもっと多く学びたいと思う人のためには、
Emacs のコマンドの説明を読むためのコマンドがあります。これらの「ヘルプ」
コマンドは皆 Control-h 文字（ヘルプ文字と呼びます）で始まります。

ヘルプ機能を使うには、C-h に続いてどんな種類のヘルプが必要かを示す１文
字をタイプします。もしそれすら分らない場合は C-h ? とタイプしましょう。
どんな種類のヘルプを提供できるかが示されます。もし、C-h をタイプしてか
ら気が変わったら、C-g をタイプして取り消すことができます。

（サイトによっては C-h 文字の意味を変更しているかもしれません。ユーザ
全員に対する総括的な手段としてそんなことをするべきではありません。そう
いう場合はシステム管理者に文句を言いましょう。ま、ともかく、もし C-h 
が画面の下の方にヘルプのメッセージを出さなければ、F1 キーか M-x help
<Return> を試してみて下さい。）

最も基本的なヘルプ機能は C-h c です。C-h、それから c、そしてコマンドの
文字若しくはそのシーケンスをタイプすると、そのコマンドについての短い説
明を表示します。

>> C-h c Control-p とタイプしてみましょう。
   以下のようなメッセージが表示されるはずです。

	C-p runs the command previous-line

これは「ファンクションの名前」を表示したのです。ファンクション名は主に 
Emacs をカスタマイズしたり拡張したりするのに使われます。しかし、ファン
クション名はそのコマンドが何をするものなのかが分るように付けられますの
で、簡単な説明としてもそのまま役に立ちます。一度学んだコマンドについて
思い出すには十分です。

C-x C-s や（メタキーやアルトキーがない場合の） <ESC> v などの複数文字
のコマンドを C-h c の後にタイプすることもできます。

コマンドについてもっと多くの情報が欲しければ C-h c の代わりに C-h k を
使います。

>> C-h k Control-p とタイプしてみましょう。

Emacsのウィンドウに、コマンドの名前と同時にその機能の説明が表示されま
す。読み終えたら、C-x 1 とタイプしてヘルプのテキストを消しましょう。必
ずしもすぐにそうする必要はありません。ヘルプテキストを見ながら編集を続
け、それから C-x 1 とタイプしても構いません。

C-h には他にも役に立つオプションがあります。

   C-h f	ファンクションの説明。ファンクション名を入力します。

>> C-h f previous-line<Return> とタイプしてみましょう。
   C-p コマンドを実行するファンクションについてのすべての情報を表示し
   ます。

   C-h a	コマンドアプロポス (command apropos)。キーワードを入力
		すると、そのキーワードを名前に含む全てのコマンドをリス
		トアップします。これらのコマンドは全て M-x で実行でき
		ます。コマンドによっては、それを走らせるための１文字か
		２文字のシーケーンスも表示されます。

>> C-h a file<Return> とタイプしてみて下さい。

"file"という文字列を名前の一部に持つ全ての M-x コマンド（拡張コマンド）
を別のウィンドウに表示します。 C-x C-f のような文字コマンドも対応する
名前（find-file のように）に並んで表示されます。

>> C-M-v とタイプしヘルプのウィンドウをスクロールさせましょう。何度か
   やって下さい。

>> C-x 1 でヘルプウィンドウを消して下さい。


＊おわりに
==========

忘れないで！Emacs を終了するには、C-x C-c です。また Emacs に戻って来
られるように一時的にシェルに戻るだけなら C-z です。

この入門ガイドは、まったくの初心者にもわかりやすいようにと意図していま
す。ですから、もし何かわかりにくい点があったなら、自分を責めないで文句
をつけて下さい。


＊この翻訳版についての謝辞
==========================

この文書は Emacs Ver.20 付属の英語版の入門ガイドを日本語に翻訳したもの
です。その際、Mule 付属の日本語ガイドを参考にしました。その日本語ガイ
ドは、元は SANETO Takanori 氏が日本語 MicroEmacs(kemacs) 入門編として
翻訳され、それを鈴木裕信氏 <hironobu@sra.co.jp> がNemacs/Mule 用に変更、
さらに吉田茂樹氏が修正されたものです。これらの方々に深く感謝します。


＊著作権表示
============

ここに元の英語版の著作権表示をそのまま付けます。この翻訳版もこれに従い
ます。

This tutorial descends from a long line of Emacs tutorials
starting with the one written by Stuart Cracraft for the original Emacs.

This version of the tutorial, like GNU Emacs, is copyrighted, and
comes with permission to distribute copies on certain conditions:

Copyright (c) 1985, 1996 Free Software Foundation

   Permission is granted to anyone to make or distribute verbatim copies
   of this document as received, in any medium, provided that the
   copyright notice and permission notice are preserved,
   and that the distributor grants the recipient permission
   for further redistribution as permitted by this notice.

   Permission is granted to distribute modified versions
   of this document, or of portions of it,
   under the above conditions, provided also that they
   carry prominent notices stating who last altered them.

The conditions for copying Emacs itself are more complex, but in the
same spirit.  Please read the file COPYING and then do give copies of
GNU Emacs to your friends.  Help stamp out software obstructionism
("ownership") by using, writing, and sharing free software!

;;; Local Variables:
;;; coding: iso-2022-jp
;;; End:
