File:  [Local Repository] / gnujdoc / emacs-20.6 / indent-ja.texi
Revision 1.1: download - view: text, annotated - select for diffs
Wed Apr 26 06:42:34 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 =============================================================
    5: @c This is part of the Emacs manual.
    6: @c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997 Free Software Foundation, Inc.
    7: @c See file emacs.texi for copying conditions.
    8: @node Indentation, Text, Major Modes, Top
    9: @c @chapter Indentation
   10: @chapter 字下げ
   11: @c @cindex indentation
   12: @cindex 字下げ
   13: @c @cindex columns (indentation)
   14: @cindex 桁(字下げ)
   15: @cindex コラム(字下げ)
   16: 
   17: @c   This chapter describes the Emacs commands that add, remove, or
   18: @c adjust indentation.
   19: 本章では、字下げ(indentation)を
   20: 付加/削除/調整するEmacsコマンドについて説明します。
   21: 
   22: @c WideCommands
   23: @table @kbd
   24: @item @key{TAB}
   25: @c Indent current line ``appropriately'' in a mode-dependent fashion.
   26: モードに固有の方法で、現在行を『適切に』字下げする。
   27: @item @kbd{C-j}
   28: @c Perform @key{RET} followed by @key{TAB} (@code{newline-and-indent}).
   29: @key{RET}に続けて@key{TAB}を実行する(@code{newline-and-indent})。
   30: @item M-^
   31: @c Merge two lines (@code{delete-indentation}).  This would cancel out
   32: @c the effect of @kbd{C-j}.
   33: 2つの行を連結して1つにする(@code{delete-indentation})。
   34: @kbd{C-j}の効果を取り消す。
   35: @item C-M-o
   36: @c Split line at point; text on the line after point becomes a new line
   37: @c indented to the same column that it now starts in (@code{split-line}).
   38: ポイント位置で行を分割する。
   39: つまり、行内のポイント以降のテキストは新たな行になり、かつ、
   40: ポイント位置まで字下げする(@code{split-line})。
   41: @item M-m
   42: @c Move (forward or back) to the first nonblank character on the current
   43: @c line (@code{back-to-indentation}).
   44: 現在行の空白でない最初の文字までポイントを
   45: (行末か行頭へ向かって)移動する(@code{back-to-indentation})。
   46: @item C-M-\
   47: @c Indent several lines to same column (@code{indent-region}).
   48: 複数の行を同じ桁に字下げする(@code{indent-region})。
   49: @item C-x @key{TAB}
   50: @c Shift block of lines rigidly right or left (@code{indent-rigidly}).
   51: 複数の行の塊を(右か左に)同じ量だけきっちり移動する
   52: (@code{indent-rigidly})。
   53: @item M-i
   54: @c Indent from point to the next prespecified tab stop column
   55: @c (@code{tab-to-tab-stop}).
   56: ポイント位置からあらかじめ設定したつぎのタブストップ位置まで字下げする
   57: (@code{tab-to-tab-stop})。
   58: @item M-x indent-relative
   59: @c Indent from point to under an indentation point in the previous line.
   60: ポイント位置からまえの行の字下げ位置まで字下げする。
   61: @end table
   62: 
   63: @c   Most programming languages have some indentation convention.  For Lisp
   64: @c code, lines are indented according to their nesting in parentheses.  The
   65: @c same general idea is used for C code, though many details are different.
   66: ほとんどのプログラム言語には、字下げの慣習があります。
   67: Lispコードでは、括弧の入れ子の深さに従って行を字下げします。
   68: 細部はかなり異なりますが、概念的にはCコードでも同様の考え方で字下げします。
   69: 
   70: @kindex TAB
   71: @c   Whatever the language, to indent a line, use the @key{TAB} command.  Each
   72: @c major mode defines this command to perform the sort of indentation
   73: @c appropriate for the particular language.  In Lisp mode, @key{TAB} aligns
   74: @c the line according to its depth in parentheses.  No matter where in the
   75: @c line you are when you type @key{TAB}, it aligns the line as a whole.  In C
   76: @c mode, @key{TAB} implements a subtle and sophisticated indentation style that
   77: @c knows about many aspects of C syntax.
   78: どんな言語であっても、行を字下げするには@key{TAB}コマンドを使います。
   79: 各メジャーモードでは、特定の言語に適した字下げを行うように、
   80: このコマンドを定義します。
   81: Lispモードでは、@key{TAB}は括弧の深さに応じて行を整列します。
   82: 行のどこで@key{TAB}を打鍵しても、その行全体を整列します。
   83: Cモードでは、@key{TAB}は、
   84: Cの構文上のさまざまな側面を考慮した巧みで洗練された
   85: 字下げスタイルを実現しています。
   86: 
   87: @c   In Text mode, @key{TAB} runs the command @code{tab-to-tab-stop}, which
   88: @c indents to the next tab stop column.  You can set the tab stops with
   89: @c @kbd{M-x edit-tab-stops}.
   90: テキスト(text)モードでは、
   91: @key{TAB}は@code{tab-to-tab-stop}コマンドを実行します。
   92: これは、つぎのタブストップ位置まで字下げを行います。
   93: タブストップ位置は@kbd{M-x edit-tab-stops}で設定できます。
   94: 
   95: @menu
   96: * Indentation Commands::  Various commands and techniques for indentation.
   97: * Tab Stops::             You can set arbitrary "tab stops" and then
   98:                             indent to the next tab stop when you want to.
   99: * Just Spaces::           You can request indentation using just spaces.
  100: @end menu
  101: 
  102: @node Indentation Commands, Tab Stops, Indentation, Indentation
  103: @c @section Indentation Commands and Techniques
  104: @section 字下げコマンドとその技巧
  105: 
  106: @kindex M-m
  107: @findex back-to-indentation
  108: @c   To move over the indentation on a line, do @kbd{M-m}
  109: @c (@code{back-to-indentation}).  This command, given anywhere on a line,
  110: @c positions point at the first nonblank character on the line.
  111: 行の字下げを飛び越えるには、@kbd{M-m}(@code{back-to-indentation})を使います。
  112: 行のどこで実行しても、その行の空白でない最初の文字位置にポイントを移動します。
  113: 
  114: @c   To insert an indented line before the current line, do @kbd{C-a C-o
  115: @c @key{TAB}}.  To make an indented line after the current line, use
  116: @c @kbd{C-e C-j}.
  117: 現在行のまえに字下げした行を挿入するには、
  118: @kbd{C-a C-o @key{TAB}}を使います。
  119: 現在行のあとに字下げした行を挿入するには、@kbd{C-e C-j}を使います。
  120: 
  121: @c   If you just want to insert a tab character in the buffer, you can type
  122: @c @kbd{C-q @key{TAB}}.
  123: 単にタブ文字を挿入するには、@kbd{C-q @key{TAB}}と打ちます。
  124: 
  125: @kindex C-M-o
  126: @findex split-line
  127: @c   @kbd{C-M-o} (@code{split-line}) moves the text from point to the end of
  128: @c the line vertically down, so that the current line becomes two lines.
  129: @c @kbd{C-M-o} first moves point forward over any spaces and tabs.  Then it
  130: @c inserts after point a newline and enough indentation to reach the same
  131: @c column point is on.  Point remains before the inserted newline; in this
  132: @c regard, @kbd{C-M-o} resembles @kbd{C-o}.
  133: @kbd{C-M-o}(@code{split-line})は、
  134: ポイントから行末までのテキストを垂直に下ろします。
  135: その結果、現在行は2つの行に分割されます。
  136: @kbd{C-M-o}は、まず、ポイントの直後に空白やタブがある限りポイントを進めます。
  137: そして、ポイントの直後に、
  138: 改行とポイント位置の桁までに必要な字下げを挿入します。
  139: ポイント自身は挿入した改行の直前に留まります。
  140: この点では、@kbd{C-M-o}は@kbd{C-o}に似ています。
  141: 
  142: @kindex M-^
  143: @findex delete-indentation
  144: @c   To join two lines cleanly, use the @kbd{M-^}
  145: @c (@code{delete-indentation}) command.  It deletes the indentation at the
  146: @c front of the current line, and the line boundary as well, replacing them
  147: @c with a single space.  As a special case (useful for Lisp code) the
  148: @c single space is omitted if the characters to be joined are consecutive
  149: @c open parentheses or closing parentheses, or if the junction follows
  150: @c another newline.  To delete just the indentation of a line, go to the
  151: @c beginning of the line and use @kbd{M-\}
  152: @c (@code{delete-horizontal-space}), which deletes all spaces and tabs
  153: @c around the cursor.
  154: 2つの行を連結するには、
  155: コマンド@kbd{M-^}(@code{delete-indentation})を使います。
  156: このコマンドは、現在行の行頭の字下げと行区切り(改行文字)を
  157: 削除して空白1個に置き換えます。
  158: ただし、この空白1個を省いてしまう(Lispコードには便利な)特別な場合があります。
  159: 2つの行を繋げた結果、開き括弧や閉じ括弧が連続する場合、
  160: あるいは、さらに改行が続く場合です。
  161: 現在行の字下げだけを削除するには、
  162: 行頭に移動してから@kbd{M-\}(@code{delete-horizontal-space})を使います。
  163: このコマンドは、カーソル(ポイント)の周りの空白とタブをすべて削除します。
  164: 
  165: @c   If you have a fill prefix, @kbd{M-^} deletes the fill prefix if it
  166: @c appears after the newline that is deleted.  @xref{Fill Prefix}.
  167: 詰め込み接頭辞がある場合、@kbd{M-^}は、
  168: 削除される改行の直後に現れる詰め込み接頭辞を削除します。
  169: @xref{Fill Prefix}。
  170: 
  171: @kindex C-M-\
  172: @kindex C-x TAB
  173: @findex indent-region
  174: @findex indent-rigidly
  175: @c   There are also commands for changing the indentation of several lines
  176: @c at once.  @kbd{C-M-\} (@code{indent-region}) applies to all the lines
  177: @c that begin in the region; it indents each line in the ``usual'' way, as
  178: @c if you had typed @key{TAB} at the beginning of the line.  A numeric
  179: @c argument specifies the column to indent to, and each line is shifted
  180: @c left or right so that its first nonblank character appears in that
  181: @c column.  @kbd{C-x @key{TAB}} (@code{indent-rigidly}) moves all of the
  182: @c lines in the region right by its argument (left, for negative
  183: @c arguments).  The whole group of lines moves rigidly sideways, which is
  184: @c how the command gets its name.@refill
  185: 一度に複数の行の字下げを変更するコマンドもあります。
  186: @kbd{C-M-\}(@code{indent-region})は、
  187: リージョン内で始まるすべての行に作用します。
  188: このコマンドは、行頭で@key{TAB}を打鍵したかのように
  189: 『普通の』方法で各行を字下げします。
  190: 数引数は字下げする桁位置を指定します。
  191: つまり、最初の空白でない文字がその桁位置にくるように
  192: 行全体を右か左に水平移動します。
  193: @kbd{C-x @key{TAB}}(@code{indent-rigidly})は、
  194: リージョン内のすべての行を、
  195: 引数で指定した分だけ右に移動します(引数が負であれば左に移動)。
  196: 複数の行全部をきちっと揃えて(rigidly)横に移動することから、
  197: コマンドにはこのような名前が付いています。
  198: 
  199: @findex indent-relative
  200: @c   @kbd{M-x indent-relative} indents at point based on the previous line
  201: @c (actually, the last nonempty line).  It inserts whitespace at point, moving
  202: @c point, until it is underneath an indentation point in the previous line.
  203: @c An indentation point is the end of a sequence of whitespace or the end of
  204: @c the line.  If point is farther right than any indentation point in the
  205: @c previous line, the whitespace before point is deleted and the first
  206: @c indentation point then applicable is used.  If no indentation point is
  207: @c applicable even then, @code{indent-relative} runs @code{tab-to-tab-stop}
  208: @kbd{M-x indent-relative}は、先行する行(実際には空行でないいちばん近くの行)に
  209: 基づいてポイント位置を字下げします。
  210: ポイント位置に空白を挿入してポイントを進めて、
  211: ポイントが先行する行の字下げ位置の真下にくるようにします。
  212: 字下げ位置とは連続した白文字の末尾か行末のことです。
  213: ポイントが先行する行のどの字下げ位置よりも右にある場合には、
  214: ポイントのまえの白文字を削除してから、
  215: 先行する行の適用可能な最初の字下げ位置まで字下げします。
  216: 適用可能な字下げ位置がない場合には、
  217: @code{indent-relative}は@code{tab-to-tab-stop}を実行します
  218: @ifinfo
  219: @c (@pxref{Tab Stops}).
  220: (@pxref{Tab Stops})。
  221: @end ifinfo
  222: @iftex
  223: @c (see next section).
  224: (次節を参照)。
  225: @end iftex
  226: 
  227: @c   @code{indent-relative} is the definition of @key{TAB} in Indented Text
  228: @c mode.  @xref{Text}.
  229: 字下げテキスト(indented text)モードでは、
  230: @key{TAB}は@code{indent-relative}と定義されます。
  231: @xref{Text}。
  232: 
  233: @c   @xref{Format Indentation}, for another way of specifying the
  234: @c indentation for part of your text.
  235: テキストの一部を字下げする別の方法については@xref{Format Indentation}。
  236: 
  237: @node Tab Stops, Just Spaces, Indentation Commands, Indentation
  238: @c @section Tab Stops
  239: @section タブストップ
  240: 
  241: @c @cindex tab stops 
  242: @cindex タブストップ
  243: @c @cindex using tab stops in making tables
  244: @cindex 表作成時のタブストップ
  245: @c @cindex tables, indentation for
  246: @cindex 表のための字下げ
  247: @cindex 字下げ、表を作る
  248: @kindex M-i
  249: @findex tab-to-tab-stop
  250: @c   For typing in tables, you can use Text mode's definition of @key{TAB},
  251: @c @code{tab-to-tab-stop}.  This command inserts indentation before point,
  252: @c enough to reach the next tab stop column.  If you are not in Text mode,
  253: @c this command can be found on the key @kbd{M-i}.
  254: 表を入力するには、テキスト(textモード)における@key{TAB}の定義、
  255: @code{tab-to-tab-stop}を利用できます。
  256: このコマンドは、ポイントがつぎのタブストップ位置に達するまで
  257: ポイントのまえに字下げを挿入します。
  258: テキスト(text)モードでなくても、@kbd{M-i}でこのコマンドを実行できます。
  259: 
  260: @findex edit-tab-stops
  261: @findex edit-tab-stops-note-changes
  262: @c @kindex C-c C-c @r{(Edit Tab Stops)}
  263: @kindex C-c C-c @r{(タブストップの設定)}
  264: @vindex tab-stop-list
  265: @c   You can specify the tab stops used by @kbd{M-i}.  They are stored in a
  266: @c variable called @code{tab-stop-list}, as a list of column-numbers in
  267: @c increasing order.
  268: @kbd{M-i}が使用するタブストップは任意に設定できます。
  269: この設定は、昇順に並べた桁番号のリストとして
  270: @code{tab-stop-list}と呼ばれる変数に格納されます。
  271: 
  272: @c   The convenient way to set the tab stops is with @kbd{M-x
  273: @c edit-tab-stops}, which creates and selects a buffer containing a
  274: @c description of the tab stop settings.  You can edit this buffer to
  275: @c specify different tab stops, and then type @kbd{C-c C-c} to make those
  276: @c new tab stops take effect.  @code{edit-tab-stops} records which buffer
  277: @c was current when you invoked it, and stores the tab stops back in that
  278: @c buffer; normally all buffers share the same tab stops and changing them
  279: @c in one buffer affects all, but if you happen to make
  280: @c @code{tab-stop-list} local in one buffer then @code{edit-tab-stops} in
  281: @c that buffer will edit the local settings.
  282: タブストップを設定する便利な方法は、
  283: @kbd{M-x edit-tab-stops}を使うことです。
  284: このコマンドは、タブストップの設定を記述したバッファを作成して選択します。
  285: このバッファを編集して今までとは異なるタブストップを指定し、
  286: @kbd{C-c C-c}と打ってその新たな設定を有効にします。
  287: @code{edit-tab-stops}は、呼ばれたときのカレントバッファをあらかじめ
  288: 記録しておくので、そのバッファに新たなタブストップを設定します。
  289: 通常、全バッファで同じタブストップを共有しているので、
  290: 1つのバッファでタブストップを変更すると、すべてのバッファに影響をします。
  291: しかし、あるバッファで@code{tab-stop-list}をローカルにしておくと、
  292: そのバッファで@code{edit-tab-stops}を実行するとローカルな設定を編集します。
  293: 
  294: @c   Here is what the text representing the tab stops looks like for ordinary
  295: @c tab stops every eight columns.
  296: 一般的に使われる8桁ごとに設定されたタブストップの場合、
  297: 設定用バッファの内容はつぎのようになります。
  298: 
  299: @example
  300:         :       :       :       :       :       :
  301: 0         1         2         3         4
  302: 0123456789012345678901234567890123456789012345678
  303: To install changes, type C-c C-c
  304: @end example
  305: 
  306: @c   The first line contains a colon at each tab stop.  The remaining lines
  307: @c are present just to help you see where the colons are and know what to do.
  308: 1行目は、各タブストップ位置をコロンで表します。
  309: 残りの行は、タブストップ位置を読み取りやすくためや使い方です。
  310: 
  311: @c   Note that the tab stops that control @code{tab-to-tab-stop} have nothing
  312: @c to do with displaying tab characters in the buffer.  @xref{Display Vars},
  313: @c for more information on that.
  314: @code{tab-to-tab-stop}を制御するタブストップと、
  315: バッファ内でのタブ文字の表示とは、関係がないことに注意してください。
  316: 詳細については@xref{Display Vars}。
  317: 
  318: @node Just Spaces,, Tab Stops, Indentation
  319: @c @section Tabs vs. Spaces
  320: @section タブと空白
  321: 
  322: @vindex indent-tabs-mode
  323: @c   Emacs normally uses both tabs and spaces to indent lines.  If you prefer,
  324: @c all indentation can be made from spaces only.  To request this, set
  325: @c @code{indent-tabs-mode} to @code{nil}.  This is a per-buffer variable;
  326: @c altering the variable affects only the current buffer, but there is a
  327: @c default value which you can change as well.  @xref{Locals}.
  328: Emacsでは、通常、行の字下げにはタブと空白の両方を使用します。
  329: しかし、空白だけを用いて字下げを行うことも可能です。
  330: そうするには、変数@code{indent-tabs-mode}に@code{nil}を設定します。
  331: この変数はバッファごとの変数です。
  332: 変数を変更してもカレントバッファだけに影響しますが、
  333: デフォルト値を変更することもできます。
  334: @xref{Locals}。
  335: 
  336: @findex tabify
  337: @findex untabify
  338: @c   There are also commands to convert tabs to spaces or vice versa, always
  339: @c preserving the columns of all nonblank text.  @kbd{M-x tabify} scans the
  340: @c region for sequences of spaces, and converts sequences of at least three
  341: @c spaces to tabs if that can be done without changing indentation.  @kbd{M-x
  342: @c untabify} changes all tabs in the region to appropriate numbers of spaces.
  343: 空白以外のテキストの桁を保存したまま、タブを空白(あるいはその逆)に
  344: 変換するコマンドもあります。
  345: @kbd{M-x tabify}は、リージョン内の連続する空白を探して、
  346: 字下げを変えることがなければ少なくとも連続する3個の空白をタブに変換します。
  347: @kbd{M-x untabify}は、リージョン内のすべてのタブを
  348: 適切な個数の空白に変換します。

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