File:  [Local Repository] / gnujdoc / emacs-20.6 / basic-ja.texi
Revision 1.1: download - view: text, annotated - select for diffs
Wed Apr 26 06:42:33 2000 UTC (20 years, 6 months ago) by hayashi
Branches: MAIN
CVS tags: HEAD
New files

    1: @c =============================================================
    2: @c = 元 翻 訳: 高汐一紀@電気通信大学
    3: @c = 加筆修正: 大木敦雄@大塚.筑波大学 = 1998/11/25
    4: @c = 20.4改訂: 大木敦雄@大塚.筑波大学 = 1999/09/12
    5: @c =============================================================
    6: @c This is part of the Emacs manual.
    7: @c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997 Free Software Foundation, Inc.
    8: @c See file emacs.texi for copying conditions.
    9: @node Basic, Minibuffer, Exiting, Top
   10: @c @chapter Basic Editing Commands
   11: @chapter 基本編集コマンド
   12: 
   13: @kindex C-h t
   14: @findex help-with-tutorial
   15: @c   We now give the basics of how to enter text, make corrections, and
   16: @c save the text in a file.  If this material is new to you, you might
   17: @c learn it more easily by running the Emacs learn-by-doing tutorial.  To
   18: @c use the tutorial, run Emacs and type @kbd{Control-h t}
   19: @c (@code{help-with-tutorial}).
   20: テキストの入力、修正、ファイルへの保存といった基本操作について説明します。
   21: これらに接するのが初めてという読者は、
   22: 手を動かしながら学ぶチュートリアルを実行したほうが、
   23: もっと簡単に習得できる思います。
   24: チュートリアルを利用するには、
   25: Emacsを起動して@kbd{Control-h t}と打ちます。
   26: @footnote{【訳注】Emacsのインストールの仕方によっては、
   27: きちんと日本語のチュートリアルが表示される。
   28: そうでなければ、
   29: @kbd{M-x set-language-environment @key{RET} Japanese @key{RET}}(あるいは、
   30: @kbd{C-x @key{RET} l Japanese @key{RET}})と打ってから、
   31: 改めて@kbd{Control-h t}と打つ。
   32: 日本語以外にもいくつかの言語のチュートリアルがある。}
   33: 
   34: @c   To clear the screen and redisplay, type @kbd{C-l} (@code{recenter}).
   35: 画面をクリアして再表示するには、@kbd{C-l}(@code{recenter})と打ちます。
   36: 
   37: @menu
   38: 
   39: * Inserting Text::      Inserting text by simply typing it.
   40: * Moving Point::        How to move the cursor to the place where you want to
   41: 			  change something.
   42: * Erasing::	        Deleting and killing text.
   43: * Undo::	        Undoing recent changes in the text.
   44: * Files: Basic Files.   Visiting, creating, and saving files.
   45: * Help: Basic Help.     Asking what a character does.
   46: * Blank Lines::	        Commands to make or delete blank lines.
   47: * Continuation Lines::  Lines too wide for the screen.
   48: * Position Info::       What page, line, row, or column is point on?
   49: * Arguments::	        Numeric arguments for repeating a command.
   50: * Repeating::           A short-cut for repeating the previous command.
   51: @end menu
   52: 
   53: @node Inserting Text, Moving Point, , Basic
   54: @c @section Inserting Text
   55: @section テキストを挿入する
   56: 
   57: @c @cindex insertion
   58: @c @cindex graphic characters
   59: @cindex 挿入
   60: @cindex 図形文字
   61: @c   To insert printing characters into the text you are editing, just type
   62: @c them.  This inserts the characters you type into the buffer at the
   63: @c cursor (that is, at @dfn{point}; @pxref{Point}).  The cursor moves
   64: @c forward, and any text after the cursor moves forward too.  If the text
   65: @c in the buffer is @samp{FOOBAR}, with the cursor before the @samp{B},
   66: @c then if you type @kbd{XX}, you get @samp{FOOXXBAR}, with the cursor
   67: @c still before the @samp{B}.
   68: 編集中のテキストに印字文字を挿入するには、
   69: 単にその文字を打ちます。
   70: こうすると、打鍵した文字がバッファのカーソル位置
   71: (すなわち@dfn{ポイント}位置。@pxref{Point})に挿入されます。
   72: カーソルは右(前向き)に移動して、
   73: それにあわせてカーソル以降のすべてのテキストも右(前向き)に移動します。
   74: バッファ内のテキストが@samp{FOOBAR}であって、
   75: カーソルが@samp{B}に重なっているとすると、
   76: @kbd{XX}と打つとカーソルは@samp{B}に重なったままで、
   77: @samp{FOOXXBAR}となります。
   78: 
   79: @c    To @dfn{delete} text you have just inserted, use @key{DEL}.  @key{DEL}
   80: @c deletes the character @emph{before} the cursor (not the one that the cursor
   81: @c is on top of or under; that is the character @var{after} the cursor).  The
   82: @c cursor and all characters after it move backwards.  Therefore, if you type
   83: @c a printing character and then type @key{DEL}, they cancel out.
   84: 挿入したばかりのテキストを@dfn{削除}(delete)するには、
   85: @key{DEL}キーを使います。
   86: @key{DEL}キーは@emph{カーソルのまえ}の文字を削除します
   87: (カーソルが重なっている文字ではない。
   88: その文字はカーソルの@var{うしろ}にある)。
   89: カーソルとカーソル以降のすべてのテキストは左(後向き)に移動します。
   90: つまり、図形文字を1つ打った直後に@key{DEL}を打つと、
   91: 挿入を取り消したことになります。
   92: 
   93: @kindex RET
   94: @c @cindex newline
   95: @cindex 改行
   96: @c    To end a line and start typing a new one, type @key{RET}.  This
   97: @c inserts a newline character in the buffer.  If point is in the middle of
   98: @c a line, @key{RET} splits the line.  Typing @key{DEL} when the cursor is
   99: @c at the beginning of a line deletes the preceding newline, thus joining
  100: @c the line with the preceding line.
  101: 行を終えて新たな行を打ち始めるには、@key{RET}を打ちます。
  102: これにより、バッファに改行文字が挿入されます。
  103: ポイントが行の途中にある場合、@key{RET}は行を分割します。
  104: カーソルが行頭にあるときに@key{DEL}を打つと、
  105: 直前の改行文字が削除されて直前の行と連結されます。
  106: 
  107: @c   Emacs can split lines automatically when they become too long, if you
  108: @c turn on a special minor mode called @dfn{Auto Fill} mode.
  109: @c @xref{Filling}, for how to use Auto Fill mode.
  110: @dfn{自動詰め込み}(auto-fill)モードと呼ばれる特別なマイナモードを
  111: オンにしておくと、行が長くなりすぎたときにEmacsが自動的に行を分割します。
  112: 自動詰め込み(auto-fill)モードの使い方は、@xref{Filling}。
  113: 
  114: @c   If you prefer to have text characters replace (overwrite) existing
  115: @c text rather than shove it to the right, you can enable Overwrite mode,
  116: @c a minor mode.  @xref{Minor Modes}.
  117: 既存のテキストを右に押しやるのではなく、
  118: テキストを順次置き換える(上書きする)のが好みならば、
  119: マイナモードの1つである上書き(overwrite)モードをオンにします。
  120: @xref{Minor Modes}。
  121: 
  122: @c @cindex quoting
  123: @cindex クォート
  124: @kindex C-q
  125: @findex quoted-insert
  126: @c   Direct insertion works for printing characters and @key{SPC}, but other
  127: @c characters act as editing commands and do not insert themselves.  If you
  128: @c need to insert a control character or a character whose code is above 200
  129: @c octal, you must @dfn{quote} it by typing the character @kbd{Control-q}
  130: @c (@code{quoted-insert}) first.  (This character's name is normally written
  131: @c @kbd{C-q} for short.)  There are two ways to use @kbd{C-q}:@refill
  132: 印字文字と@key{SPC}は直接挿入できますが、
  133: それ以外の文字は編集コマンドとして機能して、それ自体を挿入しません。
  134: コントロール文字や8進で0200を超える文字コードの文字を挿入したい場合には、
  135: まず@kbd{Control-q}(@code{quoted-insert})と打って、
  136: それらの文字を@dfn{クォート}(quote)
  137: @footnote{【訳注】なんらの解釈もせずに、単なる文字として扱う。}
  138: する必要があります。
  139: (@kbd{Control-q}は、通常、@kbd{C-q}と略す。)
  140: @kbd{C-q}の使い方には、つぎの2つがあります。
  141: 
  142: @itemize @bullet
  143: @item
  144: @c @kbd{C-q} followed by any non-graphic character (even @kbd{C-g})
  145: @c inserts that character.
  146: @kbd{C-q}に続く非図形文字(@kbd{C-g}でさえも)を挿入する。
  147: 
  148: @item
  149: @c @kbd{C-q} followed by a sequence of octal digits inserts the character
  150: @c with the specified octal character code.  You can use any number of
  151: @c octal digits; any non-digit terminates the sequence.  If the terminating
  152: @c character is @key{RET}, it serves only to terminate the sequence; any
  153: @c other non-digit is itself used as input after terminating the sequence.
  154: @c (The use of octal sequences is disabled in ordinary non-binary Overwrite
  155: @c mode, to give you a convenient way to insert a digit instead of
  156: @c overwriting with it.)
  157: @kbd{C-q}に続く8進数字列は、8進数字列で指定されるコードの文字を挿入する。
  158: 8進数字の桁数はいくつでもかまわず、8進数字以外で数字列は終る。
  159: 終端の文字が@key{RET}であれば、単に数字列を終らせるだけ。
  160: それ以外の非数字は、数字列を終らせるだけでなく、
  161: その文字自身も入力として扱われる。
  162: (普通の上書き(overwrite)モードでは、
  163: 上書きのかわりに挿入を簡単に行う手段としているため、
  164: この8進数字列は使えない。)
  165: @end itemize
  166: 
  167: @noindent
  168: @c When multibyte characters are enabled, octal codes 0200 through 0377 are
  169: @c not valid as characters; if you specify a code in this range, @kbd{C-q}
  170: @c assumes that you intend to use some ISO Latin-@var{n} character set, and
  171: @c converts the specified code to the corresponding Emacs character code.
  172: @c @xref{Enabling Multibyte}.  You select @emph{which} ISO Latin character
  173: @c set though your choice of language environment (@pxref{Language
  174: @c Environments}).
  175: マルチバイト文字が使用可ならば、
  176: 8進コード0200から0377までは正しい文字ではありません。
  177: この範囲のコードを指定すると、
  178: @kbd{C-q}はISO Latin-@var{n}文字集合の利用を意図しているとみなして、
  179: 指定したコードを対応するEmacs文字コードに変換します。
  180: @xref{Enabling Multibyte}。
  181: 言語環境の選択(@pxref{Language Environments})を介して、
  182: ISO Latin文字集合を1つ選びます。
  183: 
  184: @vindex read-quoted-char-radix
  185: @c To use decimal or hexadecimal instead of octal, set the variable
  186: @c @code{read-quoted-char-radix} to 10 or 16.  If the radix is greater than
  187: @c 10, some letters starting with @kbd{a} serve as part of a character
  188: @c code, just like digits.
  189: 8進数のかわりに10進数や16進数を使うには、
  190: 変数@code{read-quoted-char-radix}に10や16を設定します。
  191: 基数が10を超える場合には、@kbd{a}から始まるいくつかの英字は
  192: 文字コードの一部として数字の桁と同じように扱われます。
  193: 
  194: @c A numeric argument to @kbd{C-q} specifies how many copies of the
  195: @c quoted character should be inserted (@pxref{Arguments}).
  196: @kbd{C-q}に数引数を指定すると、
  197: クォートした文字を何個挿入するかを指定します(@pxref{Arguments})。
  198: 
  199: @findex newline
  200: @findex self-insert
  201: @c   Customization information: @key{DEL} in most modes runs the command
  202: @c @code{delete-backward-char}; @key{RET} runs the command @code{newline}, and
  203: @c self-inserting printing characters run the command @code{self-insert},
  204: @c which inserts whatever character was typed to invoke it.  Some major modes
  205: @c rebind @key{DEL} to other commands.
  206: カスタマイズ情報:@code{ }
  207: ほとんどのモードでは、
  208: @key{DEL}はコマンド@code{delete-backward-char}を実行します。
  209: @key{RET}はコマンド@code{newline}を実行します。
  210: 自己挿入の図形文字はコマンド@code{self-insert}を実行します。
  211: @code{self-insert}は、これを起動した文字が何であってもその文字を挿入します。
  212: いくつかのメジャーモードでは、
  213: @key{DEL}を別のコマンドにバインドし直しています。
  214: 
  215: @node Moving Point, Erasing, Inserting Text, Basic
  216: @c @section Changing the Location of Point
  217: @section ポイント位置を移動する
  218: 
  219: @c @cindex arrow keys
  220: @cindex 矢印キー
  221: @kindex LEFT
  222: @kindex RIGHT
  223: @kindex UP
  224: @kindex DOWN
  225: @c @cindex moving point
  226: @c @cindex movement
  227: @c @cindex cursor motion
  228: @c @cindex moving the cursor
  229: @cindex ポイントの移動
  230: @cindex 移動
  231: @cindex カーソルの移動
  232: @c   To do more than insert characters, you have to know how to move point
  233: @c (@pxref{Point}).  The simplest way to do this is with arrow keys, or by
  234: @c clicking the left mouse button where you want to move to.
  235: 文字の挿入以外のことを行うには、ポイント(@pxref{Point})
  236: の移動方法を知っておく必要があります。
  237: もっとも簡単な方法は、矢印キーを使うか、
  238: 移動先の箇所でマウスの左ボタンをクリックします。
  239: 
  240: @c   There are also control and meta characters for cursor motion.  Some
  241: @c are equivalent to the arrow keys (these date back to the days before
  242: @c terminals had arrow keys, and are usable on terminals which don't have
  243: @c them).  Others do more sophisticated things.
  244: カーソル移動のためのコントロール文字やメタ文字もあります。
  245: 一部は矢印キーと同等です
  246: (これらは、矢印キーを備えた端末が現れるまえからあった。
  247: 矢印キーがない端末では便利)。
  248: 他のものは、こったことをします。
  249: 
  250: @kindex C-a
  251: @kindex C-e
  252: @kindex C-f
  253: @kindex C-b
  254: @kindex C-n
  255: @kindex C-p
  256: @kindex M->
  257: @kindex M-<
  258: @kindex M-r
  259: @findex beginning-of-line
  260: @findex end-of-line
  261: @findex forward-char
  262: @findex backward-char
  263: @findex next-line
  264: @findex previous-line
  265: @findex beginning-of-buffer
  266: @findex end-of-buffer
  267: @findex goto-char
  268: @findex goto-line
  269: @findex move-to-window-line
  270: @table @kbd
  271: @item C-a
  272: @c Move to the beginning of the line (@code{beginning-of-line}).
  273: 行頭に移動する(@code{beginning-of-line})。
  274: @item C-e
  275: @c Move to the end of the line (@code{end-of-line}).
  276: 行末に移動する(@code{end-of-line})。
  277: @item C-f
  278: @c Move forward one character (@code{forward-char}).
  279: 前向き(右)に1文字移動する(@code{forward-char})。
  280: @item C-b
  281: @c Move backward one character (@code{backward-char}).
  282: 後向き(左)に1文字移動する(@code{backward-char})。
  283: @item M-f
  284: @c Move forward one word (@code{forward-word}).
  285: 前向きに1語移動する(@code{forward-word})。
  286: @item M-b
  287: @c Move backward one word (@code{backward-word}).
  288: 後向きに1語移動する(@code{backward-word})。
  289: @item C-n
  290: @c Move down one line, vertically (@code{next-line}).  This command
  291: @c attempts to keep the horizontal position unchanged, so if you start in
  292: @c the middle of one line, you end in the middle of the next.  When on
  293: @c the last line of text, @kbd{C-n} creates a new line and moves onto it.
  294: 垂直に1行下へ移動する(@code{next-line})。
  295: このコマンドは行内での横方向の位置を保とうとする。
  296: したがって、行の途中で使うと、つぎの行の途中に移動する。
  297: テキストの最終行である場合には、
  298: @kbd{C-n}は新たな行を作り、その行へ移動する。
  299: @item C-p
  300: @c Move up one line, vertically (@code{previous-line}).
  301: 垂直に1行上へ移動する(@code{previous-line})。
  302: @item M-r
  303: @c Move point to left margin, vertically centered in the window
  304: @c (@code{move-to-window-line}).  Text does not move on the screen.
  305: ポイントをウィンドウの縦方向の中央位置で左端に移動する
  306: (@code{move-to-window-line})。
  307: テキストは画面上を移動しない。
  308: 
  309: @c A numeric argument says which screen line to place point on.  It counts
  310: @c screen lines down from the top of the window (zero for the top line).  A
  311: @c negative argument counts lines from the bottom (@minus{}1 for the bottom
  312: @c line).
  313: 数引数は、画面上の何行目にポイントを移動するかを指定する。
  314: 行数は、ウィンドウ上端(0行目)から下向きに数える。
  315: 負の引数では、ウィンドウの下端(@minus{}1行)から数える。
  316: @item M-<
  317: @c Move to the top of the buffer (@code{beginning-of-buffer}).  With
  318: @c numeric argument @var{n}, move to @var{n}/10 of the way from the top.
  319: @c @xref{Arguments}, for more information on numeric arguments.@refill
  320: バッファの先頭に移動する(@code{beginning-of-buffer})。
  321: 数引数@var{n}を指定すると、先頭から全体の@var{n}/10の行にポイントを移動する。
  322: 数引数の詳細については、@pxref{Arguments}。
  323: @item M->
  324: @c Move to the end of the buffer (@code{end-of-buffer}).
  325: バッファの末尾に移動する(@code{end-of-buffer})。
  326: @item M-x goto-char
  327: @c Read a number @var{n} and move point to buffer position @var{n}.
  328: @c Position 1 is the beginning of the buffer.
  329: 数値@var{n}を読み取り、バッファの@var{n}番目の文字にポイントを移動する。
  330: バッファの先頭が位置1。
  331: @item M-x goto-line
  332: @c Read a number @var{n} and move point to line number @var{n}.  Line 1
  333: @c is the beginning of the buffer.
  334: 数値@var{n}を読み取り、@var{n}行目にポイントを移動する。
  335: バッファの先頭が第1行。
  336: @item C-x C-n
  337: @findex set-goal-column
  338: @kindex C-x C-n
  339: @c Use the current column of point as the @dfn{semipermanent goal column} for
  340: @c @kbd{C-n} and @kbd{C-p} (@code{set-goal-column}).  Henceforth, those
  341: @c commands always move to this column in each line moved into, or as
  342: @c close as possible given the contents of the line.  This goal column remains
  343: @c in effect until canceled.
  344: 現在ポイントがある桁を@kbd{C-n}や@kbd{C-p}の
  345: @dfn{半恒久的な目標桁}として設定する。
  346: このあと、これらのコマンドは、移動先の各行でこの桁位置に、あるいは、
  347: 行の内容によっては可能な限りこの桁に近い位置にポイントを移動する。
  348: この目標桁は取り消すまで有効。
  349: @item C-u C-x C-n
  350: @c Cancel the goal column.  Henceforth, @kbd{C-n} and @kbd{C-p} once
  351: @c again try to stick to a fixed horizontal position, as usual.
  352: 目標桁を取り消す。
  353: これ以後、@kbd{C-n}や@kbd{C-p} は、通常のように
  354: 横方向の位置を保とうとする。
  355: @end table
  356: 
  357: @vindex track-eol
  358: @c   If you set the variable @code{track-eol} to a non-@code{nil} value,
  359: @c then @kbd{C-n} and @kbd{C-p} when at the end of the starting line move
  360: @c to the end of another line.  Normally, @code{track-eol} is @code{nil}.
  361: @c @xref{Variables}, for how to set variables such as @code{track-eol}.
  362: 変数@code{track-eol}に@code{nil}以外を設定すると、
  363: 行末にポイントがある場合の@kbd{C-n}や@kbd{C-p}は、
  364: 移動先の行でも行末にポイントを移動します。
  365: 通常、@code{track-eol}は@code{nil}です。
  366: @code{track-eol}のような変数の設定方法については、@xref{Variables}。
  367: 
  368: @vindex next-line-add-newlines
  369: @c   Normally, @kbd{C-n} on the last line of a buffer appends a newline to
  370: @c it.  If the variable @code{next-line-add-newlines} is @code{nil}, then
  371: @c @kbd{C-n} gets an error instead (like @kbd{C-p} on the first line).
  372: 通常、バッファの最終行での@kbd{C-n}は、新しい行を追加します。
  373: 変数@code{next-line-add-newlines}が@code{nil}である場合、
  374: @kbd{C-n}は新規の行を追加せずに
  375: (先頭行での@kbd{C-p}と同様に)エラーになります。
  376: 
  377: @node Erasing, Undo, Moving Point, Basic
  378: @c @section Erasing Text
  379: @section テキストの消去
  380: 
  381: @table @kbd
  382: @item @key{DEL}
  383: @c Delete the character before point (@code{delete-backward-char}).
  384: ポイントの直前の文字を削除する(@code{delete-backward-char})。
  385: @item C-d
  386: @c Delete the character after point (@code{delete-char}).
  387: ポイントの直後の文字を削除する(@code{delete-char})。
  388: @item C-k
  389: @c Kill to the end of the line (@code{kill-line}).
  390: 行末までをキルする(@code{kill-line})。
  391: @item M-d
  392: @c Kill forward to the end of the next word (@code{kill-word}).
  393: つぎの語の末尾までを前向きにキルする(@code{kill-word})。
  394: @item M-@key{DEL}
  395: @c Kill back to the beginning of the previous word
  396: @c (@code{backward-kill-word}).
  397: まえの語の先頭までを後向きにキルする(@code{backward-kill-word})。
  398: @end table
  399: 
  400: @c @cindex killing characters and lines
  401: @c @cindex deleting characters and lines
  402: @c @cindex erasing characters and lines
  403: @cindex 文字や行のキル
  404: @cindex 文字や行の削除
  405: @cindex 文字や行の消去
  406: @c   You already know about the @key{DEL} key which deletes the character
  407: @c before point (that is, before the cursor).  Another key, @kbd{Control-d}
  408: @c (@kbd{C-d} for short), deletes the character after point (that is, the
  409: @c character that the cursor is on).  This shifts the rest of the text on
  410: @c the line to the left.  If you type @kbd{C-d} at the end of a line, it
  411: @c joins together that line and the next line.
  412: ポイントの直前(つまり、カーソルの直前)の文字を削除する
  413: @key{DEL}キーについてはすでに知っていますね。
  414: @kbd{Control-d}(@kbd{C-d}と略記)は、ポイントの直後の文字
  415: (つまり、カーソルが重なっている文字)を削除します。
  416: すると、残りのテキストは左に移動します。
  417: 行末で@kbd{C-d}を打つと、その行とつぎの行が連結されます。
  418: 
  419: @c   To erase a larger amount of text, use the @kbd{C-k} key, which kills a
  420: @c line at a time.  If you type @kbd{C-k} at the beginning or middle of a
  421: @c line, it kills all the text up to the end of the line.  If you type
  422: @c @kbd{C-k} at the end of a line, it joins that line and the next line.
  423: 大量のテキストを消去するには、@kbd{C-k}を使います。
  424: @kbd{C-k}は1行を一度にキルします。
  425: 行頭や行の途中で@kbd{C-k}を打つと、
  426: 行末までのすべてのテキストをキルします。
  427: 行末で@kbd{C-k}を打つと、その行とつぎの行を連結します。
  428: 
  429: @c   @xref{Killing}, for more flexible ways of killing text.
  430: より柔軟なテキストのキルについての詳細は、@xref{Killing}。
  431: 
  432: @node Undo, Basic Files, Erasing, Basic
  433: @c @section Undoing Changes
  434: @section 変更をアンドゥする(もとに戻す)
  435: @c @cindex undo
  436: @c @cindex changes, undoing
  437: @cindex アンドゥ(もとに戻す)
  438: @cindex 変更、もとに戻す
  439: 
  440: @c   You can undo all the recent changes in the buffer text, up to a
  441: @c certain point.  Each buffer records changes individually, and the undo
  442: @c command always applies to the current buffer.  Usually each editing
  443: @c command makes a separate entry in the undo records, but some commands
  444: @c such as @code{query-replace} make many entries, and very simple commands
  445: @c such as self-inserting characters are often grouped to make undoing less
  446: @c tedious.
  447: バッファのテキストに対する変更は、ある時点まで遡って、
  448: すべてアンドゥ(もとに戻すことが)できます。
  449: 各バッファでは個々の変更をそれぞれ記録していて、
  450: アンドゥコマンドは、つねにカレントバッファに作用します。
  451: 通常、各編集コマンドはアンドゥ記録に別々の項目を作成しますが、
  452: @code{query-replace}のようなコマンドは一度に多くの項目を作りますし、
  453: 自己挿入文字のように非常に単純なコマンドは、
  454: もとに戻すのを単純にするために、まとめられます。
  455: 
  456: @table @kbd
  457: @item C-x u
  458: @c Undo one batch of changes---usually, one command worth (@code{undo}).
  459: 一塊の変更をもとに戻す。
  460: 普通、1つのコマンドに相当する(@code{undo})。
  461: @item C-_
  462: @c The same.
  463: 同じ。
  464: @item C-u C-x u
  465: @c Undo one batch of changes in the region.
  466: リージョン内で、一塊の変更をもとに戻す。
  467: @end table
  468: 
  469: @kindex C-x u
  470: @kindex C-_
  471: @findex undo
  472: @c   The command @kbd{C-x u} or @kbd{C-_} is how you undo.  The first time
  473: @c you give this command, it undoes the last change.  Point moves back to
  474: @c where it was before the command that made the change.
  475: 変更をもとに戻すには、コマンド、@kbd{C-x u}や@kbd{C-_}を使います。
  476: 始めにこのコマンドを実行すると、直前の変更をもとに戻します。
  477: ポイントは、もとに戻されたコマンドを実行するまえの位置に戻ります。
  478: 
  479: @c   Consecutive repetitions of @kbd{C-_} or @kbd{C-x u} undo earlier and
  480: @c earlier changes, back to the limit of the undo information available.
  481: @c If all recorded changes have already been undone, the undo command
  482: @c prints an error message and does nothing.
  483: @kbd{C-_}や@kbd{C-x u}を連続して実行すると、
  484: アンドゥ情報の限界に達するまで、
  485: 次々に以前の変更をもとに戻していきます。
  486: 記録されているすべての変更をもとに戻してしまうと、
  487: アンドゥコマンドはその旨エラーメッセージを表示します。
  488: 
  489: @c   Any command other than an undo command breaks the sequence of undo
  490: @c commands.  Starting from that moment, the previous undo commands become
  491: @c ordinary changes that you can undo.  Thus, to redo changes you have
  492: @c undone, type @kbd{C-f} or any other command that will harmlessly break
  493: @c the sequence of undoing, then type more undo commands.
  494: アンドゥコマンド以外の他のコマンドを実行すると、
  495: アンドゥコマンドの連続実行系列が断ち切られます。
  496: これ以後、これよりまえのアンドゥコマンドの実行自体が、
  497: もとに戻すことが可能な一般の変更として扱われます。
  498: したがって、もとに戻してしまった変更をやはりそのとおりに
  499: 変更しておきたい場合には、
  500: @kbd{C-f}と打つか、あるいは、無害なコマンドを実行して
  501: アンドゥの連続実行系列を断ち切ってから、さらにアンドゥコマンドを打ちます。
  502: 
  503: @c @cindex selective undo
  504: @cindex 選択的なアンドゥ
  505: @kindex C-u C-x u
  506: @c   Ordinary undo applies to all changes made in the current buffer.  You
  507: @c can also perform @dfn{selective undo}, limited to the current region.
  508: @c To do this, specify the region you want, then run the @code{undo}
  509: @c command with a prefix argument (the value does not matter): @kbd{C-u C-x
  510: @c u} or @kbd{C-u C-_}.  This undoes the most recent change in the region.
  511: @c To undo further changes in the same region, repeat the @code{undo}
  512: @c command (no prefix argument is needed).  In Transient Mark mode, any use
  513: @c of @code{undo} when there is an active region performs selective undo;
  514: @c you do not need a prefix argument.
  515: 普通のアンドゥは、カレントバッファにおけるすべての変更に作用します。
  516: カレントリージョン内に制限した@dfn{選択的なアンドゥ}(selective undo)を
  517: 行うこともできます。
  518: これには、リージョンを設定してから、数引数(値は関係ない)を指定して
  519: @code{undo}コマンドを、つまり、@kbd{C-u C-x u}や@kbd{C-u C-_}を実行します。
  520: これにより、リージョン内のもっとも最近の変更がもとに戻ります。
  521: 同じリージョン内の変更をさらにもとに戻すには、
  522: @code{undo}コマンドを繰り返します(これには数引数は必要ない)。
  523: 暫定マーク(transient-mark)モードでは、
  524: リージョンが活性のときに@code{undo}を使うと選択的なアンドゥを行います。
  525: つまり、数引数は必要ありません。
  526: 
  527: @c   If you notice that a buffer has been modified accidentally, the
  528: @c easiest way to recover is to type @kbd{C-_} repeatedly until the stars
  529: @c disappear from the front of the mode line.  At this time, all the
  530: @c modifications you made have been canceled.  Whenever an undo command
  531: @c makes the stars disappear from the mode line, it means that the buffer
  532: @c contents are the same as they were when the file was last read in or
  533: @c saved.
  534: バッファを誤って変更してしまった場合、
  535: もとに戻すもっとも簡単な方法は、モード行の先頭部分から星印が
  536: 消えるまで@kbd{C-_}を繰り返し打つことです。
  537: そうすれば、すべての修正を取り消したことになります。
  538: アンドゥコマンドによりモード行から星印が消えた場合はつねに、
  539: バッファの内容がファイルを訪問したときと同じであるか、
  540: 最後に保存したときと同じであることを意味します。
  541: 
  542: @c   If you do not remember whether you changed the buffer deliberately,
  543: @c type @kbd{C-_} once.  When you see the last change you made undone, you
  544: @c will see whether it was an intentional change.  If it was an accident,
  545: @c leave it undone.  If it was deliberate, redo the change as described
  546: @c above.
  547: 意図してバッファを変更したかどうかあやふやなときは、
  548: 一度だけ@kbd{C-_}を打ちます。
  549: もとに戻すことで最後の変更箇所がわかりますから、
  550: それが意図した変更かどうか判断できるでしょう。
  551: 意図した変更でなければ、もとに戻したままにしておきます。
  552: 意図した変更であったなら、上記の方法で変更し直します。
  553: 
  554: @c   Not all buffers record undo information.  Buffers whose names start with
  555: @c spaces don't; these buffers are used internally by Emacs and its extensions
  556: @c to hold text that users don't normally look at or edit.
  557: すべてのバッファでアンドゥ情報を記録するわけではありません。
  558: 空白で始まる名前のバッファでは記録しません。
  559: これらのバッファは、
  560: Emacsやその拡張部分が内部的に使用するもので、
  561: ユーザーが通常見たり編集したりしないテキストを保持しています。
  562: 
  563: @c   You cannot undo mere cursor motion; only changes in the buffer
  564: @c contents save undo information.  However, some cursor motion commands
  565: @c set the mark, so if you use these commands from time to time, you can
  566: @c move back to the neighborhoods you have moved through by popping the
  567: @c mark ring (@pxref{Mark Ring}).
  568: 単なるカーソル移動はアンドゥできません。
  569: バッファの内容を変更したときだけアンドゥ情報が保存されます。
  570: ただし、いくつかのカーソル移動コマンドはマークを設定しますから、
  571: これらのコマンドをときどき使えば、
  572: マークリング(@pxref{Mark Ring})から取り出しながら、
  573: 通ってきたそれぞれの箇所へ戻ることができます。
  574: 
  575: @vindex undo-limit
  576: @vindex undo-strong-limit
  577: @c @cindex undo limit
  578: @cindex アンドゥの限界
  579: @c   When the undo information for a buffer becomes too large, Emacs
  580: @c discards the oldest undo information from time to time (during garbage
  581: @c collection).  You can specify how much undo information to keep by
  582: @c setting two variables: @code{undo-limit} and @code{undo-strong-limit}.
  583: @c Their values are expressed in units of bytes of space.
  584: バッファに関するアンドゥ情報が大きくなると、
  585: Emacsはもっとも古いアンドゥ情報から順に(ガベッジコレクション中に)
  586: 破棄していきます。
  587: 保持すべきアンドゥ情報の量を指定するには、
  588: 2つの変数@code{undo-limit}と@code{undo-strong-limit}を設定します。
  589: これらの変数の値は、保存領域のバイト数です。
  590: 
  591: @c   The variable @code{undo-limit} sets a soft limit: Emacs keeps undo
  592: @c data for enough commands to reach this size, and perhaps exceed it, but
  593: @c does not keep data for any earlier commands beyond that.  Its default
  594: @c value is 20000.  The variable @code{undo-strong-limit} sets a stricter
  595: @c limit: the command which pushes the size past this amount is itself
  596: @c forgotten.  Its default value is 30000.
  597: 変数@code{undo-limit}は緩い限界(soft limit)を設定します。
  598: Emacsは、このサイズに達するまでのコマンド分のアンドゥデータを保持します。
  599: データ量がこのサイズを超える場合もありますが、
  600: このデータ量を超えるような古いコマンド分のデータは保持しません。
  601: デフォルトは、20000です。
  602: 変数@code{undo-strong-limit}は、厳密な限界(stricter limit)を設定します。
  603: この量を超えるデータに対応するコマンドのデータは破棄します。
  604: 初期値は30000です。
  605: 
  606: @c   Regardless of the values of those variables, the most recent change is
  607: @c never discarded, so there is no danger that garbage collection occurring
  608: @c right after an unintentional large change might prevent you from undoing
  609: @c it.
  610: これらの変数の値に関わらず、最新の変更を破棄することはありませんので、
  611: 意図しない大きな変更を加えてしまった直後に
  612: ガベッジコレクションが発生しても、
  613: その変更をアンドゥできないというようなことはありません。
  614: 
  615: @c   The reason the @code{undo} command has two keys, @kbd{C-x u} and
  616: @c @kbd{C-_}, set up to run it is that it is worthy of a single-character
  617: @c key, but on some keyboards it is not obvious how to type @kbd{C-_}.
  618: @c @kbd{C-x u} is an alternative you can type straightforwardly on any
  619: @c terminal.
  620: アンドゥコマンドを実行するキーが@kbd{C-x u}と@kbd{C-_}と2つある理由は、
  621: 1文字キーにするほど重要なのですが、どうやって@kbd{C-_}を打つか自明でない
  622: キーボードもあるからです。
  623: @kbd{C-x u}は、どの端末でも素直に打てる代替手段なのです。
  624: 
  625: @node Basic Files, Basic Help, Undo, Basic
  626: @c @section Files
  627: @section ファイル
  628: 
  629: @c   The commands described above are sufficient for creating and altering
  630: @c text in an Emacs buffer; the more advanced Emacs commands just make
  631: @c things easier.  But to keep any text permanently you must put it in a
  632: @c @dfn{file}.  Files are named units of text which are stored by the
  633: @c operating system for you to retrieve later by name.  To look at or use
  634: @c the contents of a file in any way, including editing the file with
  635: @c Emacs, you must specify the file name.
  636: Emacsバッファ内でテキストを作成したり変更したりするには、
  637: これまでに説明したコマンドで十分なはずです。
  638: より高度なEmacsコマンドといっても、
  639: これらの操作を容易にするだけです。
  640: しかし、テキストを恒久的なものとするには、
  641: @dfn{ファイル}(file)に保存する必要があります。
  642: ファイルとは、
  643: オペレーティングシステムが保存するために名前を付けたテキストの一塊であり、
  644: あとでその名前で取り出せます。
  645: Emacsでファイルを編集する場合を含めて、
  646: ファイルの内容を眺めたり利用したりするには、
  647: ファイル名を指定する必要があります。
  648: 
  649: @c   Consider a file named @file{/usr/rms/foo.c}.  In Emacs, to begin editing
  650: @c this file, type
  651: @file{/usr/rms/foo.c}という名前のファイルがあるとしましょう。
  652: このファイルを編集し始めるには、Emacsではつぎのように打ちます。
  653: 
  654: @example
  655: C-x C-f /usr/rms/foo.c @key{RET}
  656: @end example
  657: 
  658: @noindent
  659: @c Here the file name is given as an @dfn{argument} to the command @kbd{C-x
  660: @c C-f} (@code{find-file}).  That command uses the @dfn{minibuffer} to
  661: @c read the argument, and you type @key{RET} to terminate the argument
  662: @c (@pxref{Minibuffer}).@refill
  663: ここで、ファイル名は、コマンド@kbd{C-x C-f}(@code{find-file})に対する
  664: @dfn{引数}(argument)として与えます。
  665: このコマンドは引数を読むために@dfn{ミニバッファ}を使います。
  666: 引数の入力を終えるには、@key{RET}を打ちます(@pxref{Minibuffer})。
  667: 
  668: @c   Emacs obeys the command by @dfn{visiting} the file: creating a buffer,
  669: @c copying the contents of the file into the buffer, and then displaying
  670: @c the buffer for you to edit.  If you alter the text, you can @dfn{save}
  671: @c the new text in the file by typing @kbd{C-x C-s} (@code{save-buffer}).
  672: @c This makes the changes permanent by copying the altered buffer contents
  673: @c back into the file @file{/usr/rms/foo.c}.  Until you save, the changes
  674: @c exist only inside Emacs, and the file @file{foo.c} is unaltered.
  675: Emacsはコマンドに従い、ファイルを@dfn{訪問}(visiting)します。
  676: つまり、バッファを作成し、ファイルの内容をそのバッファにコピーし、
  677: ユーザーが編集できるようにそのバッファを表示します。
  678: テキストを変更したら、@kbd{C-x C-s}(@code{save-buffer})と打てば、
  679: 新しいテキストをファイルに@dfn{保存}(save)できます。
  680: これにより、バッファの変更した内容を
  681: ファイル@file{/usr/rms/foo.c}にコピーし戻したので、
  682: 変更は恒久的になります。
  683: ユーザーが保存するまでは、変更はEmacs内部のみに存在するだけで、
  684: ファイル@file{foo.c}自体は未変更のままです。
  685: 
  686: @c   To create a file, just visit the file with @kbd{C-x C-f} as if it
  687: @c already existed.  This creates an empty buffer in which you can insert
  688: @c the text you want to put in the file.  The file is actually created when
  689: @c you save this buffer with @kbd{C-x C-s}.
  690: ファイルを作成するには、そのファイルが既存であるかのように、
  691: @kbd{C-x C-f}でファイルを訪問するだけです。
  692: これにより、空のバッファが作られ、
  693: ファイルに収めたいテキストを挿入できるようになります。
  694: @kbd{C-x C-s}でバッファを保存したときに、
  695: ファイルが実際に作成されます。
  696: 
  697: @c   Of course, there is a lot more to learn about using files.  @xref{Files}.
  698: もちろん、ファイルについてはもっと知っておく必要があります。
  699: @xref{Files}。
  700: 
  701: @node Basic Help, Blank Lines, Basic Files, Basic
  702: @c @section Help
  703: @section ヘルプ
  704: 
  705: @c @cindex getting help with keys
  706: @cindex キーのヘルプ表示
  707: @c   If you forget what a key does, you can find out with the Help
  708: @c character, which is @kbd{C-h} (or @key{F1}, which is an alias for
  709: @c @kbd{C-h}).  Type @kbd{C-h k} followed by the key you want to know
  710: @c about; for example, @kbd{C-h k C-n} tells you all about what @kbd{C-n}
  711: @c does.  @kbd{C-h} is a prefix key; @kbd{C-h k} is just one of its
  712: @c subcommands (the command @code{describe-key}).  The other subcommands of
  713: @c @kbd{C-h} provide different kinds of help.  Type @kbd{C-h} twice to get
  714: @c a description of all the help facilities.  @xref{Help}.@refill
  715: キーの機能を忘れてしまった場合には、
  716: ヘルプ文字@kbd{C-h}(あるいは@kbd{C-h}の別名である@key{F1})を使って、
  717: 調べられます。
  718: @kbd{C-h k}と打ってから、調べたいキーを続けて打ちます。
  719: たとえば、@kbd{C-h k C-n}は、@kbd{C-n}が何をするか教えてくれます。
  720: @kbd{C-h}はプレフィックスキーです。
  721: @kbd{C-h k}は、@kbd{C-h}の1つのサブコマンド
  722: (コマンド@code{describe-key})です。
  723: @kbd{C-h}には他にもサブコマンドがあり、
  724: それぞれ異なる種類のヘルプを表示します。
  725: @kbd{C-h}を2回打てば、ヘルプ機能自体の説明を見ることができます。
  726: @xref{Help}。
  727: 
  728: @node Blank Lines, Continuation Lines, Basic Help, Basic
  729: @c @section Blank Lines
  730: @section 空行
  731: 
  732: @c @cindex inserting blank lines
  733: @c @cindex deleting blank lines
  734: @cindex 空行の挿入
  735: @cindex 空行の削除
  736: @c   Here are special commands and techniques for putting in and taking out
  737: @c blank lines.
  738: 空行の挿入と削除に関する特別なコマンドや技法を紹介します。
  739: 
  740: @c widecommands
  741: @table @kbd
  742: @item C-o
  743: @c Insert one or more blank lines after the cursor (@code{open-line}).
  744: カーソルの直後に1行以上の空行を挿入する(@code{open-line})。
  745: @item C-x C-o
  746: @c Delete all but one of many consecutive blank lines
  747: @c (@code{delete-blank-lines}).
  748: 連続する空行を1行だけ残してすべて削除する(@code{delete-blank-lines})。
  749: @end table
  750: 
  751: @kindex C-o
  752: @kindex C-x C-o
  753: @c @cindex blank lines
  754: @cindex 空行
  755: @findex open-line
  756: @findex delete-blank-lines
  757: @c   When you want to insert a new line of text before an existing line, you
  758: @c can do it by typing the new line of text, followed by @key{RET}.
  759: @c However, it may be easier to see what you are doing if you first make a
  760: @c blank line and then insert the desired text into it.  This is easy to do
  761: @c using the key @kbd{C-o} (@code{open-line}), which inserts a newline
  762: @c after point but leaves point in front of the newline.  After @kbd{C-o},
  763: @c type the text for the new line.  @kbd{C-o F O O} has the same effect as
  764: @c @w{@kbd{F O O @key{RET}}}, except for the final location of point.
  765: 既存の行のまえに新たに1行を挿入するには、
  766: 新しい行のテキストを打ってから@key{RET}を打つこともできます。
  767: しかし、まず空行を作ってから、
  768: そこに希望のテキストを挿入するほうが何をしているのかがわかりやすいでしょう。
  769: キー@kbd{C-o}(@code{open-line})を使えば簡単です。
  770: これはポイントの直後に改行を挿入して、
  771: ポイントは改行の直前に置かれたままとなります。
  772: @kbd{C-o}に続けて、新しい行のテキストを打ちます。
  773: @kbd{C-o F O O}は、ポイントの最終的な位置を除けば、
  774: @w{@kbd{F O O @key{RET}}}と同じ効果を持ちます。
  775: 
  776: @c   You can make several blank lines by typing @kbd{C-o} several times, or
  777: @c by giving it a numeric argument to tell it how many blank lines to make.
  778: @c @xref{Arguments}, for how.  If you have a fill prefix, then @kbd{C-o}
  779: @c command inserts the fill prefix on the new line, when you use it at the
  780: @c beginning of a line.  @xref{Fill Prefix}.
  781: 複数の空行を作るには、@kbd{C-o}を数回打つか、
  782: 作りたい空行の個数を指定する数引数を指定します。
  783: 数引数の指定方法は、@xref{Arguments}。
  784: 詰め込み接頭辞を設定してある場合、
  785: 行の先頭で@kbd{C-o}コマンドを使うと、
  786: このコマンドは新しい行に詰め込み接頭辞を挿入します。
  787: @xref{Fill Prefix}。
  788: 
  789: @c   The easy way to get rid of extra blank lines is with the command
  790: @c @kbd{C-x C-o} (@code{delete-blank-lines}).  @kbd{C-x C-o} in a run of
  791: @c several blank lines deletes all but one of them.  @kbd{C-x C-o} on a
  792: @c solitary blank line deletes that blank line.  When point is on a
  793: @c nonblank line, @kbd{C-x C-o} deletes any blank lines following that
  794: @c nonblank line.
  795: 余分な空行を削除するには、
  796: コマンド@kbd{C-x C-o}(@code{delete-blank-lines})を使います。
  797: 連続する複数の空行の中で@kbd{C-x C-o}を実行すると、
  798: 1行を残してすべての空行を削除します。
  799: 空行が1行だけの場合、その空行自体を削除します。
  800: 空行でない行にポイントがある場合、
  801: その行に続くすべての空行を削除します。
  802: 
  803: @node Continuation Lines, Position Info, Blank Lines, Basic
  804: @c @section Continuation Lines
  805: @section 継続行
  806: 
  807: @c @cindex continuation line
  808: @cindex 継続行
  809: @c @cindex wrapping
  810: @cindex 折り返し
  811: @c @cindex line wrapping
  812: @cindex 行の折り返し
  813: @c   If you add too many characters to one line without breaking it with
  814: @c @key{RET}, the line will grow to occupy two (or more) lines on the screen,
  815: @c with a @samp{\} at the extreme right margin of all but the last of them.
  816: @c The @samp{\} says that the following screen line is not really a distinct
  817: @c line in the text, but just the @dfn{continuation} of a line too long to fit
  818: @c the screen.  Continuation is also called @dfn{line wrapping}.
  819: @key{RET}で分割せずに1行に文字を加え続けると、
  820: その行は画面上で2行以上を占めるようになります。
  821: このとき、そのような行の最後の行を除くすべての行の右端には、
  822: @samp{\}が表示されます。
  823: この@samp{\}は、画面上の後続の行はテキスト内の独立した行ではなく、
  824: 画面に収まりきらない長い行が@dfn{継続}(continuation)
  825: していることを意味します。
  826: この継続を、@dfn{折り返し}(wrapping)とも呼びます。
  827: 
  828: @c   Sometimes it is nice to have Emacs insert newlines automatically when
  829: @c a line gets too long.  Continuation on the screen does not do that.  Use
  830: @c Auto Fill mode (@pxref{Filling}) if that's what you want.
  831: 行が長くなりすぎたときにEmacsが自動的に改行を挿入すると便利なことがあります。
  832: 画面上での継続は、このようには機能しません。
  833: 自動的に改行するようにするには、
  834: 自動詰め込み(auto-fill)モード(@pxref{Filling})を使います。
  835: 
  836: @vindex truncate-lines
  837: @c @cindex truncation
  838: @cindex 切り捨て
  839: @c   As an alternative to continuation, Emacs can display long lines by
  840: @c @dfn{truncation}.  This means that all the characters that do not fit in
  841: @c the width of the screen or window do not appear at all.  They remain in
  842: @c the buffer, temporarily invisible.  @samp{$} is used in the last column
  843: @c instead of @samp{\} to inform you that truncation is in effect.
  844: 継続のかわりの方法として、Emacsは長い行を@dfn{切り捨て}(truncation)て
  845: 表示することもできます。
  846: つまり、画面やウィンドウの幅に収まりきらない文字は表示しません。
  847: もちろん、一時的に見えないだけで、バッファ内には存在しています。
  848: 切り捨てていることを示すために、
  849: @samp{\}ではなく@samp{$}を右端に用います。
  850: 
  851: @c   Truncation instead of continuation happens whenever horizontal
  852: @c scrolling is in use, and optionally in all side-by-side windows
  853: @c (@pxref{Windows}).  You can enable truncation for a particular buffer by
  854: @c setting the variable @code{truncate-lines} to non-@code{nil} in that
  855: @c buffer.  (@xref{Variables}.)  Altering the value of
  856: @c @code{truncate-lines} makes it local to the current buffer; until that
  857: @c time, the default value is in effect.  The default is initially
  858: @c @code{nil}.  @xref{Locals}.
  859: 水平スクロールを使っていたり、ウィンドウを左右に並べていると、
  860: 継続のかわりに切り捨て表示します(@pxref{Windows})。
  861: 特定のバッファの変数@code{truncate-lines}に@code{nil}以外を設定すると、
  862: そのバッファを切り捨て表示にできます(@pxref{Variables})。
  863: 変数@code{truncate-lines}の値を変更すると、
  864: この変数はカレントバッファにローカルになります。
  865: そうするまでは、デフォルト値が使われます。
  866: デフォルトの初期値は@code{nil}です。
  867: @xref{Locals}。
  868: 
  869: @c   @xref{Display Vars}, for additional variables that affect how text is
  870: @c displayed.
  871: テキストの表示方法に影響する変数については、@xref{Display Vars}。
  872: 
  873: @node Position Info, Arguments, Continuation Lines, Basic
  874: @c @section Cursor Position Information
  875: @section カーソル位置の情報
  876: 
  877: @c   Here are commands to get information about the size and position of
  878: @c parts of the buffer, and to count lines.
  879: バッファのある部分の大きさや位置に関する情報を得るコマンドや
  880: 行を数えるコマンドを紹介します。
  881: 
  882: @table @kbd
  883: @item M-x what-page
  884: @c Print page number of point, and line number within page.
  885: ポイントがあるページの番号とそのページ内での行番号を表示する。
  886: @item M-x what-line
  887: @c Print line number of point in the buffer.
  888: ポイントがある行のバッファ内での行番号を表示する。
  889: @item M-x line-number-mode
  890: @c Toggle automatic display of current line number.
  891: 現在行の自動行番号表示をオン/オフする。
  892: @item M-=
  893: @c Print number of lines in the current region (@code{count-lines-region}).
  894: @c @xref{Mark}, for information about the region.
  895: カレントリージョンの行数を表示する(@code{count-lines-region})。
  896: リージョンに関しては、@pxref{Mark}。
  897: @item C-x =
  898: @c Print character code of character after point, character position of
  899: @c point, and column of point (@code{what-cursor-position}).
  900: ポイントの直後にある印字文字の文字コード、ポイントの文字位置、
  901: ポイントの桁位置を表示する(@code{what-cursor-position})。
  902: @end table
  903: 
  904: @findex what-page
  905: @findex what-line
  906: @c @cindex line number commands
  907: @c @cindex location of point
  908: @c @cindex cursor location
  909: @c @cindex point location
  910: @cindex 行番号コマンド
  911: @cindex ポイント位置
  912: @cindex カーソル位置
  913: @c   There are two commands for working with line numbers.  @kbd{M-x
  914: @c what-line} computes the current line number and displays it in the echo
  915: @c area.  To go to a given line by number, use @kbd{M-x goto-line}; it
  916: @c prompts you for the number.  These line numbers count from one at the
  917: @c beginning of the buffer.
  918: 行番号に関するコマンドは2つあります。
  919: @kbd{M-x what-line}は現在行の行番号を計算して、エコー領域に表示します。
  920: 指定した行番号の行へ移動するには、@kbd{M-x goto-line}を使います。
  921: このコマンドは、行番号を聞いてきます。
  922: これらの行番号は、バッファの先頭を1行目と数えます。
  923: 
  924: @c   You can also see the current line number in the mode line; @xref{Mode
  925: @c Line}.  If you narrow the buffer, then the line number in the mode line
  926: @c is relative to the accessible portion (@pxref{Narrowing}).  By contrast,
  927: @c @code{what-line} shows both the line number relative to the narrowed
  928: @c region and the line number relative to the whole buffer.
  929: モード行で現在行の行番号を知ることもできます。
  930: @xref{Mode Line}。
  931: バッファをナロイングしてある場合、
  932: モード行中の行番号は参照可能な範囲内での相対的なものになります
  933: (@pxref{Narrowing})。
  934: 対照的に、@code{what-line}は、
  935: ナロイングされた範囲内での行番号と、
  936: バッファ全体での行番号の両方を表示します。
  937: 
  938: @c   By contrast, @kbd{M-x what-page} counts pages from the beginning of
  939: @c the file, and counts lines within the page, printing both numbers.
  940: @c @xref{Pages}.
  941: これに対し、@kbd{M-x what-page}は、ファイルの先頭からページを数え、
  942: さらにページ内での行番号も数えて、両方を表示します。
  943: @xref{Pages}。
  944: 
  945: @kindex M-=
  946: @findex count-lines-region
  947: @c   While on this subject, we might as well mention @kbd{M-=} (@code{count-lines-region}),
  948: @c which prints the number of lines in the region (@pxref{Mark}).
  949: @c @xref{Pages}, for the command @kbd{C-x l} which counts the lines in the
  950: @c current page.
  951: この話題に関連して、
  952: @kbd{M-=}(@code{count-lines-region})も説明しておきましょう。
  953: これは、リージョンの行数を数えて表示します(@pxref{Mark})。
  954: カレントページの行数を数えるコマンド@kbd{C-x l}については、@xref{Pages}。
  955: 
  956: @kindex C-x =
  957: @findex what-cursor-position
  958: @c   The command @kbd{C-x =} (@code{what-cursor-position}) can be used to find out
  959: @c the column that the cursor is in, and other miscellaneous information about
  960: @c point.  It prints a line in the echo area that looks like this:
  961: コマンド@kbd{C-x =}(@code{what-cursor-position})は、
  962: カーソルがある箇所の桁位置を求めたり、
  963: ポイントに関するその他の種々の情報を得るために使います。
  964: エコー領域につぎのように表示します。
  965: 
  966: @smallexample
  967: Char: c (0143, 99, 0x63)  point=21044 of 26883(78%)  column 53 
  968: @end smallexample
  969: 
  970: @noindent
  971: @c (In fact, this is the output produced when point is before the
  972: @c @samp{column} in the example.)
  973: (これは、例の中の@samp{column}のまえにポイントがあるときの実際の出力。)
  974: 
  975: @c   The four values after @samp{Char:} describe the character that follows
  976: @c point, first by showing it and then by giving its character code in
  977: @c octal, decimal and hex.  For a non-ASCII multibyte character, these are
  978: @c followed by @samp{ext} and the character's representation, in hex, in
  979: @c the buffer's coding system, if that coding system encodes the character
  980: @c safely and with a single byte (@pxref{Coding Systems}).  If the
  981: @c character's encoding is longer than one byte, Emacs shows @samp{ext ...}.
  982: @samp{Char:}のあとの4つの値は、ポイントの直後の文字を表していて、
  983: 文字そのもの、続いて、文字コードの8進表示、10進表示、16進表示です。
  984: 非ASCIIのマルチバイト文字に対しては、
  985: バッファのコーディングシステムにおいて当該文字をまちがいなく、かつ、
  986: 単一バイトで符号化できる場合には、
  987: @samp{ext}とバッファのコーディングシステムで表した文字コードの16進表示が
  988: 続きます(@pxref{Coding Systems})。
  989: 文字の符号が1バイトより長い場合には、
  990: Emacsは@samp{ext ...}を表示します。
  991: 
  992: @c   @samp{point=} is followed by the position of point expressed as a character
  993: @c count.  The front of the buffer counts as position 1, one character later
  994: @c as 2, and so on.  The next, larger, number is the total number of characters
  995: @c in the buffer.  Afterward in parentheses comes the position expressed as a
  996: @c percentage of the total size.
  997: @samp{point=}のあとは、ポイント位置を文字単位に数えたものです。
  998: バッファの先頭を位置1、つぎの1文字を2、というように数えます。
  999: つぎの大きな数字はバッファ内の総文字数です。
 1000: 続く括弧の中は、ポイント位置の全サイズに対する百分率です。
 1001: 
 1002: @c   @samp{column} is followed by the horizontal position of point, in
 1003: @c columns from the left edge of the window.
 1004: @samp{column}に続くものは、ウィンドウの左端からの桁数で表した
 1005: ポイントの水平位置です。
 1006: 
 1007: @c   If the buffer has been narrowed, making some of the text at the
 1008: @c beginning and the end temporarily inaccessible, @kbd{C-x =} prints
 1009: @c additional text describing the currently accessible range.  For example, it
 1010: @c might display this:
 1011: バッファをナロイングしていて、バッファの先頭と末尾のテキストの一部が
 1012: 表示されていない場合、@kbd{C-x =}は、
 1013: 現在参照可能な範囲に関する情報も表示します。
 1014: たとえばつぎのようになります。
 1015: 
 1016: @smallexample
 1017: Char: C (0103, 67, 0x43)  point=252 of 889(28%) <231 - 599>  column 0 
 1018: @end smallexample
 1019: 
 1020: @noindent
 1021: @c where the two extra numbers give the smallest and largest character
 1022: @c position that point is allowed to assume.  The characters between those
 1023: @c two positions are the accessible ones.  @xref{Narrowing}.
 1024: ここで、新たに追加された2つの数字が、
 1025: ポイントを設定できる文字位置の下限と上限を示します。
 1026: これら2つの位置のあいだの文字が参照可能な文字です。
 1027: @xref{Narrowing}。
 1028: 
 1029: @c   If point is at the end of the buffer (or the end of the accessible
 1030: @c part), the @w{@kbd{C-x =}} output does not describe a character after
 1031: @c point.  The output might look like this:
 1032: ポイントがバッファの末尾(あるいは参照可能な部分の末尾)にある場合、
 1033: @w{@kbd{C-x =}}は、ポイントの直後の文字に関する情報は表示しません。
 1034: 出力はつぎのようになります。
 1035: 
 1036: @smallexample
 1037: point=26957 of 26956(100%)  column 0 
 1038: @end smallexample
 1039: 
 1040: @c   @w{@kbd{C-u C-x =}} displays additional information about a character,
 1041: @c in place of the buffer coordinates and column: the character set name
 1042: @c and the codes that identify the character within that character set;
 1043: @c ASCII characters are identified as belonging to the @code{ASCII}
 1044: @c character set.  In addition, the full character encoding, even if it
 1045: @c takes more than a single byte, is shown after @samp{ext}.  Here's an
 1046: @c example for a Latin-1 character A with a grave accent in a buffer whose
 1047: @c coding system is iso-2022-7bit@footnote{On terminals that support
 1048: @c Latin-1 characters, the character shown after @samp{Char:} is displayed
 1049: @c as the actual glyph of A with grave accent.}:
 1050: @w{@kbd{C-u C-x =}}は、バッファ内の位置と桁位置のかわりに、
 1051: 文字に関する追加情報、つまり、
 1052: 文字集合名とその文字集合内でその文字を識別するコードを表示します。
 1053: ASCII文字は、文字集合@code{ASCII}に属するものと識別します。
 1054: さらに、文字を完全に符号化するのに単一バイトより多く必要な場合であっても、
 1055: @samp{ext}のあとに文字コードを表示します。
 1056: コーディングシステムがiso-2022-7bitであるバッファ内にある
 1057: Latin-1のアクサングレーブ付きの文字Aの例を示します。
 1058: @footnote{Latin-1文字を表示できる端末であれば、
 1059: @samp{Char:}のあとに表示される文字は、実際に、
 1060: アクサングレーブ付きの文字Aになる。}
 1061: 
 1062: @example
 1063: Char: @`A (04300, 2240, 0x8c0, ext ESC , A @@) (latin-iso8859-1 64)
 1064: @end example
 1065: 
 1066: @node Arguments, Repeating, Position Info, Basic
 1067: @c @section Numeric Arguments
 1068: @section 数引数
 1069: @c @cindex numeric arguments
 1070: @c @cindex prefix arguments
 1071: @c @cindex arguments, numeric
 1072: @c @cindex arguments, prefix
 1073: @cindex 数引数
 1074: @cindex 前置引数
 1075: @cindex 引数、数字
 1076: @cindex 引数、前置
 1077: 
 1078: @c   In mathematics and computer usage, the word @dfn{argument} means
 1079: @c ``data provided to a function or operation.''  You can give any Emacs
 1080: @c command a @dfn{numeric argument} (also called a @dfn{prefix argument}).
 1081: @c Some commands interpret the argument as a repetition count.  For
 1082: @c example, @kbd{C-f} with an argument of ten moves forward ten characters
 1083: @c instead of one.  With these commands, no argument is equivalent to an
 1084: @c argument of one.  Negative arguments tell most such commands to move or
 1085: @c act in the opposite direction.
 1086: 数学や計算機の用語では、@dfn{引数}(argument)という単語は
 1087: 『関数や操作に与えるデータ』を意味します。
 1088: Emacsのすべてのコマンドには、@dfn{数引数}(numeric argument)
 1089: (@dfn{前置引数}(prefix argument)とも呼ぶ)を指定できます。
 1090: コマンドによっては、引数を反復回数として解釈します。
 1091: たとえば、引数10を@kbd{C-f}に指定すると、
 1092: カーソルを通常の1文字ではなく、10文字分前向きに移動します。
 1093: これらのコマンドでは、引数を指定しないと引数1を指定したのと同等になります。
 1094: この種のコマンドの多くでは、負の引数を指定すると、
 1095: 逆向きの移動や逆の操作を指示することになります。
 1096: 
 1097: @kindex M-1
 1098: @kindex M-@t{-}
 1099: @findex digit-argument
 1100: @findex negative-argument
 1101: @c   If your terminal keyboard has a @key{META} key, the easiest way to
 1102: @c specify a numeric argument is to type digits and/or a minus sign while
 1103: @c holding down the @key{META} key.  For example,
 1104: 端末のキーボードに@key{META}キーがある場合、
 1105: 数引数を入力するもっとも簡単な方法は、
 1106: @key{META}キーを押し下げたままで、数字やマイナス記号を打ちます。
 1107: たとえば、
 1108: @example
 1109: M-5 C-n
 1110: @end example
 1111: @noindent
 1112: @c would move down five lines.  The characters @kbd{Meta-1}, @kbd{Meta-2},
 1113: @c and so on, as well as @kbd{Meta--}, do this because they are keys bound
 1114: @c to commands (@code{digit-argument} and @code{negative-argument}) that
 1115: @c are defined to contribute to an argument for the next command.  Digits
 1116: @c and @kbd{-} modified with Control, or Control and Meta, also specify
 1117: @c numeric arguments.
 1118: は、カーソルを5行下に移動します。
 1119: @kbd{Meta-1}、@kbd{Meta-2}、@kbd{Meta--}などの文字がこのように動作するのは、
 1120: これらのキーが、後続のコマンドに引数を与えるように定義されたコマンド
 1121: (@code{digit-argument}と@code{negative-argument})に
 1122: バインドされているからです。
 1123: コントロールやコントロールとメタで修飾した数字と@kbd{-}も、
 1124: 同様に数引数を指定します。
 1125: 
 1126: @kindex C-u
 1127: @findex universal-argument
 1128: @c   Another way of specifying an argument is to use the @kbd{C-u}
 1129: @c (@code{universal-argument}) command followed by the digits of the
 1130: @c argument.  With @kbd{C-u}, you can type the argument digits without
 1131: @c holding down modifier keys; @kbd{C-u} works on all terminals.  To type a
 1132: @c negative argument, type a minus sign after @kbd{C-u}.  Just a minus sign
 1133: @c without digits normally means @minus{}1.
 1134: 引数を指定する別の方法は、
 1135: @kbd{C-u}(@code{universal-argument})コマンドに続けて
 1136: 引数の数字を入力することです。
 1137: @kbd{C-u}では、修飾キーを押し下げ続けることなく引数の数字を打てます。
 1138: @kbd{C-u}はすべての端末で使えます。
 1139: 負の引数を指定するには、@kbd{C-u}のあとにまずマイナス記号を打ちます。
 1140: マイナス記号だけだと@minus{}1を意味します。
 1141: 
 1142: @c   @kbd{C-u} followed by a character which is neither a digit nor a minus
 1143: @c sign has the special meaning of ``multiply by four.''  It multiplies the
 1144: @c argument for the next command by four.  @kbd{C-u} twice multiplies it by
 1145: @c sixteen.  Thus, @kbd{C-u C-u C-f} moves forward sixteen characters.  This
 1146: @c is a good way to move forward ``fast,'' since it moves about 1/5 of a line
 1147: @c in the usual size screen.  Other useful combinations are @kbd{C-u C-n},
 1148: @c @kbd{C-u C-u C-n} (move down a good fraction of a screen), @kbd{C-u C-u
 1149: @c C-o} (make ``a lot'' of blank lines), and @kbd{C-u C-k} (kill four
 1150: @c lines).@refill
 1151: @kbd{C-u}のあとに数字でもマイナス記号でもない文字を打つと、
 1152: 『4倍する』という特別な意味になります。
 1153: つまり、後続のコマンドに渡す引数を4倍します。
 1154: @kbd{C-u}を2回打つと、引数を16倍します。
 1155: したがって、@kbd{C-u C-u C-f}は、カーソルを前向きに16文字分移動します。
 1156: 16文字は通常の画面で約1/5行に相当するので、
 1157: カーソルを『速く』移動させたい場合に便利な方法です。
 1158: 便利な他の組み合せは、
 1159: @kbd{C-u C-n}や@kbd{C-u C-u C-n}(画面の下方への移動に便利)、
 1160: @kbd{C-u C-u C-o}(『数多く』の空行を作る)、
 1161: @kbd{C-u C-k}(4行キルする)です。
 1162: 
 1163: @c   Some commands care only about whether there is an argument, and not about
 1164: @c its value.  For example, the command @kbd{M-q} (@code{fill-paragraph}) with
 1165: @c no argument fills text; with an argument, it justifies the text as well.
 1166: @c (@xref{Filling}, for more information on @kbd{M-q}.)  Plain @kbd{C-u} is a
 1167: @c handy way of providing an argument for such commands.
 1168: コマンドによっては、引数の値ではなく、引数の有無だけを問題にします。
 1169: たとえば、コマンド@kbd{M-q}(@code{fill-paragraph})に引数を指定しないと
 1170: テキストの詰め込みのみを行います。
 1171: 引数を指定すると、さらに幅揃えも行います。
 1172: (@kbd{M-q}に関する詳細は、@pxref{Filling}。)
 1173: @kbd{C-u}だけを使えば、このようなコマンドに簡単に引数を指定できます。
 1174: 
 1175: @c   Some commands use the value of the argument as a repeat count, but do
 1176: @c something peculiar when there is no argument.  For example, the command
 1177: @c @kbd{C-k} (@code{kill-line}) with argument @var{n} kills @var{n} lines,
 1178: @c including their terminating newlines.  But @kbd{C-k} with no argument is
 1179: @c special: it kills the text up to the next newline, or, if point is right at
 1180: @c the end of the line, it kills the newline itself.  Thus, two @kbd{C-k}
 1181: @c commands with no arguments can kill a nonblank line, just like @kbd{C-k}
 1182: @c with an argument of one.  (@xref{Killing}, for more information on
 1183: @c @kbd{C-k}.)@refill
 1184: 引数の値を反復回数として使うにも関わらず、
 1185: 引数がないと特別な動作をするコマンドもあります。
 1186: たとえば、@kbd{C-k}(@code{kill-line})に引数@var{n}を指定すると、
 1187: 行区切りの改行も含めて@var{n}行をキルします。
 1188: これに対し、引数を指定しない場合は特別な動作となります。
 1189: つまり、つぎの改行文字までのテキストをキルするか、
 1190: 行末にポイントがある場合は改行そのものをキルします。
 1191: したがって、引数を指定せずに@kbd{C-k}を2回実行すると、
 1192: 引数1を指定した@kbd{C-k}と同様に、空行でない1行をキルします。
 1193: (@kbd{C-k}の詳細については、@pxref{Killing}。)
 1194: 
 1195: @c   A few commands treat a plain @kbd{C-u} differently from an ordinary
 1196: @c argument.  A few others may treat an argument of just a minus sign
 1197: @c differently from an argument of @minus{}1.  These unusual cases are
 1198: @c described when they come up; they are always for reasons of convenience
 1199: @c of use of the individual command.
 1200: いくつかのコマンドは、@kbd{C-u}だけの引数を通常の引数とは
 1201: 異なるものとして扱います。
 1202: また、マイナス記号のみの引数を@minus{}1と区別するコマンドもあります。
 1203: これらの例外については、必要になったときに説明します。
 1204: これらの例外は、それぞれのコマンドを使いやすくするためにあります。
 1205: 
 1206: @c   You can use a numeric argument to insert multiple copies of a
 1207: @c character.  This is straightforward unless the character is a digit; for
 1208: @c example, @kbd{C-u 6 4 a} inserts 64 copies of the character @samp{a}.
 1209: @c But this does not work for inserting digits; @kbd{C-u 6 4 1} specifies
 1210: @c an argument of 641, rather than inserting anything.  To separate the
 1211: @c digit to insert from the argument, type another @kbd{C-u}; for example,
 1212: @c @kbd{C-u 6 4 C-u 1} does insert 64 copies of the character @samp{1}.
 1213: 数引数を使って、文字のコピーを複数個挿入することもできます。
 1214: この操作は、数字以外の文字ならば簡単です。
 1215: たとえば、@kbd{C-u 6 4 a}で、文字@samp{a}を64個挿入できます。
 1216: しかし、数字では機能しません。
 1217: @kbd{C-u 6 4 1}は、引数が641であることを意味し、何も挿入しません。
 1218: 引数と挿入したい数字を区切るには、もう1つ@kbd{C-u}を打ちます。
 1219: たとえば、@kbd{C-u 6 4 C-u 1}で、数字@samp{1}を64個挿入できます。
 1220: 
 1221: @c   We use the term ``prefix argument'' as well as ``numeric argument'' to
 1222: @c emphasize that you type the argument before the command, and to
 1223: @c distinguish these arguments from minibuffer arguments that come after
 1224: @c the command.
 1225: コマンドのまえに引数を打つということを強調するために、また、
 1226: コマンドのあとのミニバッファ引数と区別するために、
 1227: 『数引数』と同様に用語『前置引数』を使います。
 1228: 
 1229: @node Repeating,  , Arguments, Basic
 1230: @c @section Repeating a Command
 1231: @section コマンドを繰り返す
 1232: @c @cindex repeating a command
 1233: @cindex コマンドを繰り返す
 1234: 
 1235: @kindex C-x z
 1236: @findex repeat
 1237: @c   The command @kbd{C-x z} (@code{repeat}) provides another way to repeat
 1238: @c an Emacs command many times.  This command repeats the previous Emacs
 1239: @c command, whatever that was.  Repeating a command uses the same arguments
 1240: @c that were used before; it does not read new arguments each time.
 1241: コマンド@kbd{C-x z}(@code{repeat})は、
 1242: Emacsコマンドを何回も反復する別の方法です。
 1243: このコマンドは、直前のEmacsコマンドが何であっても、それを繰り返します。
 1244: 繰り返されるコマンドは、まえと同じ引数を使います。
 1245: 毎回、新たに引数を読むことはしません。
 1246: 
 1247: @c   To repeat the command more than once, type additional @kbd{z}'s: each
 1248: @c @kbd{z} repeats the command one more time.  Repetition ends when you
 1249: @c type a character other than @kbd{z}, or press a mouse button.
 1250: コマンドを2回以上繰り返すには、@kbd{z}を追加して打ちます。
 1251: 1つの@kbd{z}で、コマンドを1回繰り返します。
 1252: @kbd{z}以外の文字を打つか、マウスボタンを押すと、
 1253: 繰り返しを終了します。
 1254: 
 1255: @c   For example, suppose you type @kbd{C-u 2 0 C-d} to delete 20
 1256: @c characters.  You can repeat that command (including its argument) three
 1257: @c additional times, to delete a total of 80 characters, by typing @kbd{C-x
 1258: @c z z z}.  The first @kbd{C-x z} repeats the command once, and each
 1259: @c subsequent @kbd{z} repeats it once again.
 1260: たとえば、20文字削除するために@kbd{C-u 2 0 C-d}と打ったとしましょう。
 1261: @kbd{C-x z z z}と打てば、
 1262: (引数を含めて)削除コマンドをさらに3回繰り返し、全部で80文字削除できます。
 1263: 始めの@kbd{C-x z}でコマンドを1回繰り返し、
 1264: そのあとのそれぞれの@kbd{z}で1回ずつ繰り返します。
 1265: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>