File:  [Local Repository] / gnujdoc / emacs-20.6 / text-ja.texi
Revision 1.1: download - view: text, annotated - select for diffs
Wed Apr 26 06:42:35 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 =           ref 修正                = 2000/02/13
    6: @c =============================================================
    7: @c This is part of the Emacs manual.
    8: @c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997 Free Software Foundation, Inc.
    9: @c See file emacs.texi for copying conditions.
   10: @node Text, Programs, Indentation, Top
   11: @c @chapter Commands for Human Languages
   12: @chapter 自然言語用のコマンド
   13: @c @cindex text
   14: @cindex テキスト
   15: @c @cindex manipulating text
   16: @cindex テキストの操作
   18: @c   The term @dfn{text} has two widespread meanings in our area of the
   19: @c computer field.  One is data that is a sequence of characters.  Any file
   20: @c that you edit with Emacs is text, in this sense of the word.  The other
   21: @c meaning is more restrictive: a sequence of characters in a human language
   22: @c for humans to read (possibly after processing by a text formatter), as
   23: @c opposed to a program or commands for a program.
   24: コンピュータの分野では、@dfn{テキスト}(text)という用語には
   25: 2つの大きな意味があります。
   26: 1つは、文字の列から成るデータのことです。
   27: この意味からすれば、Emacsで編集するどんなファイルもテキストです。
   28: もう1つの意味はより限定されていて、人間が読む自然言語の
   29: (テキスト整形処理後の場合もあるが)文字の列のことで、
   30: プログラムやプログラムに与えるコマンドと対比されます。
   32: @c   Human languages have syntactic/stylistic conventions that can be
   33: @c supported or used to advantage by editor commands: conventions involving
   34: @c words, sentences, paragraphs, and capital letters.  This chapter
   35: @c describes Emacs commands for all of these things.  There are also
   36: @c commands for @dfn{filling}, which means rearranging the lines of a
   37: @c paragraph to be approximately equal in length.  The commands for moving
   38: @c over and killing words, sentences and paragraphs, while intended
   39: @c primarily for editing text, are also often useful for editing programs.
   40: 自然言語には、エディタコマンドで支援したり利用したりできる構文的/様式的な
   41: 約束事があります。
   42: たとえば、単語、文、段落、大文字といったものです。
   43: 本章では、これらを扱うEmacsコマンドについて述べます。
   44: また、@dfn{詰め込み}(filling)、つまり、
   45: 段落の各行がほぼ同じ長さになるように再配置し直すコマンドについてもふれます。
   46: 単語、文、段落を横断してポイントを移動したり、
   47: それらをキルするコマンドは、
   48: 自然言語テキストの編集を意図したものですが、プログラムの編集にも役立ちます。
   50: @c   Emacs has several major modes for editing human-language text.  If the
   51: @c file contains text pure and simple, use Text mode, which customizes
   52: @c Emacs in small ways for the syntactic conventions of text.  Outline mode
   53: @c provides special commands for operating on text with an outline
   54: @c structure.
   55: Emacsには、自然言語テキストの編集用のメジャーモードがいくつかあります。
   56: 扱うテキストが純粋にテキストだけで単純なものであれば、
   57: テキスト(text)モードを使いましょう。
   58: これは、自然言語テキストの構文上の約束事を扱えるように、
   59: Emacsを少しだけカスタマイズしてあります。
   60: アウトライン(outline)モードには、
   61: アウトライン構造を持つテキストを操作する特別なコマンドがあります。
   62: @iftex
   63: @c @xref{Outline Mode}.
   64: @xref{Outline Mode}。
   65: @end iftex
   67: @c   For text which contains embedded commands for text formatters, Emacs
   68: @c has other major modes, each for a particular text formatter.  Thus, for
   69: @c input to @TeX{}, you would use @TeX{}
   70: テキスト整形コマンドを埋め込んだテキストに対しては、
   71: 特定のテキスト清書系ごとに別のメジャーモードが用意してあります。
   72: たとえば、@TeX{}用には@TeX{}
   73: @iftex
   74: @c mode (@pxref{TeX Mode}).
   75: モード(@pxref{TeX Mode})がありますし、
   76: @end iftex
   77: @ifinfo
   78: @c mode.
   79: モードがあります。
   80: @end ifinfo
   81: @c For input to nroff, use Nroff mode.
   82: nroff用にはnroffモードがあります。
   84: @c   Instead of using a text formatter, you can edit formatted text in
   85: @c WYSIWYG style (``what you see is what you get''), with Enriched mode.
   86: @c Then the formatting appears on the screen in Emacs while you edit.
   87: テキスト清書系を使うかわりにエンリッチ(enriched)モードを使用すれば、
   88: WYSIWYG(what you see is what you get、『見たとおりを得る』)スタイルで
   89: 整形済みテキストを編集することもできます。
   90: つまり、Emacsの画面上で整形結果を見ながら編集できるわけです。
   91: @iftex
   92: @c @xref{Formatted Text}.
   93: @xref{Formatted Text}。
   94: @end iftex
   96: @menu
   97: * Words::	        Moving over and killing words.
   98: * Sentences::	        Moving over and killing sentences.
   99: * Paragraphs::	        Moving over paragraphs.
  100: * Pages::	        Moving over pages.
  101: * Filling::	        Filling or justifying text.
  102: * Case::	        Changing the case of text.
  103: * Text Mode::	        The major modes for editing text files.
  104: * Outline Mode::        Editing outlines.
  105: * TeX Mode::	        Editing input to the formatter TeX.
  106: * Nroff Mode::	        Editing input to the formatter nroff.
  107: * Formatted Text::      Editing formatted text directly in WYSIWYG fashion.
  108: @end menu
  110: @node Words, Sentences, , Text
  111: @c @section Words
  112: @section 単語
  113: @c @cindex words
  114: @cindex 単語
  115: @c @cindex Meta commands and words
  116: @cindex メタコマンドと単語
  118: @c   Emacs has commands for moving over or operating on words.  By convention,
  119: @c the keys for them are all Meta characters.
  120: Emacsには、単語を横断してポイントを移動したり、
  121: 単語を操作対象とするコマンドがあります。
  122: 慣例として、これらのコマンドのキーはメタ文字です。
  124: @c widecommands
  125: @table @kbd
  126: @item M-f
  127: @c Move forward over a word (@code{forward-word}).
  128: 単語を横断してポイントを前向きに移動する(@code{forward-word})。
  129: @item M-b
  130: @c Move backward over a word (@code{backward-word}).
  131: 単語を横断してポイントを後向きに移動する(@code{backward-word})。
  132: @item M-d
  133: @c Kill up to the end of a word (@code{kill-word}).
  134: ポイント位置から単語の末尾までをキルする(@code{kill-word})。
  135: @item M-@key{DEL}
  136: @c Kill back to the beginning of a word (@code{backward-kill-word}).
  137: ポイント位置から単語の先頭までを後向きにキルする
  138: (@code{backward-kill-word})。
  139: @item M-@@
  140: @c Mark the end of the next word (@code{mark-word}).
  141: つぎの単語の末尾にマークを設定する(@code{mark-word})。
  142: @item M-t
  143: @c Transpose two words or drag a word across other words
  144: @c (@code{transpose-words}).
  145: 隣接した2つの単語を入れ替える。
  146: あるいは、単語を複数の単語を飛び越して移す。
  147: (@code{transpose-words})。
  148: @end table
  150: @c   Notice how these keys form a series that parallels the character-based
  151: @c @kbd{C-f}, @kbd{C-b}, @kbd{C-d}, @key{DEL} and @kbd{C-t}.  @kbd{M-@@} is
  152: @c cognate to @kbd{C-@@}, which is an alias for @kbd{C-@key{SPC}}.
  153: これらのキーは、文字単位の操作コマンド、@kbd{C-f}、@kbd{C-b}、
  154: @kbd{C-d}、@key{DEL}、@kbd{C-t}に対応していることに注目してください。
  155: @kbd{M-@@}も、@kbd{C-@key{SPC}}の別名である@kbd{C-@@}に対応しています。
  157: @kindex M-f
  158: @kindex M-b
  159: @findex forward-word
  160: @findex backward-word
  161: @c   The commands @kbd{M-f} (@code{forward-word}) and @kbd{M-b}
  162: @c (@code{backward-word}) move forward and backward over words.  These
  163: @c Meta characters are thus analogous to the corresponding control
  164: @c characters, @kbd{C-f} and @kbd{C-b}, which move over single characters
  165: @c in the text.  The analogy extends to numeric arguments, which serve as
  166: @c repeat counts.  @kbd{M-f} with a negative argument moves backward, and
  167: @c @kbd{M-b} with a negative argument moves forward.  Forward motion
  168: @c stops right after the last letter of the word, while backward motion
  169: @c stops right before the first letter.@refill
  170: コマンド@kbd{M-f}(@code{forward-word})と
  171: @kbd{M-b}(@code{backward-word})は、
  172: 単語を横断してポイントを前向きに(末尾に向かって)
  173: あるいは後向きに(先頭に向かって)移動します。
  174: これらのメタ文字は、文字単位でポイントを前後に移動する
  175: コントロール文字@kbd{C-f}や@kbd{C-b}に類似しています。
  176: この類似性は、数引数を反復回数として扱うことにもおよびます。
  177: 負の引数を指定すると、@kbd{M-f}は後向きに移動し、
  178: @kbd{M-b}は前向きに移動します。
  179: 前向き移動では単語の最後の文字の直後に、
  180: 後向き移動では最初の文字の直前に、ポイントを移動します。
  181: @footnote{【訳注】なお、移動方向に単語構成文字がない場合には、
  182: それらを飛び越えてポイントを移動します。}
  184: @kindex M-d
  185: @findex kill-word
  186: @c   @kbd{M-d} (@code{kill-word}) kills the word after point.  To be
  187: @c precise, it kills everything from point to the place @kbd{M-f} would
  188: @c move to.  Thus, if point is in the middle of a word, @kbd{M-d} kills
  189: @c just the part after point.  If some punctuation comes between point and the
  190: @c next word, it is killed along with the word.  (If you wish to kill only the
  191: @c next word but not the punctuation before it, simply do @kbd{M-f} to get
  192: @c the end, and kill the word backwards with @kbd{M-@key{DEL}}.)
  193: @c @kbd{M-d} takes arguments just like @kbd{M-f}.
  194: @kbd{M-d}(@code{kill-word})はポイントの直後の単語をキルします。
  195: 正確にいえば、ポイント位置から@kbd{M-f}による移動位置までの全文字をキルします。
  196: ポイントが単語の途中にあれば、ポイントよりあとの部分だけをキルします。
  197: また、ポイントとつぎの単語のあいだに句読点があれば、
  198: 単語と一緒にそれらもキルします。
  199: (つぎの単語だけをキルしてそのまえにある句読点を残したければ、
  200: @kbd{M-f}でつぎの単語の末尾に移動してから、
  201: @kbd{M-@key{DEL}}でその単語を後向きにキルする。)
  202: @kbd{M-d}は、引数を@kbd{M-f}と同様に解釈します。
  204: @findex backward-kill-word
  205: @kindex M-DEL
  206: @c   @kbd{M-@key{DEL}} (@code{backward-kill-word}) kills the word before
  207: @c point.  It kills everything from point back to where @kbd{M-b} would
  208: @c move to.  If point is after the space in @w{@samp{FOO, BAR}}, then
  209: @c @w{@samp{FOO, }} is killed.  (If you wish to kill just @samp{FOO}, and
  210: @c not the comma and the space, use @kbd{M-b M-d} instead of
  211: @c @kbd{M-@key{DEL}}.)
  212: @kbd{M-@key{DEL}}(@code{backward-kill-word})は、
  213: ポイントの直前の単語をキルします。
  214: ポイント位置から@kbd{M-b}による移動位置までの全文字をキルします。
  215: ポイントが@w{@samp{FOO, BAR}}の空白の直後にあるとすれば、
  216: @w{@samp{FOO, }}をキルします。
  217: (@samp{FOO}だけをキルしてコンマと空白を残したければ、
  218: @kbd{M-@key{DEL}}のかわりに@kbd{M-b M-d}を使う。)
  220: @kindex M-t
  221: @findex transpose-words
  222: @c   @kbd{M-t} (@code{transpose-words}) exchanges the word before or
  223: @c containing point with the following word.  The delimiter characters between
  224: @c the words do not move.  For example, @w{@samp{FOO, BAR}} transposes into
  225: @c @w{@samp{BAR, FOO}} rather than @samp{@w{BAR FOO,}}.  @xref{Transpose}, for
  226: @c more on transposition and on arguments to transposition commands.
  227: @kbd{M-t}(@code{transpose-words})は、
  228: ポイントの直前にある単語あるいはポイントを含む単語と、
  229: 後続の単語とを入れ替えます。
  230: 単語のあいだにある区切り文字は動きせん。
  231: たとえば、@w{@samp{FOO, BAR}}を入れ替えると、
  232: @samp{@w{BAR FOO,}}ではなく@w{@samp{BAR, FOO}}となります。
  233: 入れ替えや入れ替えコマンドの引数については、
  234: @xref{Transpose}。
  236: @kindex M-@@
  237: @findex mark-word
  238: @c   To operate on the next @var{n} words with an operation which applies
  239: @c between point and mark, you can either set the mark at point and then move
  240: @c over the words, or you can use the command @kbd{M-@@} (@code{mark-word})
  241: @c which does not move point, but sets the mark where @kbd{M-f} would move
  242: @c to.  @kbd{M-@@} accepts a numeric argument that says how many words to
  243: @c scan for the place to put the mark.  In Transient Mark mode, this command
  244: @c activates the mark.
  245: ポイントとマークのあいだに適用される操作を後続の@var{n}個の単語に適用する方法は、
  246: 2つあります。
  247: ポイント位置にマークを設定してから、単語を横断してポイントを移動します。
  248: あるいは、コマンド@kbd{M-@@}(@code{mark-word})を使います。
  249: このコマンドは、ポイントを移動せずに、
  250: @kbd{M-f}による移動位置にマークを設定します。
  251: @kbd{M-@@}には、何単語先にマークを設定するかを数引数で指定できます。
  252: 暫定マーク(transient-mark)モードでは、このコマンドはマークを活性にします。
  254: @c   The word commands' understanding of syntax is completely controlled by
  255: @c the syntax table.  Any character can, for example, be declared to be a word
  256: @c delimiter.  @xref{Syntax}.
  257: 単語操作コマンドが理解する構文は、すべて構文テーブルで制御されます。
  258: たとえば、任意の文字を単語の区切り文字として宣言できます。
  259: @xref{Syntax}。
  261: @node Sentences, Paragraphs, Words, Text
  262: @c @section Sentences
  263: @section 文
  264: @c @cindex sentences
  265: @cindex 文
  266: @c @cindex manipulating sentences
  267: @cindex 文の操作
  269: @c   The Emacs commands for manipulating sentences and paragraphs are mostly
  270: @c on Meta keys, so as to be like the word-handling commands.
  271: Emacsの文/段落操作コマンドは、単語操作コマンドと同じく、
  272: ほとんどメタキーです。
  274: @table @kbd
  275: @item M-a
  276: @c Move back to the beginning of the sentence (@code{backward-sentence}).
  277: 文の先頭にポイントを後向きに移動する(@code{backward-sentence})。
  278: @item M-e
  279: @c Move forward to the end of the sentence (@code{forward-sentence}).
  280: 文の末尾にポイントを前向きに移動する(@code{forward-sentence})。
  281: @item M-k
  282: @c Kill forward to the end of the sentence (@code{kill-sentence}).
  283: ポイント位置から文末までを前向きにキルする
  284: (@code{kill-sentence})。
  285: @item C-x @key{DEL}
  286: @c Kill back to the beginning of the sentence (@code{backward-kill-sentence}).
  287: ポイント位置から文頭までを後向きにキルする
  288: (@code{backward-kill-sentence})。
  289: @end table
  291: @kindex M-a
  292: @kindex M-e
  293: @findex backward-sentence
  294: @findex forward-sentence
  295: @c   The commands @kbd{M-a} and @kbd{M-e} (@code{backward-sentence} and
  296: @c @code{forward-sentence}) move to the beginning and end of the current
  297: @c sentence, respectively.  They were chosen to resemble @kbd{C-a} and
  298: @c @kbd{C-e}, which move to the beginning and end of a line.  Unlike them,
  299: @c @kbd{M-a} and @kbd{M-e} if repeated or given numeric arguments move over
  300: @c successive sentences.
  301: コマンド@kbd{M-a}と@kbd{M-e}
  302: (@code{backward-sentence}と@code{forward-sentence})は、
  303: それぞれ、ポイントを含む文の先頭あるいは末尾にポイントを移動します。
  304: これらは、行頭や行末にポイントを移動するコマンド@kbd{C-a}と@kbd{C-e}に
  305: 類似するように選ばれました。
  306: ただし、@kbd{M-a}や@kbd{M-e}を反復して使ったり数引数を指定すると、
  307: ポイントは連続した文を横断して移動する点が違います。
  309: @c   Moving backward over a sentence places point just before the first
  310: @c character of the sentence; moving forward places point right after the
  311: @c punctuation that ends the sentence.  Neither one moves over the
  312: @c whitespace at the sentence boundary.
  313: (文頭に向かって)後向きに移動するときは、
  314: 文の先頭の文字の直前にポイントを置きます。
  315: (文末に向かって)前向きに移動するときは、
  316: 文を終える句読点の直後に置きます。
  317: どちらのコマンドも、文と文の境界にある白文字に
  318: ポイントを移動することはありません。
  320: @kindex M-k
  321: @kindex C-x DEL
  322: @findex kill-sentence
  323: @findex backward-kill-sentence
  324: @c   Just as @kbd{C-a} and @kbd{C-e} have a kill command, @kbd{C-k}, to go
  325: @c with them, so @kbd{M-a} and @kbd{M-e} have a corresponding kill command
  326: @c @kbd{M-k} (@code{kill-sentence}) which kills from point to the end of
  327: @c the sentence.  With minus one as an argument it kills back to the
  328: @c beginning of the sentence.  Larger arguments serve as a repeat count.
  329: @c There is also a command, @kbd{C-x @key{DEL}}
  330: @c (@code{backward-kill-sentence}), for killing back to the beginning of a
  331: @c sentence.  This command is useful when you change your mind in the
  332: @c middle of composing text.@refill
  333: @kbd{C-a}と@kbd{C-e}には調和したキルコマンド@kbd{C-k}があるように、
  334: @kbd{M-a}と@kbd{M-e}にもコマンド@kbd{M-k}(@code{kill-sentence})があります。
  335: これはポイントから文末までをキルします。
  336: 引数に@minus{}1を指定すると、文頭までを後向きにキルします。
  337: これより大きな引数は反復回数になります。
  338: また、ポイント位置から文頭までを後向きにキルするコマンドとして
  339: @kbd{C-x @key{DEL}}(@code{backward-kill-sentence})もあります。
  340: このコマンドは、文の作成途中で考えが変わったときに便利です。
  342: @c   The sentence commands assume that you follow the American typist's
  343: @c convention of putting two spaces at the end of a sentence; they consider
  344: @c a sentence to end wherever there is a @samp{.}, @samp{?} or @samp{!}
  345: @c followed by the end of a line or two spaces, with any number of
  346: @c @samp{)}, @samp{]}, @samp{'}, or @samp{"} characters allowed in between.
  347: @c A sentence also begins or ends wherever a paragraph begins or ends.
  348: 文操作コマンドでは、文末に空白を2個打つという米国のタイピストの習慣を
  349: 踏襲しているものと仮定します。
  350: つまり、@samp{.}、@samp{?}、@samp{!}の直後が行末であるか空白が2個続けば、
  351: その箇所を文末とみなします。
  352: ただし、@samp{.}、@samp{?}、@samp{!}の直後には、
  353: @samp{)}、@samp{]}、@samp{'}、@samp{"}がいくつあってもかまいません。
  354: また、段落の先頭と末尾も、それぞれ、文の先頭と末尾になります。
  356: @vindex sentence-end
  357: @c   The variable @code{sentence-end} controls recognition of the end of a
  358: @c sentence.  It is a regexp that matches the last few characters of a
  359: @c sentence, together with the whitespace following the sentence.  Its
  360: @c normal value is
  361: 変数@code{sentence-end}で、文末の識別方法を制御します。
  362: この値は、文末の数個の文字とそれらに続く白文字に一致する正規表現です。
  363: 通常の値はつぎのとおりです。
  364: @footnote{【訳注】
  365: 言語環境を@code{Japanese}にすると、変数@code{sentence-end}は
  366: @example
  367: "[.?!][]\"')]*\\($\\|\t\\|  \\)[ \t\n]*\\|[。?!]"
  368: @end example
  369: となっている。
  370: 追加部分は、日本語の文末に対応する文字集合。}
  372: @example
  373: "[.?!][]\"')]*\\($\\|\t\\|  \\)[ \t\n]*"
  374: @end example
  376: @noindent
  377: @c This example is explained in the section on regexps.  @xref{Regexps}.
  378: この例は、正規表現の節で説明しました。
  379: @xref{Regexps}。
  381: @c   If you want to use just one space between sentences, you should
  382: @c set @code{sentence-end} to this value:
  383: 文のあいだには空白を1個だけとしたければ、
  384: @code{sentence-end}にはつぎの値を設定します。
  386: @example
  387: "[.?!][]\"')]*\\($\\|\t\\| \\)[ \t\n]*"
  388: @end example
  390: @noindent
  391: @c You should also set the variable @code{sentence-end-double-space} to
  392: @c @code{nil} so that the fill commands expect and leave just one space at
  393: @c the end of a sentence.  Note that this makes it impossible to
  394: @c distinguish between periods that end sentences and those that indicate
  395: @c abbreviations.
  396: 同時に、変数@code{sentence-end-double-space}には@code{nil}を設定して、
  397: 詰め込みコマンドにも、文末には空白が1個だけあり、また、
  398: 文末には空白を1個だけ追加することを指示します。
  399: ただし、このように設定すると、
  400: 文末のピリオドと省略のピリオドとを区別できなくなることに注意してください。
  402: @node Paragraphs, Pages, Sentences, Text
  403: @c @section Paragraphs
  404: @section 段落
  405: @c @cindex paragraphs
  406: @cindex 段落
  407: @c @cindex manipulating paragraphs
  408: @cindex 段落の操作
  409: @kindex M-@{
  410: @kindex M-@}
  411: @findex backward-paragraph
  412: @findex forward-paragraph
  414: @c   The Emacs commands for manipulating paragraphs are also Meta keys.
  415: 段落を操作するEmacsコマンドもメタキーです。
  417: @table @kbd
  418: @item M-@{
  419: @c Move back to previous paragraph beginning (@code{backward-paragraph}).
  420: まえの段落の先頭にポイントを後向きに移動する(@code{backward-paragraph})。
  421: @item M-@}
  422: @c Move forward to next paragraph end (@code{forward-paragraph}).
  423: つぎの段落の末尾にポイントを前向きに移動する(@code{forward-paragraph})。
  424: @item M-h
  425: @c Put point and mark around this or next paragraph (@code{mark-paragraph}).
  426: ポイントを含む段落かつぎの段落の周りにポイントとマークを置く
  427: (@code{mark-paragraph})。
  428: @end table
  430: @c   @kbd{M-@{} moves to the beginning of the current or previous
  431: @c paragraph, while @kbd{M-@}} moves to the end of the current or next
  432: @c paragraph.  Blank lines and text-formatter command lines separate
  433: @c paragraphs and are not considered part of any paragraph.  In Fundamental
  434: @c mode, but not in Text mode, an indented line also starts a new
  435: @c paragraph.  (If a paragraph is preceded by a blank line, these commands
  436: @c treat that blank line as the beginning of the paragraph.)
  437: @kbd{M-@{}は、ポイントを含む段落の先頭か、
  438: まえの段落の先頭にポイントを移動します。
  439: 一方、@kbd{M-@}}は、ポイントを含む段落の末尾か、
  440: つぎの段落の末尾にポイントを移動します。
  441: 段落は、空行やテキスト整形コマンドの行で区切られますが、
  442: それらの行自体は段落には属しません。
  443: 基本(fundamental)モードでは、
  444: 字下げした行も新たな段落の始まりとみなしますが、
  445: テキスト(text)モードではそうしません。
  446: (段落の直前に空行があれば、
  447: これらのコマンドはそれらを段落の先頭として扱う。)
  449: @c   In major modes for programs, paragraphs begin and end only at blank
  450: @c lines.  This makes the paragraph commands continue to be useful even
  451: @c though there are no paragraphs per se.
  452: プログラム用のメジャーモードでは、段落は空行で始まり空行で終ります。
  453: こうしておけば、本来段落を持たないプログラムでも
  454: 段落操作コマンドが役立ちます。
  456: @c   When there is a fill prefix, then paragraphs are delimited by all lines
  457: @c which don't start with the fill prefix.  @xref{Filling}.
  458: 詰め込み接頭辞がある場合には、接頭辞で始まらない行が段落の区切りとなります。
  459: @xref{Filling}。
  461: @kindex M-h
  462: @findex mark-paragraph
  463: @c   When you wish to operate on a paragraph, you can use the command
  464: @c @kbd{M-h} (@code{mark-paragraph}) to set the region around it.  Thus,
  465: @c for example, @kbd{M-h C-w} kills the paragraph around or after point.
  466: @c The @kbd{M-h} command puts point at the beginning and mark at the end of
  467: @c the paragraph point was in.  In Transient Mark mode, it activates the
  468: @c mark.  If point is between paragraphs (in a run of blank lines, or at a
  469: @c boundary), the paragraph following point is surrounded by point and
  470: @c mark.  If there are blank lines preceding the first line of the
  471: @c paragraph, one of these blank lines is included in the region.
  472: 段落を対象に操作したいときには、
  473: コマンド@kbd{M-h}(@code{mark-paragraph})を使って
  474: 段落を囲むようなリージョンを設定します。
  475: したがって、たとえば、@kbd{M-h C-w}とすると、
  476: ポイントを含むか直後の段落を削除します。
  477: @kbd{M-h}コマンドは、ポイントを含む段落の先頭にポイントを置き、
  478: 末尾にマークを設定します。
  479: 暫定マーク(transient-mark)モードでは、このマークを活性にします。
  480: ポイントが段落のあいだ(空行や境界)にある場合は、
  481: ポイントの直後にある段落の周りにポイントとマークを設定します。
  482: 段落の1行目のまえに空行があれば、
  483: 直前の空行1行も@kbd{M-h}が設定するリージョンに含まれます。
  485: @vindex paragraph-start
  486: @vindex paragraph-separate
  487: @c   The precise definition of a paragraph boundary is controlled by the
  488: @c variables @code{paragraph-separate} and @code{paragraph-start}.  The
  489: @c value of @code{paragraph-start} is a regexp that should match any line
  490: @c that either starts or separates paragraphs.  The value of
  491: @c @code{paragraph-separate} is another regexp that should match only lines
  492: @c that separate paragraphs without being part of any paragraph (for
  493: @c example, blank lines).  Lines that start a new paragraph and are
  494: @c contained in it must match only @code{paragraph-start}, not
  495: @c @code{paragraph-separate}.  For example, in Fundamental mode,
  496: @c @code{paragraph-start} is @code{"[ @t{\}t@t{\}n@t{\}f]"} and
  497: @c @code{paragraph-separate} is @code{"[ @t{\}t@t{\}f]*$"}.@refill
  498: 正確な段落の境界は、変数@code{paragraph-separate}と
  499: @code{paragraph-start}で定義されます。
  500: @code{paragraph-start}の値は、
  501: 段落を始めたり区切ったりする行に一致する正規表現です。
  502: @code{paragraph-separate}の値も別の正規表現ですが、
  503: どの段落にも属さない段落を分割する行(たとえば空行)だけに一致するものです。
  504: 新たな段落を始めてその段落に属す行は、@code{paragraph-start}だけに一致して、
  505: @code{paragraph-separate}に一致してはいけません。
  506: たとえば、基本(fundamental)モードでは、
  507: @code{paragraph-start}は@code{"[ @t{\}t@t{\}n@t{\}f]"}であり、
  508: @code{paragraph-separate}は@code{"[ @t{\}t@t{\}f]*$"}です。
  510: @c   Normally it is desirable for page boundaries to separate paragraphs.
  511: @c The default values of these variables recognize the usual separator for
  512: @c pages.
  513: 通常、ページ境界でも段落が区切られるのが望ましいです。
  514: これらの変数のデフォルト値は、ページの一般的な区切り文字も認識します。
  516: @node Pages, Filling, Paragraphs, Text
  517: @c @section Pages
  518: @section ページ
  520: @c @cindex pages
  521: @cindex ページ
  522: @c @cindex formfeed
  523: @cindex ページ送り
  524: @c   Files are often thought of as divided into @dfn{pages} by the
  525: @c @dfn{formfeed} character (ASCII control-L, octal code 014).  When you
  526: @c print hardcopy for a file, this character forces a page break; thus,
  527: @c each page of the file goes on a separate page on paper.  Most Emacs
  528: @c commands treat the page-separator character just like any other
  529: @c character: you can insert it with @kbd{C-q C-l}, and delete it with
  530: @c @key{DEL}.  Thus, you are free to paginate your file or not.  However,
  531: @c since pages are often meaningful divisions of the file, Emacs provides
  532: @c commands to move over them and operate on them.
  533: ファイルを@dfn{ページ送り}文字(ASCIIコードのコントロールL、8進コードの014)
  534: で区切った@dfn{ページ}の集まりとして捉えることがよくあります。
  535: ファイルを印刷すると、この文字は改ページを行います。
  536: そのため、ファイル内の各ページは別々の用紙に印刷されます。
  537: ほとんどのEmacsコマンドは、ページを区切る文字を他の文字と同様に扱いますから、
  538: @kbd{C-q C-l}でページ送り文字を挿入したり、@key{DEL}で削除できます。
  539: つまり、ファイルをページに区切るのも区切らないのも自由です。
  540: しかし、ページはファイルを分割する意味ある単位なので、
  541: Emacsには、ページ間の移動やページを対象とするコマンドがあります。
  543: @c WideCommands
  544: @table @kbd
  545: @item C-x [
  546: @c Move point to previous page boundary (@code{backward-page}).
  547: まえのページ境界にポイントを移動する(@code{backward-page})。
  548: @item C-x ]
  549: @c Move point to next page boundary (@code{forward-page}).
  550: つぎのページ境界にポイントを移動する(@code{forward-page})。
  551: @item C-x C-p
  552: @c Put point and mark around this page (or another page) (@code{mark-page}).
  553: このページ(か別のページ)の周りに、ポイントとマークを置く
  554: (@code{mark-page})。
  555: @item C-x l
  556: @c Count the lines in this page (@code{count-lines-page}).
  557: このページの行数を数える(@code{count-lines-page})。
  558: @end table
  560: @kindex C-x [
  561: @kindex C-x ]
  562: @findex forward-page
  563: @findex backward-page
  564: @c   The @kbd{C-x [} (@code{backward-page}) command moves point to immediately
  565: @c after the previous page delimiter.  If point is already right after a page
  566: @c delimiter, it skips that one and stops at the previous one.  A numeric
  567: @c argument serves as a repeat count.  The @kbd{C-x ]} (@code{forward-page})
  568: @c command moves forward past the next page delimiter.
  569: @kbd{C-x [}(@code{backward-page})コマンドは、
  570: まえのページ区切り文字の直後にポイントを移動します。
  571: ポイントがすでにページ区切りの直後にあれば、
  572: さらにまえのページ区切り文字の直後に移動します。
  573: 数引数は反復回数として扱われます。
  574: @kbd{C-x ]}(@code{forward-page})コマンドは、
  575: つぎのページ区切り文字の直後にポイントを移動します。
  577: @kindex C-x C-p
  578: @findex mark-page
  579: @c   The @kbd{C-x C-p} command (@code{mark-page}) puts point at the
  580: @c beginning of the current page and the mark at the end.  The page
  581: @c delimiter at the end is included (the mark follows it).  The page
  582: @c delimiter at the front is excluded (point follows it).  @kbd{C-x C-p
  583: @c C-w} is a handy way to kill a page to move it elsewhere.  If you move to
  584: @c another page delimiter with @kbd{C-x [} and @kbd{C-x ]}, then yank the
  585: @c killed page, all the pages will be properly delimited once again.  The
  586: @c reason @kbd{C-x C-p} includes only the following page delimiter in the
  587: @c region is to ensure that.
  588: @kbd{C-x C-p}コマンド(@code{mark-page})は、
  589: ページの先頭にポイントを置き、末尾にマークを設定します。
  590: 末尾にあるページ区切り文字は含まれます
  591: (マークはページ区切り文字の直後にある)。
  592: 先頭にあるページ区切り文字は除外されます
  593: (ポイントはページ区切り文字の直後にある)。
  594: @kbd{C-x C-p C-w}は、ページ全体をキルして別の場所に
  595: 移動するのに便利な方法です。
  596: @kbd{C-x [}や@kbd{C-x ]}で別のページ区切り位置に移動してから
  597: キルしたページをヤンクすれば、
  598: すべてのページが適切に区切られた状態が維持されます。
  599: @kbd{C-x C-p}が末尾のページ区切り文字だけを含める理由は、
  600: これを保証するためです。
  602: @c   A numeric argument to @kbd{C-x C-p} is used to specify which page to go
  603: @c to, relative to the current one.  Zero means the current page.  One means
  604: @c the next page, and @minus{}1 means the previous one.
  605: @kbd{C-x C-p}への数引数は、現在のページを基準にして
  606: ポイントの移動先のページを指定します。
  607: 0は現在のページを意味します。
  608: 1はつぎのページ、@minus{}1はまえのページを意味します。
  610: @kindex C-x l
  611: @findex count-lines-page
  612: @c   The @kbd{C-x l} command (@code{count-lines-page}) is good for deciding
  613: @c where to break a page in two.  It prints in the echo area the total number
  614: @c of lines in the current page, and then divides it up into those preceding
  615: @c the current line and those following, as in
  616: @kbd{C-x l}コマンド(@code{count-lines-page})は、
  617: ページをどこで2つに分割するかを決めるのに便利です。
  618: 現在のページについて、総行数、現在行のまえにある行数とうしろにある行数を
  619: つぎのようにエコー領域に表示します。
  621: @example
  622: @c Page has 96 (72+25) lines
  623: @c = タイポ
  624: Page has 96 lines (72+25)
  625: @end example
  627: @noindent
  628: @c   Notice that the sum is off by one; this is correct if point is not at the
  629: @c beginning of a line.
  630: この例で、総行数が1だけ少ないことに注意してください。
  631: ポイントが行頭にないとつねにこうなります。
  633: @vindex page-delimiter
  634: @c   The variable @code{page-delimiter} controls where pages begin.  Its
  635: @c value is a regexp that matches the beginning of a line that separates
  636: @c pages.  The normal value of this variable is @code{"^@t{\}f"}, which
  637: @c matches a formfeed character at the beginning of a line.
  638: 変数@code{page-delimiter}はページの始まりを制御します。
  639: この変数の値は、ページを区切る行の先頭に一致する正規表現です。
  640: この変数の通常の値は@code{"^@t{\}f"}で、
  641: 行頭のページ送り文字に一致します。
  643: @node Filling, Case, Pages, Text
  644: @c @section Filling Text
  645: @section テキストの詰め込み
  646: @c @cindex filling text
  647: @cindex テキストの詰め込み
  649: @c   @dfn{Filling} text means breaking it up into lines that fit a
  650: @c specified width.  Emacs does filling in two ways.  In Auto Fill mode,
  651: @c inserting text with self-inserting characters also automatically fills
  652: @c it.  There are also explicit fill commands that you can use when editing
  653: @c text leaves it unfilled.  When you edit formatted text, you can specify
  654: @c a style of filling for each portion of the text (@pxref{Formatted
  655: @c Text}).
  656: テキストの@dfn{詰め込み}(filling)とは、
  657: 指定した幅に納まるようにテキストを行に分割することです。
  658: Emacsには、詰め込む方法が2つあります。
  659: 自動詰め込み(auto-fill)モードでは、
  660: 自己挿入文字でテキストを挿入すると同時に詰め込みを行います。
  661: あるいは、詰め込まずにテキストを編集しているときには、
  662: 陽に詰め込みコマンドを使います。
  663: 整形済みテキストを編集しているときは、
  664: テキストの各部分ごとに詰め込みのスタイルを指定できます
  665: (@pxref{Formatted Text})。
  667: @menu
  668: * Auto Fill::	        Auto Fill mode breaks long lines automatically.
  669: * Fill Commands::       Commands to refill paragraphs and center lines.
  670: * Fill Prefix::	        Filling paragraphs that are indented
  671:                           or in a comment, etc.
  672: * Adaptive Fill::       How Emacs can determine the fill prefix automatically.
  673: @end menu
  675: @node Auto Fill, Fill Commands, , Filling
  676: @c @subsection Auto Fill Mode
  677: @subsection 自動詰め込みモード(auto-fillモード)
  678: @c @cindex Auto Fill mode
  679: @c @cindex mode, Auto Fill
  680: @c @cindex word wrap
  681: @cindex 自動詰め込みモード(Auto Fill mode)
  682: @cindex auto-fillモード
  683: @cindex モード、Auto Fill
  684: @cindex 単語の折り返し
  686: @c   @dfn{Auto Fill} mode is a minor mode in which lines are broken
  687: @c automatically when they become too wide.  Breaking happens only when
  688: @c you type a @key{SPC} or @key{RET}.
  689: @dfn{自動詰め込み}(auto-fill)モードはマイナモードで、
  690: 行が長くなりすぎると自動的に分割します。
  691: @key{SPC}や@key{RET}を打鍵したときだけ、行を分割します。
  693: @table @kbd
  694: @item M-x auto-fill-mode
  695: @c Enable or disable Auto Fill mode.
  696: 自動詰め込み(auto-fill)モードをオンにしたりオフにする。
  697: @item @key{SPC}
  698: @itemx @key{RET}
  699: @c In Auto Fill mode, break lines when appropriate.
  700: 自動詰め込み(auto-fill)モードでは、
  701: 適切な場合には行を分割する。
  702: @end table
  704: @findex auto-fill-mode
  705: @c   @kbd{M-x auto-fill-mode} turns Auto Fill mode on if it was off, or off
  706: @c if it was on.  With a positive numeric argument it always turns Auto
  707: @c Fill mode on, and with a negative argument always turns it off.  You can
  708: @c see when Auto Fill mode is in effect by the presence of the word
  709: @c @samp{Fill} in the mode line, inside the parentheses.  Auto Fill mode is
  710: @c a minor mode which is enabled or disabled for each buffer individually.
  711: @c @xref{Minor Modes}.
  712: @kbd{M-x auto-fill-mode}は、
  713: 自動詰め込み(auto-fill)モードがオフならばオンにし、
  714: オンならばオフにします。
  715: 正の数引数を指定すると自動詰め込み(auto-fill)モードをつねにオンにしますが、
  716: 負の引数を指定するとつねにオフにします。
  717: モード行の括弧の中に@samp{Fill}と表示されていれば、
  718: このモードはオンになっています。
  719: 自動詰め込み(auto-fill)モードは、
  720: 各バッファごとにオン/オフできるマイナモードです。
  721: @xref{Minor Modes}。
  723: @c   In Auto Fill mode, lines are broken automatically at spaces when they
  724: @c get longer than the desired width.  Line breaking and rearrangement
  725: @c takes place only when you type @key{SPC} or @key{RET}.  If you wish to
  726: @c insert a space or newline without permitting line-breaking, type
  727: @c @kbd{C-q @key{SPC}} or @kbd{C-q C-j} (recall that a newline is really a
  728: @c control-J).  Also, @kbd{C-o} inserts a newline without line breaking.
  729: 自動詰め込み(auto-fill)モードでは、
  730: 行が決められた幅より長くなると、自動的に空白の位置で行を分割します。
  731: 行の分割と再配置は、@key{SPC}か@key{RET}を打鍵したときだけ行われます。
  732: 行を分割せずに空白や改行を挿入するには、
  733: @kbd{C-q @key{SPC}}や@kbd{C-q C-j}と打鍵します
  734: (改行はまさにコントロールJであることを思い出してほしい)。
  735: @kbd{C-o}も行を分割せずに改行を挿入します。
  737: @c   Auto Fill mode works well with programming-language modes, because it
  738: @c indents new lines with @key{TAB}.  If a line ending in a comment gets
  739: @c too long, the text of the comment is split into two comment lines.
  740: @c Optionally, new comment delimiters are inserted at the end of the first
  741: @c line and the beginning of the second so that each line is a separate
  742: @c comment; the variable @code{comment-multi-line} controls the choice
  743: @c (@pxref{Comments}).
  744: 自動詰め込み(auto-fill)モードは、@key{TAB}で新たな行を字下げするので、
  745: プログラム言語用のモードと組み合わせてもうまく動作します。
  746: コメントで終わる行が長くなりすぎた場合には、
  747: コメント内のテキストを2つのコメント行に分割します。
  748: 始めの行の末尾とつぎの行の行頭に新たにコメントの区切り文字列を挿入して、
  749: 2つの独立したコメント行にすることもできます。
  750: この付加機能は、変数@code{comment-multi-line}で制御します
  751: (@pxref{Comments})。
  753: @c   Adaptive filling (see the following section) works for Auto Filling as
  754: @c well as for explicit fill commands.  It takes a fill prefix
  755: @c automatically from the second or first line of a paragraph.
  756: 適応型詰め込み(後述)は、明示した詰め込みコマンドのみならず、
  757: 自動詰め込みに対しても有効に働きます。
  758: これは、段落の先頭行あるいは第2行目から、
  759: 自動的に詰め込み接頭辞を切り出します。
  761: @c   Auto Fill mode does not refill entire paragraphs; it can break lines but
  762: @c cannot merge lines.  So editing in the middle of a paragraph can result in
  763: @c a paragraph that is not correctly filled.  The easiest way to make the
  764: @c paragraph properly filled again is usually with the explicit fill commands.
  765: 自動詰め込み(auto-fill)モードは、段落全体を詰め直すことはしません。
  766: 行を分割できても、併合はできません。
  767: そのため、段落の途中を編集すると、必ずしも段落を正しく詰め込めません。
  768: 段落をふたたび適切に詰め込まれた状態にするもっとも簡単な方法は、
  769: 明示的に詰め込みコマンドを使用することです。
  770: @ifinfo
  771: @c @xref{Fill Commands}.
  772: @xref{Fill Commands}。
  773: @end ifinfo
  775: @c   Many users like Auto Fill mode and want to use it in all text files.
  776: @c The section on init files says how to arrange this permanently for yourself.
  777: @c @xref{Init File}.
  778: 多くのユーザーは自動詰め込み(auto-fill)モードを好み、
  779: あらゆるテキストファイルの編集に使用しようとします。
  780: 初期化ファイルの節では、こうする方法を説明します。
  781: @xref{Init File}。
  783: @node Fill Commands, Fill Prefix, Auto Fill, Filling
  784: @c @subsection Explicit Fill Commands
  785: @subsection 明示的な詰め込みコマンド
  787: @table @kbd
  788: @item M-q
  789: @c Fill current paragraph (@code{fill-paragraph}).
  790: 現在の段落を詰め込む(@code{fill-paragraph})。
  791: @item C-x f
  792: @c Set the fill column (@code{set-fill-column}).
  793: 詰め込み桁を設定する(@code{set-fill-column})。
  794: @item M-x fill-region
  795: @c Fill each paragraph in the region (@code{fill-region}).
  796: リージョン内の各段落を詰め込む(@code{fill-region})。
  797: @item M-x fill-region-as-paragraph
  798: @c Fill the region, considering it as one paragraph.
  799: リージョン全体を1つの段落とみなして詰め込む。
  800: @item M-s
  801: @c Center a line.
  802: 行を中央に揃える。
  803: @end table
  805: @kindex M-q
  806: @findex fill-paragraph
  807: @c   To refill a paragraph, use the command @kbd{M-q}
  808: @c (@code{fill-paragraph}).  This operates on the paragraph that point is
  809: @c inside, or the one after point if point is between paragraphs.
  810: @c Refilling works by removing all the line-breaks, then inserting new ones
  811: @c where necessary.
  812: 段落を詰め直すには、コマンド@kbd{M-q}(@code{fill-paragraph})を使います。
  813: ポイントを含む段落、あるいは、
  814: ポイントが段落のあいだにある場合には直後の段落を操作します。
  815: 改行をすべて取り除いてから、必要な箇所に新たに改行を挿入することで
  816: 段落を詰め直します。
  818: @findex fill-region
  819: @c   To refill many paragraphs, use @kbd{M-x fill-region}, which
  820: @c divides the region into paragraphs and fills each of them.
  821: いくつもの段落を詰め直すには、@kbd{M-x fill-region}を使います。
  822: これは、リージョンを段落に分けてから、各段落を詰め込みます。
  824: @findex fill-region-as-paragraph
  825: @c   @kbd{M-q} and @code{fill-region} use the same criteria as @kbd{M-h}
  826: @c for finding paragraph boundaries (@pxref{Paragraphs}).  For more
  827: @c control, you can use @kbd{M-x fill-region-as-paragraph}, which refills
  828: @c everything between point and mark.  This command deletes any blank lines
  829: @c within the region, so separate blocks of text end up combined into one
  830: @c block.@refill
  831: @kbd{M-q}と@code{fill-region}は、@kbd{M-h}と同じ基準で段落の境界を
  832: 探します(@pxref{Paragraphs})。
  833: 段落の大きさを制御するには、@kbd{M-x fill-region-as-paragraph}を使います。
  834: これは、ポイントとマークのあいだにあるものすべてを詰め直します。
  835: このコマンドはリージョン内の空行をすべて削除して、
  836: 分かれていたテキストの塊を1つの塊にまとめ上げます。
  838: @c @cindex justification
  839: @cindex 幅揃え
  840: @c   A numeric argument to @kbd{M-q} causes it to @dfn{justify} the text as
  841: @c well as filling it.  This means that extra spaces are inserted to make
  842: @c the right margin line up exactly at the fill column.  To remove the
  843: @c extra spaces, use @kbd{M-q} with no argument.  (Likewise for
  844: @c @code{fill-region}.)  Another way to control justification, and choose
  845: @c other styles of filling, is with the @code{justification} text property;
  846: @c see @ref{Format Justification}.
  847: @kbd{M-q}に数引数を指定すると、テキストの詰め込みだけでなく、
  848: テキストの@dfn{幅揃え}(justify)も行います。
  849: つまり、余分に空白を挿入して、行の右端が詰め込み桁に一致するようにします。
  850: 余分な空白を取り除くには、引数を指定しないで@kbd{M-q}を使います。
  851: (@code{fill-region}も同様。)
  852: 幅揃えを制御して別の詰め込みスタイルを選択する別の方法は、
  853: テキスト属性@code{justification}を使うことです。
  854: これに関しては、@ref{Format Justification}を参照してください。
  856: @c @kindex M-s @r{(Text mode)}
  857: @kindex M-s @r{(テキストモード)}
  858: @c @cindex centering
  859: @cindex 中央揃え
  860: @findex center-line
  861: @c   The command @kbd{M-s} (@code{center-line}) centers the current line
  862: @c within the current fill column.  With an argument @var{n}, it centers
  863: @c @var{n} lines individually and moves past them.
  864: コマンド@kbd{M-s}(@code{center-line})は、
  865: 詰め込み桁までの範囲内で現在行を中央に揃えます。
  866: 引数@var{n}を指定すると、
  867: 現在行を含め@var{n}行をそれぞれ独立に中央に揃えてから、
  868: 揃えた行のつぎにポイントを移動します。
  870: @vindex fill-column
  871: @kindex C-x f
  872: @findex set-fill-column
  873: @c   The maximum line width for filling is in the variable
  874: @c @code{fill-column}.  Altering the value of @code{fill-column} makes it
  875: @c local to the current buffer; until that time, the default value is in
  876: @c effect.  The default is initially 70.  @xref{Locals}.  The easiest way
  877: @c to set @code{fill-column} is to use the command @kbd{C-x f}
  878: @c (@code{set-fill-column}).  With a numeric argument, it uses that as the
  879: @c new fill column.  With just @kbd{C-u} as argument, it sets
  880: @c @code{fill-column} to the current horizontal position of point.
  881: 詰め込むときの行の最大幅は、変数@code{fill-column}に入っています。
  882: @code{fill-column}の値を変更すると、
  883: カレントバッファにローカルな変数になります。
  884: それまではデフォルト値が有効です。
  885: デフォルト値は始めは70です。
  886: @xref{Locals}。
  887: @code{fill-column}を設定するもっとも簡単な方法は、
  888: コマンド@kbd{C-x f}(@code{set-fill-column})を使うことです。
  889: このコマンドに数引数を指定すると、
  890: その値を新たな詰め込み桁として使います。
  891: @kbd{C-u}だけを引数に指定すると、
  892: ポイントの現在の水平位置を@code{fill-column}に設定します。
  894: @c   Emacs commands normally consider a period followed by two spaces or by
  895: @c a newline as the end of a sentence; a period followed by just one space
  896: @c indicates an abbreviation and not the end of a sentence.  To preserve
  897: @c the distinction between these two ways of using a period, the fill
  898: @c commands do not break a line after a period followed by just one space.
  899: Emacsコマンドは通常、
  900: ピリオドの直後に空白が2個あるか改行があれば文末として扱います。
  901: ピリオドの直後に空白が1個だけでは、文末ではなく省略とみなします。
  902: ピリオドのこれら2つの用法の違いを保存するために、
  903: ピリオドの直後に空白が1個だけの箇所では詰め込みコマンドは行を分割しません。
  905: @vindex sentence-end-double-space
  906: @c   If the variable @code{sentence-end-double-space} is @code{nil}, the
  907: @c fill commands expect and leave just one space at the end of a sentence.
  908: @c Ordinarily this variable is @code{t}, so the fill commands insist on
  909: @c two spaces for the end of a sentence, as explained above.  @xref{Sentences}.
  910: 変数@code{sentence-end-double-space}が@code{nil}ならば、
  911: 詰め込みコマンドは、文末には空白が1個だけあると仮定し、かつ、
  912: 文末には空白を1個だけ残します。
  913: 普通、この変数の値は@code{t}なので、
  914: 上述のように空白が2個ある場合だけを文末として扱います。
  915: @xref{Sentences}。
  917: @vindex colon-double-space
  918: @c   If the variable @code{colon-double-space} is non-@code{nil}, the
  919: @c fill commands put two spaces after a colon.
  920: @code{colon-double-space}が@code{nil}以外ならば、
  921: 詰め込みコマンドはコロンのうしろに空白を2個置きます。
  923: @node Fill Prefix, Adaptive Fill, Fill Commands, Filling
  924: @c @subsection The Fill Prefix
  925: @subsection 詰め込み接頭辞
  927: @c @cindex fill prefix
  928: @cindex 詰め込み接頭辞
  929: @c   To fill a paragraph in which each line starts with a special marker
  930: @c (which might be a few spaces, giving an indented paragraph), you can use
  931: @c the @dfn{fill prefix} feature.  The fill prefix is a string that Emacs
  932: @c expects every line to start with, and which is not included in filling.
  933: @c You can specify a fill prefix explicitly; Emacs can also deduce the
  934: @c fill prefix automatically (@pxref{Adaptive Fill}).
  935: 各行が(段落を字下げする数個の空白などの)特別の印で始まっている
  936: 段落を詰め込むには、@dfn{詰め込み接頭辞}(fill prefix)の機能を使えます。
  937: 詰め込み接頭辞は文字列であり、
  938: Emacsはすべての行がその文字列で始まると仮定しますが、
  939: 詰め込み接頭辞自体は詰め込みの対象ではありません。
  940: 明示的に詰め込み接頭辞を指定できますが、
  941: Emacsが詰め込み接頭辞を自動的に推測することもできます
  942: (@pxref{Adaptive Fill})。
  944: @table @kbd
  945: @item C-x .
  946: @c Set the fill prefix (@code{set-fill-prefix}).
  947: 詰め込み接頭辞を設定する(@code{set-fill-prefix})。
  948: @item M-q
  949: @c Fill a paragraph using current fill prefix (@code{fill-paragraph}).
  950: 現在の詰め込み接頭辞を使って、段落を詰め込む(@code{fill-paragraph})。
  951: @item M-x fill-individual-paragraphs
  952: @c Fill the region, considering each change of indentation as starting a
  953: @c new paragraph.
  954: 字下げ幅の変化を新たな段落の始まりとみなして、リージョン内を詰め込む。
  955: @item M-x fill-nonuniform-paragraphs
  956: @c Fill the region, considering only paragraph-separator lines as starting
  957: @c a new paragraph.
  958: 段落を分割する行だけを新たな段落の始まりとみなして、リージョン内を詰め込む。
  959: @end table
  961: @kindex C-x .
  962: @findex set-fill-prefix
  963: @c   To specify a fill prefix, move to a line that starts with the desired
  964: @c prefix, put point at the end of the prefix, and give the command
  965: @c @w{@kbd{C-x .}}@: (@code{set-fill-prefix}).  That's a period after the
  966: @c @kbd{C-x}.  To turn off the fill prefix, specify an empty prefix: type
  967: @c @w{@kbd{C-x .}}@: with point at the beginning of a line.@refill
  968: 詰め込み接頭辞を指定するには、
  969: 目的の接頭辞で始まっている行に移動して接頭辞の直後にポイントを置いてから、
  970: コマンド@w{@kbd{C-x .}}@:(@code{set-fill-prefix})を実行します。
  971: @kbd{C-x}のあとはピリオドです。
  972: 詰め込み接頭辞の使用をやめるには、空の接頭辞を設定します。
  973: つまり、行頭にポイントを置いてから@w{@kbd{C-x .}}@:と打ちます。
  975: @c   When a fill prefix is in effect, the fill commands remove the fill
  976: @c prefix from each line before filling and insert it on each line after
  977: @c filling.  Auto Fill mode also inserts the fill prefix automatically when
  978: @c it makes a new line.  The @kbd{C-o} command inserts the fill prefix on
  979: @c new lines it creates, when you use it at the beginning of a line
  980: @c (@pxref{Blank Lines}).  Conversely, the command @kbd{M-^} deletes the
  981: @c prefix (if it occurs) after the newline that it deletes
  982: @c (@pxref{Indentation}).
  983: 詰め込み接頭辞が設定されている場合、
  984: 詰め込みコマンドは処理に先だって各行から詰め込み接頭辞を取り除き、
  985: 詰め込みを行ったあとに各行に挿入します。
  986: 自動詰め込み(auto-fill)モードでも、
  987: 新たに行を作成するときに自動的に詰め込み接頭辞を挿入します。
  988: 行頭で@kbd{C-o}コマンド(@pxref{Blank Lines})を使用すると、
  989: 新たに作成する行にも詰め込み接頭辞を挿入します。
  990: 逆に、コマンド@kbd{M-^}は、
  991: 削除する改行の直後に詰め込み接頭辞があると接頭辞も削除します
  992: (@pxref{Indentation})。
  994: @c   For example, if @code{fill-column} is 40 and you set the fill prefix
  995: @c to @samp{;; }, then @kbd{M-q} in the following text
  996: たとえば、@code{fill-column}が40で詰め込み接頭辞が@samp{;; }のときに、
  997: つぎのテキストで@kbd{M-q}を実行します。
  999: @example
 1000: ;; This is an
 1001: ;; example of a paragraph
 1002: ;; inside a Lisp-style comment.
 1003: @end example
 1005: @noindent
 1006: @c produces this:
 1007: 結果はつぎのようになります。
 1009: @example
 1010: ;; This is an example of a paragraph
 1011: ;; inside a Lisp-style comment.
 1012: @end example
 1014: @c   Lines that do not start with the fill prefix are considered to start
 1015: @c paragraphs, both in @kbd{M-q} and the paragraph commands; this gives
 1016: @c good results for paragraphs with hanging indentation (every line
 1017: @c indented except the first one).  Lines which are blank or indented once
 1018: @c the prefix is removed also separate or start paragraphs; this is what
 1019: @c you want if you are writing multi-paragraph comments with a comment
 1020: @c delimiter on each line.
 1021: @kbd{M-q}および段落コマンドは、
 1022: 詰め込み接頭辞で始まらない行を段落の始まりとみなします。
 1023: これにより、ぶら下がり字下げ(先頭行を除いてすべての行が字下げ)
 1024: された段落も正しく詰め込みます。
 1025: 空行や接頭辞を取りさると字下げした行になる行も、
 1026: 段落の区切りや始まりとみなします。
 1027: これによって、各行にコメント区切りがある複数段落のコメントを
 1028: 書いているときにも、望みどおりの結果を得られます。
 1030: @findex fill-individual-paragraphs
 1031: @c   You can use @kbd{M-x fill-individual-paragraphs} to set the fill
 1032: @c prefix for each paragraph automatically.  This command divides the
 1033: @c region into paragraphs, treating every change in the amount of
 1034: @c indentation as the start of a new paragraph, and fills each of these
 1035: @c paragraphs.  Thus, all the lines in one ``paragraph'' have the same
 1036: @c amount of indentation.  That indentation serves as the fill prefix for
 1037: @c that paragraph.
 1038: 各段落に対して自動的に詰め込み接頭辞を設定するには、
 1039: @kbd{M-x fill-individual-paragraphs}を使います。
 1040: このコマンドは、字下げ幅の変化を新たな段落の始まりとみなして、
 1041: リージョンを段落に分割したあと、各段落を詰め込みます。
 1042: つまり、1つの『段落』内の行はどれも同じ字下げ幅です。
 1043: 字下げ幅が、段落に対する詰め込み接頭辞として働きます。
 1045: @findex fill-nonuniform-paragraphs
 1046: @c   @kbd{M-x fill-nonuniform-paragraphs} is a similar command that divides
 1047: @c the region into paragraphs in a different way.  It considers only
 1048: @c paragraph-separating lines (as defined by @code{paragraph-separate}) as
 1049: @c starting a new paragraph.  Since this means that the lines of one
 1050: @c paragraph may have different amounts of indentation, the fill prefix
 1051: @c used is the smallest amount of indentation of any of the lines of the
 1052: @c paragraph.  This gives good results with styles that indent a paragraph's
 1053: @c first line more or less that the rest of the paragraph.
 1054: @kbd{M-x fill-nonuniform-paragraphs}も同様なコマンドですが、
 1055: リージョンを段落に分割する方法が異なります。
 1056: このコマンドは、(変数@code{paragraph-separate}で定義される)
 1057: 段落区切り行だけを新たな段落の始まりとみなします。
 1058: つまり、各段落の行はさまざまに字下げされているかもしれないので、
 1059: その中の最少の字下げを詰め込み接頭辞として使用するわけです。
 1060: 段落の最初の行の字下げが残りの行に比べて多くても少なくても、
 1061: 正しい詰め込み結果を得られます。
 1063: @vindex fill-prefix
 1064: @c   The fill prefix is stored in the variable @code{fill-prefix}.  Its value
 1065: @c is a string, or @code{nil} when there is no fill prefix.  This is a
 1066: @c per-buffer variable; altering the variable affects only the current buffer,
 1067: @c but there is a default value which you can change as well.  @xref{Locals}.
 1068: 詰め込み接頭辞は変数@code{fill-prefix}に格納されます。
 1069: この値は文字列であるか、詰め込み接頭辞が設定されていなければ@code{nil}です。
 1070: この変数を変更してもカレントバッファだけに影響しますが、
 1071: デフォルト値を変更することもできます。
 1072: @xref{Locals}。
 1074: @c   The @code{indentation} text property provides another way to control
 1075: @c the amount of indentation paragraphs receive.  @xref{Format Indentation}.
 1076: テキスト属性@code{indentation}は、
 1077: 段落に与える字下げ幅を調整する別の方法です。
 1078: @xref{Format Indentation}。
 1080: @node Adaptive Fill,  , Fill Prefix, Filling
 1081: @c @subsection Adaptive Filling
 1082: @subsection 適応型詰め込み
 1084: @c @cindex adaptive filling
 1085: @cindex 適応型詰め込み
 1086: @c   The fill commands can deduce the proper fill prefix for a paragraph
 1087: @c automatically in certain cases: either whitespace or certain punctuation
 1088: @c characters at the beginning of a line are propagated to all lines of the
 1089: @c paragraph.
 1090: 詰め込みコマンド自身が、
 1091: 段落に対する適切な詰め込み接頭辞を推測できる状況もあります。
 1092: 段落のすべての行の先頭に白文字やある種の句読点文字が使われている場合です。
 1094: @c   If the paragraph has two or more lines, the fill prefix is taken from
 1095: @c the paragraph's second line, but only if it appears on the first line as
 1096: @c well.
 1097: 段落が2行以上から成る場合、
 1098: 段落の2行目から詰め込み接頭辞を切り出しますが、
 1099: 1行目にもそれが現れるときに限ります。
 1101: @c   If a paragraph has just one line, fill commands @emph{may} take a
 1102: @c prefix from that line.  The decision is complicated because there are
 1103: @c three reasonable things to do in such a case:
 1104: 段落が1行だけの場合には、その行から詰め込み接頭辞を切り出す
 1105: @emph{かもしれません}
 1106: @footnote{【訳注】段落に1行しかなければ、
 1107: 詰め込み接頭辞を切り出す必要はないと思うかもしれないが、
 1108: たとえば、その行が詰め込み桁より長かったり、
 1109: 新たな入力によって複数行の段落になったときのことを考えてみてほしい。}。
 1110: こういった状況では、つぎのような3つの合理的な挙動が考えられるので、
 1111: 接頭辞の決定は複雑です。
 1113: @itemize @bullet
 1114: @item
 1115: @c Use the first line's prefix on all the lines of the paragraph.
 1116: 最初の行の接頭辞を段落のすべての行に用いる。
 1118: @item
 1119: @c Indent subsequent lines with whitespace, so that they line up under the
 1120: @c text that follows the prefix on the first line, but don't actually copy
 1121: @c the prefix from the first line.
 1122: 1行目の接頭辞に続くテキストの直下に並ぶように
 1123: 後続の行を白文字で字下げするが、
 1124: 1行目から接頭辞をコピーしない。
 1126: @item
 1127: @c Don't do anything special with the second and following lines.
 1128: 2行目以降には何も特別なことは行わない。
 1129: @end itemize
 1131: @c   All three of these styles of formatting are commonly used.  So the
 1132: @c fill commands try to determine what you would like, based on the prefix
 1133: @c that appears and on the major mode.  Here is how.
 1134: これら3つの整形スタイルは、いずれも一般的に使用されます。
 1135: そこで、詰め込みコマンドは、現れた接頭辞とそのときのメジャーモードに基づいて、
 1136: ユーザーが望むスタイルを決定しようとします。
 1137: 判断基準はつぎのとおりです。
 1139: @vindex adaptive-fill-first-line-regexp
 1140: @c   If the prefix found on the first line matches
 1141: @c @code{adaptive-fill-first-line-regexp}, or if it appears to be a
 1142: @c comment-starting sequence (this depends on the major mode), then the
 1143: @c prefix found is used for filling the paragraph, provided it would not
 1144: @c act as a paragraph starter on subsequent lines.
 1145: 1行目でみつけた接頭辞が@code{adaptive-fill-first-line-regexp}に一致するか、
 1146: (メジャーモードに依存する)コメント開始文字列のようであれば、
 1147: みつけた接頭辞を段落の詰め込みに用います。
 1148: ただし、その接頭辞が後続の行に対して段落の始まりにならない場合に限ります。
 1150: @c   Otherwise, the prefix found is converted to an equivalent number of
 1151: @c spaces, and those spaces are used as the fill prefix for the rest of the
 1152: @c lines, provided they would not act as a paragraph starter on subsequent
 1153: @c lines.
 1154: さもなければ、みつけた接頭辞を相当分の空白に変換して、
 1155: それらの空白を段落の2行目以降の詰め込み接頭辞として使います。
 1156: ただし、それらの空白が後続の行に対して段落の始まりにならない場合に限ります。
 1158: @c   In Text mode, and other modes where only blank lines and page
 1159: @c delimiters separate paragraphs, the prefix chosen by adaptive filling
 1160: @c never acts as a paragraph starter, so it can always be used for filling.
 1161: テキスト(text)モード、および、
 1162: 空行やページ区切りだけが段落を区切るモードでは、
 1163: 適応型詰め込みによって選ばれた接頭辞が
 1164: 段落の始まりになることはけっしてありませんから、
 1165: その接頭辞を段落の詰め込みに使用することができます。
 1167: @vindex adaptive-fill-mode
 1168: @vindex adaptive-fill-regexp
 1169: @c   The variable @code{adaptive-fill-regexp} determines what kinds of line
 1170: @c beginnings can serve as a fill prefix: any characters at the start of
 1171: @c the line that match this regular expression are used.  If you set the
 1172: @c variable @code{adaptive-fill-mode} to @code{nil}, the fill prefix is
 1173: @c never chosen automatically.
 1174: 変数@code{adaptive-fill-regexp}で、
 1175: 行頭のどんな文字列を詰め込み接頭辞として使えるかを決定します。
 1176: この変数の正規表現に一致する行頭の文字列を接頭辞とします。
 1177: 変数@code{adaptive-fill-mode}に@code{nil}を設定すると、
 1178: 詰め込み接頭辞を自動的には切り出しません。
 1180: @vindex adaptive-fill-function
 1181: @c   You can specify more complex ways of choosing a fill prefix
 1182: @c automatically by setting the variable @code{adaptive-fill-function} to a
 1183: @c function.  This function is called with point after the left margin of a
 1184: @c line, and it should return the appropriate fill prefix based on that
 1185: @c line.  If it returns @code{nil}, that means it sees no fill prefix in
 1186: @c that line.
 1187: 変数@code{adaptive-fill-function}に関数を設定すると、
 1188: 詰め込み接頭辞を自動的に切り出すためのより複雑な方法を指定できます。
 1189: この関数は行の左端の直後にポイントを置いて呼び出されます。
 1190: その行から類推される適切な詰め込み接頭辞を返さなくてはいけません。
 1191: その行に詰め込み接頭辞がなさそうであれば@code{nil}を返します。
 1193: @node Case, Text Mode, Filling, Text
 1194: @c @section Case Conversion Commands
 1195: @section 大文字小文字変換コマンド
 1196: @c @cindex case conversion
 1197: @cindex 大文字小文字変換
 1199: @c   Emacs has commands for converting either a single word or any arbitrary
 1200: @c range of text to upper case or to lower case.
 1201: Emacsには、単語や任意の長さのテキストを
 1202: 大文字あるいは小文字に変換するコマンドがあります。
 1204: @c WideCommands
 1205: @table @kbd
 1206: @item M-l
 1207: @c Convert following word to lower case (@code{downcase-word}).
 1208: 後続の単語を小文字に変換する(@code{downcase-word})。
 1209: @item M-u
 1210: @c Convert following word to upper case (@code{upcase-word}).
 1211: 後続の単語を大文字に変換する(@code{upcase-word})。
 1212: @item M-c
 1213: @c Capitalize the following word (@code{capitalize-word}).
 1214: 後続の単語の1文字目だけを大文字にする(@code{capitalize-word})。
 1215: @item C-x C-l
 1216: @c Convert region to lower case (@code{downcase-region}).
 1217: リージョン内のテキストを小文字に変換する(@code{downcase-region})。
 1218: @item C-x C-u
 1219: @c Convert region to upper case (@code{upcase-region}).
 1220: リージョン内のテキストを大文字に変換する(@code{upcase-region})。
 1221: @end table
 1223: @kindex M-l
 1224: @kindex M-u
 1225: @kindex M-c
 1226: @c @cindex words, case conversion
 1227: @cindex 単語の大文字小文字変換
 1228: @cindex 大文字小文字変換、単語
 1229: @c @cindex converting text to upper or lower case
 1230: @cindex テキストの大文字/小文字への変換
 1231: @c @cindex capitalizing words
 1232: @cindex 単語の頭文字の大文字化
 1233: @findex downcase-word
 1234: @findex upcase-word
 1235: @findex capitalize-word
 1236: @c   The word conversion commands are the most useful.  @kbd{M-l}
 1237: @c (@code{downcase-word}) converts the word after point to lower case, moving
 1238: @c past it.  Thus, repeating @kbd{M-l} converts successive words.
 1239: @c @kbd{M-u} (@code{upcase-word}) converts to all capitals instead, while
 1240: @c @kbd{M-c} (@code{capitalize-word}) puts the first letter of the word
 1241: @c into upper case and the rest into lower case.  All these commands convert
 1242: @c several words at once if given an argument.  They are especially convenient
 1243: @c for converting a large amount of text from all upper case to mixed case,
 1244: @c because you can move through the text using @kbd{M-l}, @kbd{M-u} or
 1245: @c @kbd{M-c} on each word as appropriate, occasionally using @kbd{M-f} instead
 1246: @c to skip a word.
 1247: 単語変換コマンドはたいへん便利です。
 1248: @kbd{M-l}(@code{downcase-word})は
 1249: ポイントの直後の単語を小文字に変換し、
 1250: 単語の末尾にポイントを移動します。
 1251: したがって、@kbd{M-l}を繰り返すと、連続した単語を変換できます。
 1252: @kbd{M-u}(@code{upcase-word})は単語を大文字に変換し、
 1253: @kbd{M-c}(@code{capitalize-word})は単語の1文字目を
 1254: 大文字して残りを小文字に変換します。
 1255: これらのコマンドに引数を指定すると、一度に数単語を変換できます。
 1256: これらのコマンドは、大文字だけの大量のテキストを
 1257: 大文字小文字が混在するように変換するときに、特に威力を発揮します。
 1258: というのは、必要に応じて@kbd{M-l}、@kbd{M-u}、
 1259: @kbd{M-c}を使い分けて移動したり、@kbd{M-f}で変換せずに単語を
 1260: 飛び越えられるからです。
 1262: @c   When given a negative argument, the word case conversion commands apply
 1263: @c to the appropriate number of words before point, but do not move point.
 1264: @c This is convenient when you have just typed a word in the wrong case: you
 1265: @c can give the case conversion command and continue typing.
 1266: 負の引数を指定すると、ポイントの直前にある数個の単語を変換しますが、
 1267: ポイントは移動しません。
 1268: これは、大文字小文字をまちがえて単語を入力した直後には便利です。
 1269: 大文字小文字変換コマンドを打ってからすぐに入力を再開できます。
 1271: @c   If a word case conversion command is given in the middle of a word, it
 1272: @c applies only to the part of the word which follows point.  This is just
 1273: @c like what @kbd{M-d} (@code{kill-word}) does.  With a negative argument,
 1274: @c case conversion applies only to the part of the word before point.
 1275: 単語の途中で大文字小文字変換コマンドを実行すると、
 1276: ポイントのうしろにある部分だけを変換します。
 1277: これは@kbd{M-d}(@code{kill-word})のふるまいと同じです。
 1278: また、負の引数を指定すると、ポイントよりまえの部分を変換します。
 1280: @kindex C-x C-l
 1281: @kindex C-x C-u
 1282: @findex downcase-region
 1283: @findex upcase-region
 1284: @c   The other case conversion commands are @kbd{C-x C-u}
 1285: @c (@code{upcase-region}) and @kbd{C-x C-l} (@code{downcase-region}), which
 1286: @c convert everything between point and mark to the specified case.  Point and
 1287: @c mark do not move.
 1288: 他の大文字小文字変換コマンドは、
 1289: @kbd{C-x C-u}(@code{upcase-region})と
 1290: @kbd{C-x C-l}(@code{downcase-region})です。
 1291: これらは、リージョン内のテキストを指定どおりに変換します。
 1292: ポイントもマークも移動しません。
 1294: @c   The region case conversion commands @code{upcase-region} and
 1295: @c @code{downcase-region} are normally disabled.  This means that they ask
 1296: @c for confirmation if you try to use them.  When you confirm, you may
 1297: @c enable the command, which means it will not ask for confirmation again.
 1298: @c @xref{Disabling}.
 1299: リージョンに対する大文字小文字変換コマンドである
 1300: @code{upcase-region}と@code{downcase-region}は、
 1301: 通常、使用禁止になっています。
 1302: つまり、これらのコマンドを使おうとすると、最初に確認を求めてきます。
 1303: 確認するときにコマンドを使用可にしておけば、つぎからは確認を求めてきません。
 1304: @xref{Disabling}。
 1306: @node Text Mode, Outline Mode, Case, Text
 1307: @c @section Text Mode
 1308: @section テキストモード(textモード)
 1309: @c @cindex Text mode
 1310: @c @cindex mode, Text
 1311: @cindex テキストモード(Text mode)
 1312: @cindex textモード
 1313: @cindex モード、Text
 1314: @findex text-mode
 1316: @c   When you edit files of text in a human language, it's more convenient
 1317: @c to use Text mode rather than Fundamental mode.  To enter Text mode, type
 1318: @c @kbd{M-x text-mode}.
 1319: 自然言語テキストのファイルを編集するときには、
 1320: 基本(fundamental)モードではなく
 1321: テキスト(text)モードを使ったほうが便利です。
 1322: テキスト(text)モードに入るには@kbd{M-x text-mode}と打ちます。
 1324: @c   In Text mode, only blank lines and page delimiters separate
 1325: @c paragraphs.  As a result, paragraphs can be indented, and adaptive
 1326: @c filling determines what indentation to use when filling a paragraph.
 1327: @c @xref{Adaptive Fill}.
 1328: テキスト(text)モードでは、空行とページ区切りだけが段落の区切りです。
 1329: その結果、段落を字下げできて、
 1330: 適応型詰め込みでは段落の詰め込みに使用する字下げを決定できます。
 1331: @xref{Adaptive Fill}。
 1333: @c @kindex TAB @r{(Text mode)}
 1334: @kindex TAB @r{(テキストモード)}
 1335: @c   Text mode defines @key{TAB} to run @code{indent-relative}
 1336: @c (@pxref{Indentation}), so that you can conveniently indent a line like
 1337: @c the previous line.  When the previous line is not indented,
 1338: @c @code{indent-relative} runs @code{tab-to-tab-stop}, which uses Emacs tab
 1339: @c stops that you can set (@pxref{Tab Stops}).
 1340: テキスト(text)モードでは、@key{TAB}は
 1341: @code{indent-relative}(@pxref{Indentation})を実行するように
 1342: 定義してあるので、先行する行と同じように字下げするのに便利です。
 1343: 先行する行が字下げされてなければ、
 1344: @code{indent-relative}は@code{tab-to-tab-stop}を実行します。
 1345: これは、ユーザーが設定したEmacsのタブストップを使います(@pxref{Tab Stops})。
 1347: @c   Text mode turns off the features concerned with comments except when
 1348: @c you explicitly invoke them.  It changes the syntax table so that periods
 1349: @c are not considered part of a word, while apostrophes, backspaces and
 1350: @c underlines are considered part of words.
 1351: テキスト(text)モードでは、コメントに関する機能は、
 1352: 陽に起動した場合を除いてオフです。
 1353: ピリオドは単語の一部ではなく、一方、
 1354: アポストロフ、バックスペース、下線は単語の一部である、
 1355: となるように構文テーブルを変更します。
 1357: @c @cindex Paragraph-Indent Text mode
 1358: @c @cindex mode, Paragraph-Indent Text
 1359: @cindex 段落字下げ型テキストモード(Paragraph-Indent Text mode)
 1360: @cindex paragraph-indent-textモード
 1361: @cindex モード、Paragraph-Indent Text
 1362: @findex paragraph-indent-text-mode
 1363: @c   If you indent the first lines of paragraphs, then you should use
 1364: @c Paragraph-Indent Text mode rather than Text mode.  In this mode, you do
 1365: @c not need to have blank lines between paragraphs, because the first-line
 1366: @c indentation is sufficient to start a paragraph; however paragraphs in
 1367: @c which every line is indented are not supported.  Use @kbd{M-x
 1368: @c paragraph-indent-text-mode} to enter this mode.
 1369: 段落の最初の行を字下げするのであれば、テキスト(text)モードではなく
 1370: 段落字下げ型テキスト(paragraph-indent-text)モードを使うべきです。
 1371: このモードでは、段落のあいだに空行を設ける必要はありません。
 1372: というのは、最初の行の字下げで、段落の始まりがわかるからです。
 1373: ただし、すべての行が字下げされている段落は扱えません。
 1374: このモードに入るには、@kbd{M-x paragraph-indent-text-mode}を使います。
 1376: @c @kindex M-TAB @r{(Text mode)}
 1377: @kindex M-TAB @r{(テキストモード)}
 1378: @c   Text mode, and all the modes based on it, define @kbd{M-@key{TAB}} as
 1379: @c the command @code{ispell-complete-word}, which performs completion of
 1380: @c the partial word in the buffer before point, using the spelling
 1381: @c dictionary as the space of possible words.  @xref{Spelling}.
 1382: テキスト(text)モード、および、
 1383: テキスト(text)モードに基づくすべてのモードでは、
 1384: @kbd{M-@key{TAB}}をコマンド@code{ispell-complete-word}として定義します。
 1385: このコマンドは、ポイントの直前の部分的な単語を綴り辞書を用いて補完します。
 1386: @xref{Spelling}。
 1388: @vindex text-mode-hook
 1389: @c   Entering Text mode runs the hook @code{text-mode-hook}.  Other major
 1390: @c modes related to Text mode also run this hook, followed by hooks of
 1391: @c their own; this includes Paragraph-Indent Text mode, Nroff mode, @TeX{}
 1392: @c mode, Outline mode, and Mail mode.  Hook functions on
 1393: @c @code{text-mode-hook} can look at the value of @code{major-mode} to see
 1394: @c which of these modes is actually being entered.  @xref{Hooks}.
 1395: テキスト(text)モードに入ると、フック@code{text-mode-hook}を実行します。
 1396: テキスト(text)モードに関連する他のモードも、このフックに続けて
 1397: 各モード専用のフックを実行します。
 1398: つまり、段落字下げ型テキスト(paragraph-indent-text)モード、
 1399: nroffモード、@TeX{}モード、アウトライン(outline)モード、
 1400: メイル(mail)モードがそうです。
 1401: @code{text-mode-hook}に登録されたフック関数では、
 1402: @code{major-mode}の値を調べれば実際にどのモードに入ったかわかります。
 1403: @xref{Hooks}。
 1405: @ifinfo
 1406: @c   Emacs provides two other modes for editing text that is to be passed
 1407: @c through a text formatter to produce fancy formatted printed output.
 1408: @c @xref{Nroff Mode}, for editing input to the formatter nroff.
 1409: @c @xref{TeX Mode}, for editing input to the formatter TeX.
 1410: Emacsには、綺麗な印刷出力を得るためにテキスト清書系に渡すテキストを
 1411: 編集するためのモードが他に2つあります。
 1412: nroff入力の編集については、@xref{Nroff Mode}。
 1413: TeX入力の変数については、@xref{TeX Mode}。
 1415: @c   Another mode is used for editing outlines.  It allows you to view the
 1416: @c text at various levels of detail.  You can view either the outline
 1417: @c headings alone or both headings and text; you can also hide some of the
 1418: @c headings at lower levels from view to make the high level structure more
 1419: @c visible.  @xref{Outline Mode}.
 1420: 別のモードは、アウトラインの編集に使います。
 1421: このモードは、さまざまなレベルの詳しさでテキストを眺めることができます。
 1422: アウトラインの見出しだけを見たり、見出しとテキストを同時に見たりできます。
 1423: 低いレベルの見出しの一部を隠して、
 1424: より高いレベルの構造を際だたせることもできます。
 1425: @xref{Outline Mode}。
 1426: @end ifinfo
 1428: @node Outline Mode, TeX Mode, Text Mode, Text
 1429: @c @section Outline Mode
 1430: @section アウトラインモード(outlineモード)
 1431: @c @cindex Outline mode
 1432: @c @cindex mode, Outline
 1433: @c @cindex selective display
 1434: @c @cindex invisible lines
 1435: @cindex アウトラインモード(Outline mode)
 1436: @cindex outlineモード
 1437: @cindex モード、Outline
 1438: @cindex 選択的表示
 1439: @cindex 不可視行
 1441: @findex outline-mode
 1442: @findex outline-minor-mode
 1443: @vindex outline-minor-mode-prefix
 1444: @c   Outline mode is a major mode much like Text mode but intended for
 1445: @c editing outlines.  It allows you to make parts of the text temporarily
 1446: @c invisible so that you can see the outline structure.  Type @kbd{M-x
 1447: @c outline-mode} to switch to Outline mode as the major mode of the current
 1448: @c buffer.
 1449: アウトライン(outline)モードはテキスト(text)モードにたいへん
 1450: よく似たメジャーモードですが、アウトライン構造を持つテキストの編集用です。
 1451: アウトライン構造を把握できるようにテキストの一部を一時的に不可視にできます。
 1452: カレントバッファのメジャーモードをアウトライン(outline)モードに
 1453: 切り替えるには、@kbd{M-x outline-mode}と打ちます。
 1455: @c   When Outline mode makes a line invisible, the line does not appear on
 1456: @c the screen.  The screen appears exactly as if the invisible line were
 1457: @c deleted, except that an ellipsis (three periods in a row) appears at the
 1458: @c end of the previous visible line (only one ellipsis no matter how many
 1459: @c invisible lines follow).
 1460: アウトライン(outline)モードで行を不可視にすると、
 1461: その行は画面上に表示されません。
 1462: 画面上では、不可視にした行が削除されたかのように見えますが、
 1463: それに先行する可視な行の末尾に省略記号(ピリオドが3つ...)が表示されます
 1464: (何行不可視にしていても、省略記号は1つだけ)。
 1466: @c   Editing commands that operate on lines, such as @kbd{C-n} and
 1467: @c @kbd{C-p}, treat the text of the invisible line as part of the previous
 1468: @c visible line.  Killing an entire visible line, including its terminating
 1469: @c newline, really kills all the following invisible lines along with it.
 1470: @kbd{C-n}や@kbd{C-p}のような行を対象とした編集コマンドは、
 1471: 不可視にした行のテキストを、先行する可視な行の一部であるかのように扱います。
 1472: 改行も含めて可視な行全体をキルすると、後続の不可視な行も一緒にキルします。
 1474: @c   Outline minor mode provides the same commands as the major mode,
 1475: @c Outline mode, but you can use it in conjunction with other major modes.
 1476: @c Type @kbd{M-x outline-minor-mode} to enable the Outline minor mode in
 1477: @c the current buffer.  You can also specify this in the text of a file,
 1478: @c with a file local variable of the form @samp{mode: outline-minor}
 1479: @c (@pxref{File Variables}).
 1480: アウトラインマイナ(outline-minor)モードは、
 1481: メジャーモードであるアウトライン(outline)モードと
 1482: 同じコマンドを提供しますが、他のメジャーモードと一緒に使用できます。
 1483: カレントバッファでアウトラインマイナ(outline-minor)モードをオンにするには、
 1484: @kbd{M-x outline-minor-mode}と打ちます。
 1485: @samp{mode: outline-minor}といった形のファイルにローカルな変数で、
 1486: テキストファイルにアウトラインマイナ(outline-minor)モードを
 1487: 指定することもできます(@pxref{File Variables})。
 1489: @c @kindex C-c @@ @r{(Outline minor mode)}
 1490: @kindex C-c @@ @r{(アウトラインマイナモード)}
 1491: @c   The major mode, Outline mode, provides special key bindings on the
 1492: @c @kbd{C-c} prefix.  Outline minor mode provides similar bindings with
 1493: @c @kbd{C-c @@} as the prefix; this is to reduce the conflicts with the
 1494: @c major mode's special commands.  (The variable
 1495: @c @code{outline-minor-mode-prefix} controls the prefix used.)
 1496: メジャーモードであるアウトライン(outline)モードでは、
 1497: プレフィックス@kbd{C-c}に特別なキーバインディングを設定しています。
 1498: アウトラインマイナ(outline-minor)モードでは、
 1499: @kbd{C-c @@}をプレフィックスとして同様のバインディングがあります。
 1500: これは、一緒に用いるメジャーモードの特別なコマンドとの衝突を
 1501: 減らすための措置です。
 1502: (変数@code{outline-minor-mode-prefix}で、
 1503: 実際に使用するプレフィックスを制御する。)
 1505: @vindex outline-mode-hook
 1506: @c   Entering Outline mode runs the hook @code{text-mode-hook} followed by
 1507: @c the hook @code{outline-mode-hook} (@pxref{Hooks}).
 1508: アウトライン(outline)モードに入ると、
 1509: フック@code{text-mode-hook}に続けてフック@code{outline-mode-hook}を
 1510: 実行します(@pxref{Hooks})。
 1512: @menu
 1513: * Format: Outline Format.	   What the text of an outline looks like.
 1514: * Motion: Outline Motion.	   Special commands for moving through
 1515:                                      outlines. 
 1516: * Visibility: Outline Visibility.  Commands to control what is visible.
 1517: * Views: Outline Views.            Outlines and multiple views.
 1518: @end menu
 1520: @node Outline Format, Outline Motion, , Outline Mode
 1521: @c @subsection Format of Outlines
 1522: @subsection アウトラインの形式
 1524: @c @cindex heading lines (Outline mode)
 1525: @c @cindex body lines (Outline mode)
 1526: @cindex 見出し行(アウトラインモード)
 1527: @cindex 本体行(アウトラインモード)
 1528: @c   Outline mode assumes that the lines in the buffer are of two types:
 1529: @c @dfn{heading lines} and @dfn{body lines}.  A heading line represents a
 1530: @c topic in the outline.  Heading lines start with one or more stars; the
 1531: @c number of stars determines the depth of the heading in the outline
 1532: @c structure.  Thus, a heading line with one star is a major topic; all the
 1533: @c heading lines with two stars between it and the next one-star heading
 1534: @c are its subtopics; and so on.  Any line that is not a heading line is a
 1535: @c body line.  Body lines belong with the preceding heading line.  Here is
 1536: @c an example:
 1537: アウトライン(outline)モードは、
 1538: バッファの中には2種類の行、つまり、
 1539: @dfn{見出し行}(heading lines)、@dfn{本体行}(body lines)
 1540: があると仮定します。
 1541: 見出し行は、アウトラインのトピックを表していて、
 1542: 1つ以上の星印で始まります。
 1543: 星印の個数は、アウトライン構造における見出しの深さを表します。
 1544: つまり、星印1つの見出し行は主要なトピックを表します。
 1545: この行とつぎの星印1個の行のあいだにある星印2個の見出し行は、
 1546: この行の下位トピックです。
 1547: 星印がいくつであってもこのような関係が成り立ちます。
 1548: 見出し行以外は本体行です。
 1549: これらは直前の見出し行に属します。
 1550: 以下に例を示します。
 1552: @example
 1553: * Food
 1554: This is the body,
 1555: which says something about the topic of food.
 1557: ** Delicious Food
 1558: This is the body of the second-level header.
 1560: ** Distasteful Food
 1561: This could have
 1562: a body too, with
 1563: several lines.
 1565: *** Dormitory Food
 1567: * Shelter
 1568: Another first-level topic with its header line.
 1569: @end example
 1571: @c   A heading line together with all following body lines is called
 1572: @c collectively an @dfn{entry}.  A heading line together with all following
 1573: @c deeper heading lines and their body lines is called a @dfn{subtree}.
 1574: 見出し行とそれに続く本体行をまとめて@dfn{項目}(entry)と呼びます。
 1575: また、見出し行と、それに続くさらに深いレベルの見出し行とそれらの本体行を
 1576: まとめて@dfn{部分木}(subtree)と呼びます。
 1578: @vindex outline-regexp
 1579: @c   You can customize the criterion for distinguishing heading lines
 1580: @c by setting the variable @code{outline-regexp}.  Any line whose
 1581: @c beginning has a match for this regexp is considered a heading line.
 1582: @c Matches that start within a line (not at the left margin) do not count.
 1583: @c The length of the matching text determines the level of the heading;
 1584: @c longer matches make a more deeply nested level.  Thus, for example,
 1585: @c if a text formatter has commands @samp{@@chapter}, @samp{@@section}
 1586: @c and @samp{@@subsection} to divide the document into chapters and
 1587: @c sections, you could make those lines count as heading lines by
 1588: @c setting @code{outline-regexp} to @samp{"@@chap\\|@@\\(sub\\)*section"}.
 1589: @c Note the trick: the two words @samp{chapter} and @samp{section} are equally
 1590: @c long, but by defining the regexp to match only @samp{chap} we ensure
 1591: @c that the length of the text matched on a chapter heading is shorter,
 1592: @c so that Outline mode will know that sections are contained in chapters.
 1593: @c This works as long as no other command starts with @samp{@@chap}.
 1594: 変数@code{outline-regexp}に値を設定して、
 1595: 見出し行を判定する基準をカスタマイズできます。
 1596: この正規表現に行頭が一致する行を見出し行とみなします。
 1597: (左端からではなく)行の途中で一致するものは、無視します。
 1598: 一致したテキストの長さによって、見出しのレベルを決定します。
 1599: 一致したテキストが長いほどレベルが深くなります。
 1600: したがって、たとえば、清書系に章や節を分ける
 1601: @samp{@@chapter}、@samp{@@section}、@samp{@@subsection}といった
 1602: コマンドがある場合、これらの行を見出しとして扱えばよいのですが、それには
 1603: @code{outline-regexp}に@samp{"@@chap\\|@@\\(sub\\)*section"}と設定します。
 1604: これには、ちょっとしたトリックがあります。
 1605: 2つの単語、@samp{chapter}と@samp{section}は同じ長さですが、
 1606: 正規表現では、@samp{chap}だけに一致するように定義することで、
 1607: 章見出しに一致するテキストの長さのほうを短くできます。
 1608: これによって、アウトライン(outline)モードは、
 1609: 章(chapter)の中に節(section)が含まれるとわかるのです。
 1610: 他のコマンドが@samp{@@chap}で始まらない限り、この設定は有効です。
 1612: @vindex outline-level
 1613: @c   It is possible to change the rule for calculating the level of a
 1614: @c heading line by setting the variable @code{outline-level}.  The value of
 1615: @c @code{outline-level} should be a function that takes no arguments and
 1616: @c returns the level of the current heading.  Some major modes such as C,
 1617: @c Nroff, and Emacs Lisp mode set this variable in order to work with
 1618: @c Outline minor mode.
 1619: 変数@code{outline-level}を設定すると、見出し行のレベル計算方法を変更できます。
 1620: @code{outline-level}の値は、引数を取らない、
 1621: 現在の見出しのレベルを返す関数である必要があります。
 1622: Cモード、nroffモード、Emacs Lispモードといったメジャーモードのいくつかでは、
 1623: アウトラインマイナ(outline-minor)モードが有効に働くように、
 1624: この変数を設定します。
 1626: @node Outline Motion, Outline Visibility, Outline Format, Outline Mode
 1627: @c @subsection Outline Motion Commands
 1628: @subsection アウトライン上での移動コマンド
 1630: @c   Outline mode provides special motion commands that move backward and
 1631: @c forward to heading lines.
 1632: アウトライン(outline)モードには、
 1633: 前後の見出し行に移動する特別なコマンドがあります。
 1635: @table @kbd
 1636: @item C-c C-n
 1637: @c Move point to the next visible heading line
 1638: @c (@code{outline-next-visible-heading}).
 1639: つぎの可視な見出し行にポイントを移動する
 1640: (@code{outline-next-visible-heading})。
 1641: @item C-c C-p
 1642: @c Move point to the previous visible heading line
 1643: @c (@code{outline-previous-visible-heading}).
 1644: まえの可視な見出し行にポイントを移動する
 1645: (@code{outline-previous-visible-heading})。
 1646: @item C-c C-f
 1647: @c Move point to the next visible heading line at the same level
 1648: @c as the one point is on (@code{outline-forward-same-level}).
 1649: ポイント位置と同じレベルのつぎの可視な見出し行にポイントを移動する
 1650: (@code{outline-forward-same-level})。
 1651: @item C-c C-b
 1652: @c Move point to the previous visible heading line at the same level
 1653: @c (@code{outline-backward-same-level}).
 1654: ポイント位置と同じレベルのまえの可視な見出し行にポイントを移動する
 1655: (@code{outline-backward-same-level})。
 1656: @item C-c C-u
 1657: @c Move point up to a lower-level (more inclusive) visible heading line
 1658: @c (@code{outline-up-heading}).
 1659: より浅い(より多くの項目を含む)レベルで、
 1660: 可視な見出し行にポイントを移動する(@code{outline-up-heading})。
 1661: @end table
 1663: @findex outline-next-visible-heading
 1664: @findex outline-previous-visible-heading
 1665: @c @kindex C-c C-n @r{(Outline mode)}
 1666: @c @kindex C-c C-p @r{(Outline mode)}
 1667: @kindex C-c C-n @r{(アウトラインモード)}
 1668: @kindex C-c C-p @r{(アウトラインモード)}
 1669: @c   @kbd{C-c C-n} (@code{outline-next-visible-heading}) moves down to the next
 1670: @c heading line.  @kbd{C-c C-p} (@code{outline-previous-visible-heading}) moves
 1671: @c similarly backward.  Both accept numeric arguments as repeat counts.  The
 1672: @c names emphasize that invisible headings are skipped, but this is not really
 1673: @c a special feature.  All editing commands that look for lines ignore the
 1674: @c invisible lines automatically.@refill
 1675: @kbd{C-c C-n}(@code{outline-next-visible-heading})は、
 1676: つぎの見出し行にポイントを移動します。
 1677: @kbd{C-c C-p}(@code{outline-previous-visible-heading})も同様ですが、
 1678: 逆向きにポイントを移動します。
 1679: どちらのコマンドも、数引数を反復回数として受け取ります。
 1680: コマンドの名前は、不可視な見出し行を飛び越えることを強調していますが、
 1681: これは何も特別な機能ではありません。
 1682: 行を探すようなすべての編集コマンドは、不可視な行を自動的に無視します。
 1684: @findex outline-up-heading
 1685: @findex outline-forward-same-level
 1686: @findex outline-backward-same-level
 1687: @c @kindex C-c C-f @r{(Outline mode)}
 1688: @c @kindex C-c C-b @r{(Outline mode)}
 1689: @c @kindex C-c C-u @r{(Outline mode)}
 1690: @kindex C-c C-f @r{(アウトラインモード)}
 1691: @kindex C-c C-b @r{(アウトラインモード)}
 1692: @kindex C-c C-u @r{(アウトラインモード)}
 1693: @c   More powerful motion commands understand the level structure of headings.
 1694: @c @kbd{C-c C-f} (@code{outline-forward-same-level}) and
 1695: @c @kbd{C-c C-b} (@code{outline-backward-same-level}) move from one
 1696: @c heading line to another visible heading at the same depth in
 1697: @c the outline.  @kbd{C-c C-u} (@code{outline-up-heading}) moves
 1698: @c backward to another heading that is less deeply nested.
 1699: もっと強力な移動コマンドは、見出しのレベル構造を把握して移動を行うものです。
 1700: @kbd{C-c C-f}(@code{outline-forward-same-level})と
 1701: @kbd{C-c C-b}(@code{outline-backward-same-level})は、
 1702: アウトライン構造中で同じレベルにある別の見出し行にポイントを移動します。
 1703: @kbd{C-c C-u}(@code{outline-up-heading})は、
 1704: より浅いレベルの見出し行へ戻るようにポイントを移動します。
 1706: @node Outline Visibility, Outline Views, Outline Motion, Outline Mode
 1707: @c @subsection Outline Visibility Commands
 1708: @subsection アウトラインの可視/不可視制御コマンド
 1710: @c   The other special commands of outline mode are used to make lines visible
 1711: @c or invisible.  Their names all start with @code{hide} or @code{show}.
 1712: @c Most of them fall into pairs of opposites.  They are not undoable; instead,
 1713: @c you can undo right past them.  Making lines visible or invisible is simply
 1714: @c not recorded by the undo mechanism.
 1715: アウトライン(outline)モードの特別なコマンドとして、
 1716: 行を可視/不可視にするものもあります。
 1717: これらのコマンドの名前は、すべて@code{hide}あるいは@code{show}で始まります。
 1718: これらのほとんどは、逆の機能のコマンドと対になっています。
 1719: これらのコマンドはアンドゥ可能ではありませんが、
 1720: 実行直後ならば戻すことはできます。
 1721: 行を可視/不可視にするのは、アンドゥ機構に単純に記録するのではありません。
 1723: @table @kbd
 1724: @item C-c C-t
 1725: @c Make all body lines in the buffer invisible (@code{hide-body}).
 1726: バッファ中の本体行をすべて不可視にする(@code{hide-body})。
 1727: @item C-c C-a
 1728: @c Make all lines in the buffer visible (@code{show-all}).
 1729: バッファ中のすべての行を可視にする(@code{show-all})。
 1730: @item C-c C-d
 1731: @c Make everything under this heading invisible, not including this
 1732: @c heading itself (@code{hide-subtree}).
 1733: ポイント位置の見出し行を除いて、
 1734: その下位レベルのすべてを不可視にする(@code{hide-subtree})。
 1735: @item C-c C-s
 1736: @c Make everything under this heading visible, including body,
 1737: @c subheadings, and their bodies (@code{show-subtree}).
 1738: ポイント位置の見出し行、本体、下位の見出し/本体、
 1739: すべてを可視にする(@code{show-subtree})。
 1740: @item C-c C-l
 1741: @c Make the body of this heading line, and of all its subheadings,
 1742: @c invisible (@code{hide-leaves}).
 1743: ポイント位置の見出し行の本体と
 1744: 下位の見出し行のすべての本体を不可視にする
 1745: (@code{hide-leaves})。
 1746: @item C-c C-k
 1747: @c Make all subheadings of this heading line, at all levels, visible
 1748: @c (@code{show-branches}). 
 1749: ポイント位置の見出し行の下位の見出し行をすべて可視にする
 1750: (@code{show-branches})。
 1751: @item C-c C-i
 1752: @c Make immediate subheadings (one level down) of this heading line
 1753: @c visible (@code{show-children}).
 1754: ポイント位置の見出し行の直下(1レベル深い)の下位見出しを
 1755: 可視にする(@code{show-children})。
 1756: @item C-c C-c
 1757: @c Make this heading line's body invisible (@code{hide-entry}).
 1758: ポイント位置の見出し行の本体を不可視にする(@code{hide-entry})。
 1759: @item C-c C-e
 1760: @c Make this heading line's body visible (@code{show-entry}).
 1761: ポイント位置の見出し行の本体を可視にする(@code{show-entry})。
 1762: @item C-c C-q
 1763: @c Hide everything except the top @var{n} levels of heading lines
 1764: @c (@code{hide-sublevels}).
 1765: 最上位の@var{n}レベルまでを除き、すべてを不可視にする
 1766: (@code{hide-sublevels})。
 1767: @item C-c C-o
 1768: @c Hide everything except for the heading or body that point is in, plus
 1769: @c the headings leading up from there to the top level of the outline
 1770: @c (@code{hide-other}).
 1771: ポイント位置の見出し行や本体、および、
 1772: そこから最上位レベルに至るまでに通過する見出し行を除き、
 1773: すべて不可視にする(@code{hide-other})。
 1774: @end table
 1776: @findex hide-entry
 1777: @findex show-entry
 1778: @c @kindex C-c C-c @r{(Outline mode)}
 1779: @c @kindex C-c C-e @r{(Outline mode)}
 1780: @kindex C-c C-c @r{(アウトラインモード)}
 1781: @kindex C-c C-e @r{(アウトラインモード)}
 1782: @c   Two commands that are exact opposites are @kbd{C-c C-c}
 1783: @c (@code{hide-entry}) and @kbd{C-c C-e} (@code{show-entry}).  They are
 1784: @c used with point on a heading line, and apply only to the body lines of
 1785: @c that heading.  Subheadings and their bodies are not affected.
 1786: @kbd{C-c C-c}(@code{hide-entry})と
 1787: @kbd{C-c C-e}(@code{show-entry})の2つのコマンドは、
 1788: 正反対の機能を持っています。
 1789: これらは、見出し行にポイントがある場合
 1790: @footnote{【訳注】ポイントが本体行にあっても動作する。}
 1791: に、その本体のみに作用します。
 1792: 下位見出しとその本体は影響を受けません。
 1794: @findex hide-subtree
 1795: @findex show-subtree
 1796: @c @kindex C-c C-s @r{(Outline mode)}
 1797: @c @kindex C-c C-d @r{(Outline mode)}
 1798: @kindex C-c C-s @r{(アウトラインモード)}
 1799: @kindex C-c C-d @r{(アウトラインモード)}
 1800: @c @cindex subtree (Outline mode)
 1801: @cindex 部分木(アウトラインモード)
 1802: @c   Two more powerful opposites are @kbd{C-c C-d} (@code{hide-subtree}) and
 1803: @c @kbd{C-c C-s} (@code{show-subtree}).  Both expect to be used when point is
 1804: @c on a heading line, and both apply to all the lines of that heading's
 1805: @c @dfn{subtree}: its body, all its subheadings, both direct and indirect, and
 1806: @c all of their bodies.  In other words, the subtree contains everything
 1807: @c following this heading line, up to and not including the next heading of
 1808: @c the same or higher rank.@refill
 1809: もっと強力で機能が正反対のコマンドは、
 1810: @kbd{C-c C-d}(@code{hide-subtree})と
 1811: @kbd{C-c C-s}(@code{show-subtree})です。
 1812: どちらも見出し行にポイントがあるとき
 1813: @footnote{【訳注】ポイントが本体行にあっても動作し、結果も同じ。}
 1814: に使い、
 1815: 見出しの@dfn{部分木}内のすべての行
 1816: つまり、本体、直接/間接に関わらずあらゆる下位の見出しとその本体、
 1817: に作用します。
 1818: つまり、部分木には、その見出し行に続く
 1819: つぎの同レベルか上位レベルの見出し行の直前までが含まれます。
 1821: @findex hide-leaves
 1822: @findex show-branches
 1823: @c @kindex C-c C-l @r{(Outline mode)}
 1824: @c @kindex C-c C-k @r{(Outline mode)}
 1825: @kindex C-c C-l @r{(アウトラインモード)}
 1826: @kindex C-c C-k @r{(アウトラインモード)}
 1827: @c   Intermediate between a visible subtree and an invisible one is having
 1828: @c all the subheadings visible but none of the body.  There are two
 1829: @c commands for doing this, depending on whether you want to hide the
 1830: @c bodies or make the subheadings visible.  They are @kbd{C-c C-l}
 1831: @c (@code{hide-leaves}) and @kbd{C-c C-k} (@code{show-branches}).
 1832: 可視な部分木と、すべて不可視な部分木の中間的な状態には、
 1833: 本体は不可視で下位の見出し行はすべて可視といったものも存在します。
 1834: この状態を作り出すコマンドは2つあり、
 1835: 本体を不可視にするか、下位見出しを可視にするかです。
 1836: これらは、@kbd{C-c C-l}(@code{hide-leaves})と
 1837: @kbd{C-c C-k}(@code{show-branches})です。
 1839: @c @kindex C-c C-i @r{(Outline mode)}
 1840: @kindex C-c C-i @r{(アウトラインモード)}
 1841: @findex show-children
 1842: @c   A little weaker than @code{show-branches} is @kbd{C-c C-i}
 1843: @c (@code{show-children}).  It makes just the direct subheadings
 1844: @c visible---those one level down.  Deeper subheadings remain invisible, if
 1845: @c they were invisible.@refill
 1846: @kbd{C-c C-i}(@code{show-children})は、
 1847: @code{show-branches}より少し弱いコマンドです。
 1848: これは、直下の、つまり1レベル深い見出し行だけを可視にします。
 1849: より深いレベルの見出しは不可視ならば不可視のままです。
 1851: @findex hide-body
 1852: @findex show-all
 1853: @c @kindex C-c C-t @r{(Outline mode)}
 1854: @c @kindex C-c C-a @r{(Outline mode)}
 1855: @kindex C-c C-t @r{(アウトラインモード)}
 1856: @kindex C-c C-a @r{(アウトラインモード)}
 1857: @c   Two commands have a blanket effect on the whole file.  @kbd{C-c C-t}
 1858: @c (@code{hide-body}) makes all body lines invisible, so that you see just
 1859: @c the outline structure.  @kbd{C-c C-a} (@code{show-all}) makes all lines
 1860: @c visible.  These commands can be thought of as a pair of opposites even
 1861: @c though @kbd{C-c C-a} applies to more than just body lines.
 1862: ファイル全体に効果がおよぶ2つのコマンドがあります。
 1863: @kbd{C-c C-t}(@code{hide-entry})は本体行をすべて不可視にするので、
 1864: アウトライン構造だけを眺めることができます。
 1865: @kbd{C-c C-a}(@code{show-all})は、すべての行を可視にします。
 1866: @kbd{C-c C-a}は本体行以外にも作用しますが、
 1867: これらのコマンドは正反対の機能の対と考えることができます。
 1869: @findex hide-sublevels
 1870: @c @kindex C-c C-q @r{(Outline mode)}
 1871: @kindex C-c C-q @r{(アウトラインモード)}
 1872: @c   The command @kbd{C-c C-q} (@code{hide-sublevels}) hides all but the
 1873: @c top level headings.  With a numeric argument @var{n}, it hides everything
 1874: @c except the top @var{n} levels of heading lines.
 1875: コマンド@kbd{C-c C-q}(@code{hide-sublevels})は、
 1876: 最上位レベルの見出し以外をすべて不可視にします。
 1877: 数引数@var{n}を指定すると、最上位から@var{n}レベルまでの見出し行を除いた
 1878: すべてを不可視にします。
 1880: @findex hide-other
 1881: @c @kindex C-c C-o @r{(Outline mode)}
 1882: @kindex C-c C-o @r{(アウトラインモード)}
 1883: @c   The command @kbd{C-c C-o} (@code{hide-other}) hides everything except
 1884: @c the heading or body text that point is in, plus its parents (the headers
 1885: @c leading up from there to top level in the outline).
 1886: コマンド@kbd{C-c C-o}(@code{hide-other})は、
 1887: ポイント位置の見出しあるいは本体、その親(
 1888: アウトライン構造においてポイント位置から最上位レベルまで至る見出し)を
 1889: 除いたすべてを不可視にします。
 1891: @c   You can turn off the use of ellipses at the ends of visible lines by
 1892: @c setting @code{selective-display-ellipses} to @code{nil}.  Then there is
 1893: @c no visible indication of the presence of invisible lines.
 1894: 変数@code{selective-display-ellipses}に@code{nil}を設定すると、
 1895: 可視な行の末尾に現れる省略記号を消せます。
 1896: そうすると、不可視な行の存在を示すものは何もなくなります。
 1898: @c   When incremental search finds text that is hidden by Outline mode,
 1899: @c it makes that part of the buffer visible.  If you exit the search
 1900: @c at that position, the text remains visible.
 1901: インクリメンタルサーチでアウトライン(outline)モードが
 1902: 不可視にしているテキストを探しだすと、バッファのその部分は可視になります。
 1903: その箇所で探索から抜けると、テキストは可視のまま
 1904: @footnote{【訳注】抜けると、また不可視にもどってしまう。
 1905: }になります。
 1907: @node Outline Views,  , Outline Visibility, Outline Mode
 1908: @c @subsection Viewing One Outline in Multiple Views
 1909: @subsection 複数の視点からアウトラインを眺める
 1911: @c @cindex multiple views of outline
 1912: @c @cindex views of an outline
 1913: @c @cindex outline with multiple views
 1914: @c @cindex indirect buffers and outlines
 1915: @cindex アウトラインに対する複数の視点
 1916: @cindex アウトラインの視点
 1917: @cindex 複数の視点を持つアウトライン
 1918: @cindex 間接バッファとアウトライン
 1919: @c   You can display two views of a single outline at the same time, in
 1920: @c different windows.  To do this, you must create an indirect buffer using
 1921: @c @kbd{M-x make-indirect-buffer}.  The first argument of this command is
 1922: @c the existing outline buffer name, and its second argument is the name to
 1923: @c use for the new indirect buffer.  @xref{Indirect Buffers}.
 1924: 1つのアウトライン構造を同時に2つの視点から別々のウィンドウに表示して
 1925: 眺めることができます。
 1926: それには、@kbd{M-x make-indirect-buffer}を使って
 1927: 間接バッファを作成する必要があります。
 1928: このコマンドの最初の引数は、既存のアウトライン用バッファの名前で、
 1929: 2番目の引数は新たに作成する間接バッファの名前です。
 1930: @xref{Indirect Buffers}。
 1932: @c   Once the indirect buffer exists, you can display it in a window in the
 1933: @c normal fashion, with @kbd{C-x 4 b} or other Emacs commands.  The Outline
 1934: @c mode commands to show and hide parts of the text operate on each buffer
 1935: @c independently; as a result, each buffer can have its own view.  If you
 1936: @c want more than two views on the same outline, create additional indirect
 1937: @c buffers.
 1938: 間接バッファがあるならば、@kbd{C-x 4 b}や他のEmacsコマンドで普通に
 1939: そのバッファをウィンドウに表示できます。
 1940: テキストの一部を可視/不可視にするアウトライン(outline)モードのコマンドは、
 1941: 各バッファで独立に働きます。
 1942: その結果、各バッファごとに独自の視点を持たせることが可能です。
 1943: 同じアウトラインに対して3つ以上の視点が必要ならば、
 1944: 間接バッファをさらに作成してください。
 1946: @node TeX Mode, Nroff Mode, Outline Mode, Text
 1947: @c @section @TeX{} Mode
 1948: @section @TeX{}モード
 1949: @c @cindex @TeX{} mode
 1950: @c @cindex La@TeX{} mode
 1951: @c @cindex Sli@TeX{} mode
 1952: @c @cindex mode, @TeX{}
 1953: @c @cindex mode, La@TeX{}
 1954: @c @cindex mode, Sli@TeX{}
 1955: @cindex @TeX{}モード
 1956: @cindex La@TeX{}モード
 1957: @cindex Sli@TeX{}モード
 1958: @cindex モード、@TeX{}
 1959: @cindex モード、La@TeX{}
 1960: @cindex モード、Sli@TeX{}
 1961: @findex tex-mode
 1962: @findex plain-tex-mode
 1963: @findex latex-mode
 1964: @findex slitex-mode
 1966: @c   @TeX{} is a powerful text formatter written by Donald Knuth; it is also
 1967: @c free, like GNU Emacs.  La@TeX{} is a simplified input format for @TeX{},
 1968: @c implemented by @TeX{} macros; it comes with @TeX{}.  Sli@TeX{} is a special
 1969: @c form of La@TeX{}.@refill
 1970: @TeX{}は、Donald Knuthが作成した強力な清書系です。
 1971: しかも、GNU Emacsと同じくフリーです。
 1972: La@TeX{}は、@TeX{}の入力形式を単純化したもので、
 1973: @TeX{}のマクロで実現されています。
 1974: これも@TeX{}に付属しています。
 1975: Sli@TeX{}はスライドを作成するためにLa@TeX{}を特殊化したものです。
 1977: @c   Emacs has a special @TeX{} mode for editing @TeX{} input files.
 1978: @c It provides facilities for checking the balance of delimiters and for
 1979: @c invoking @TeX{} on all or part of the file.
 1980: Emacsには、@TeX{}の入力ファイルを編集するための特別な@TeX{}モードがあります。
 1981: このモードには、区切りの対応を検査したり、
 1982: ファイル全体やその一部に対して@TeX{}を起動したりする機能があります。
 1984: @vindex tex-default-mode
 1985: @c   @TeX{} mode has three variants, Plain @TeX{} mode, La@TeX{} mode, and
 1986: @c Sli@TeX{} mode (these three distinct major modes differ only slightly).
 1987: @c They are designed for editing the three different formats.  The command
 1988: @c @kbd{M-x tex-mode} looks at the contents of the buffer to determine
 1989: @c whether the contents appear to be either La@TeX{} input or Sli@TeX{}
 1990: @c input; if so, it selects the appropriate mode.  If the file contents do
 1991: @c not appear to be La@TeX{} or Sli@TeX{}, it selects Plain @TeX{} mode.
 1992: @c If the contents are insufficient to determine this, the variable
 1993: @c @code{tex-default-mode} controls which mode is used.
 1994: @TeX{}モードには3つの変種があります。
 1995: それぞれ、プレイン@TeX{}(plain-tex)モード、
 1996: La@TeX{}(latex)モード、Sli@TeX{}(slitex)モードです
 1997: (これら3つはメジャーモードですが、差異はわずか)。
 1998: これらのモードは、異なる3つの入力形式を編集するように設計されています。
 1999: コマンド@kbd{M-x tex-mode}は、バッファ内の内容を調べて、
 2000: La@TeX{}の入力なのかSli@TeX{}の入力なのか判断します。
 2001: そのいずれかであれば、それに適したモードを選択します。
 2002: ファイルの中身がLa@TeX{}でもSli@TeX{}でもなさそうであれば、
 2003: プレイン@TeX{}(plain-tex)モードを選択します。
 2004: ファイルの内容が判断するに十分でなければ、
 2005: 変数@code{tex-default-mode}で使用するモードを制御します。
 2007: @c   When @kbd{M-x tex-mode} does not guess right, you can use the commands
 2008: @c @kbd{M-x plain-tex-mode}, @kbd{M-x latex-mode}, and @kbd{M-x
 2009: @c slitex-mode} to select explicitly the particular variants of @TeX{}
 2010: @c mode.
 2011: @kbd{M-x tex-mode}が適切なモードを推測できなかった場合には、
 2012: コマンド@kbd{M-x plain-tex-mode}、@kbd{M-x latex-mode}、
 2013: @kbd{M-x slitex-mode}で明示的に@TeX{}の変種を選択できます。
 2015: @menu
 2016: * Editing: TeX Editing.   Special commands for editing in TeX mode.
 2017: * LaTeX: LaTeX Editing.   Additional commands for LaTeX input files.
 2018: * Printing: TeX Print.    Commands for printing part of a file with TeX.
 2019: @end menu
 2021: @node TeX Editing, LaTeX Editing, , TeX Mode
 2022: @c @subsection @TeX{} Editing Commands
 2023: @subsection @TeX{}編集コマンド
 2025: @c   Here are the special commands provided in @TeX{} mode for editing the
 2026: @c text of the file.
 2027: ここでは、@TeX{}の入力ファイルのテキストを編集するために
 2028: @TeX{}モードに用意してある特別なコマンドについて述べます。
 2030: @table @kbd
 2031: @item "
 2032: @c Insert, according to context, either @samp{``} or @samp{"} or
 2033: @c @samp{''} (@code{tex-insert-quote}).
 2034: 文脈に応じて@samp{``}、@samp{"}、@samp{''}を挿入する
 2035: (@code{tex-insert-quote})。
 2036: @item C-j
 2037: @c Insert a paragraph break (two newlines) and check the previous
 2038: @c paragraph for unbalanced braces or dollar signs
 2039: @c (@code{tex-terminate-paragraph}).
 2040: 段落区切り(空行を2つ)を挿入し、
 2041: まえの段落の中括弧やドル記号の対応を検査する
 2042: (@code{tex-terminate-paragraph})。
 2043: @item M-x tex-validate-region
 2044: @c Check each paragraph in the region for unbalanced braces or dollar signs.
 2045: リージョン内の各段落に対して、
 2046: 中括弧やドル記号の対応を検査する。
 2047: @item C-c @{
 2048: @c Insert @samp{@{@}} and position point between them (@code{tex-insert-braces}).
 2049: @samp{@{@}}を挿入して、そのあいだにポイントを移動する
 2050: (@code{tex-insert-braces})。
 2051: @item C-c @}
 2052: @c Move forward past the next unmatched close brace (@code{up-list}).
 2053: 対応が取れていないつぎの閉じ中括弧のあとに
 2054: 前向きにポイントを移動する(@code{up-list})。
 2055: @end table
 2057: @findex tex-insert-quote
 2058: @c @kindex " @r{(@TeX{} mode)}
 2059: @kindex " @r{(@TeX{}モード)}
 2060: @c   In @TeX{}, the character @samp{"} is not normally used; we use
 2061: @c @samp{``} to start a quotation and @samp{''} to end one.  To make
 2062: @c editing easier under this formatting convention, @TeX{} mode overrides
 2063: @c the normal meaning of the key @kbd{"} with a command that inserts a pair
 2064: @c of single-quotes or backquotes (@code{tex-insert-quote}).  To be
 2065: @c precise, this command inserts @samp{``} after whitespace or an open
 2066: @c brace, @samp{"} after a backslash, and @samp{''} after any other
 2067: @c character.
 2068: @TeX{}では、文字@samp{"}はまず使いません。
 2069: 引用を始めるには@samp{``}を、終るには@samp{''}を使います。
 2070: こういったテキスト整形上の規則の下で編集作業を楽にするために、
 2071: @TeX{}モードでは@samp{`}と@samp{'}を対で挿入する
 2072: (@code{tex-insert-quote})ようにキー@kbd{"}の意味を変えています。
 2073: より正確にいえば、このコマンドは白文字や開き中括弧のあとでは@samp{``}を、
 2074: バックスラッシュのあとでは@samp{"}を、
 2075: これ以外の文字のあとでは@samp{''}を挿入します。
 2077: @c   If you need the character @samp{"} itself in unusual contexts, use
 2078: @c @kbd{C-q} to insert it.  Also, @kbd{"} with a numeric argument always
 2079: @c inserts that number of @samp{"} characters.  You can turn off the
 2080: @c feature of @kbd{"} expansion by eliminating that binding in the local
 2081: @c map (@pxref{Key Bindings}).
 2082: 特別な文脈で@samp{"}文字が必要であれば、@kbd{C-q}を使って挿入します。
 2083: また、@samp{"}に数引数を指定すると、その個数分の@samp{"}を入力します。
 2084: ローカルマップからバインディング(@pxref{Key Bindings})を取り除けば、
 2085: @samp{"}を展開する機能をオフにできます。
 2087: @c   In @TeX{} mode, @samp{$} has a special syntax code which attempts to
 2088: @c understand the way @TeX{} math mode delimiters match.  When you insert a
 2089: @c @samp{$} that is meant to exit math mode, the position of the matching
 2090: @c @samp{$} that entered math mode is displayed for a second.  This is the
 2091: @c same feature that displays the open brace that matches a close brace that
 2092: @c is inserted.  However, there is no way to tell whether a @samp{$} enters
 2093: @c math mode or leaves it; so when you insert a @samp{$} that enters math
 2094: @c mode, the previous @samp{$} position is shown as if it were a match, even
 2095: @c though they are actually unrelated.
 2096: @TeX{}モードでは、@samp{$}には@TeX{}の数式モードの区切りの対応を確認する
 2097: ための特別な構文コードが設定されています。
 2098: 数式モード終了を意味する@samp{$}を挿入すると、
 2099: それに対応した数式モード開始の@samp{$}を1秒間ほど表示します。
 2100: これは、閉じ中括弧を挿入すると、
 2101: それに対応する開き中括弧を表示する機能と同じです。
 2102: しかし、@samp{$}が数式モードを開始するものか終了するものかを
 2103: 知る方法がありません。
 2104: したがって、数式モード開始の@samp{$}を挿入しても、
 2105: たとえ実際には無関係であっても、
 2106: まえにある@samp{$}が対応しているかのように表示されてしまいます。
 2108: @findex tex-insert-braces
 2109: @c @kindex C-c @{ @r{(@TeX{} mode)}
 2110: @kindex C-c @{ @r{(@TeX{}モード)}
 2111: @findex up-list
 2112: @c @kindex C-c @} @r{(@TeX{} mode)}
 2113: @kindex C-c @} @r{(@TeX{}モード)}
 2114: @c   @TeX{} uses braces as delimiters that must match.  Some users prefer
 2115: @c to keep braces balanced at all times, rather than inserting them
 2116: @c singly.  Use @kbd{C-c @{} (@code{tex-insert-braces}) to insert a pair of
 2117: @c braces.  It leaves point between the two braces so you can insert the
 2118: @c text that belongs inside.  Afterward, use the command @kbd{C-c @}}
 2119: @c (@code{up-list}) to move forward past the close brace.
 2120: @TeX{}は、中括弧を必ず対応が取れている区切りとして使います。
 2121: ユーザーの中には、中括弧を別々に入力するよりも、
 2122: つねに対応が取れている中括弧の入力を好む人もいます。
 2123: @kbd{C-c @{}(@code{tex-insert-braces})と打てば中括弧の対を挿入できます。
 2124: さらに、ポイントがそれらのあいだに置かれるので、
 2125: 中括弧の内側にテキストを挿入できます。
 2126: そのあとに、コマンド@kbd{C-c @}}(@code{up-list})を使って、
 2127: 閉じ中括弧のうしろに移動します。
 2129: @findex tex-validate-region
 2130: @findex tex-terminate-paragraph
 2131: @c @kindex C-j @r{(@TeX{} mode)}
 2132: @kindex C-j @r{(@TeX{}モード)}
 2133: @c   There are two commands for checking the matching of braces.  @kbd{C-j}
 2134: @c (@code{tex-terminate-paragraph}) checks the paragraph before point, and
 2135: @c inserts two newlines to start a new paragraph.  It prints a message in
 2136: @c the echo area if any mismatch is found.  @kbd{M-x tex-validate-region}
 2137: @c checks a region, paragraph by paragraph.  The errors are listed in the
 2138: @c @samp{*Occur*} buffer, and you can use @kbd{C-c C-c} or @kbd{Mouse-2} in
 2139: @c that buffer to go to a particular mismatch.
 2140: 中括弧の対応を調べるコマンドは2つあります。
 2141: @kbd{C-j}(@code{tex-terminate-paragraph})は、
 2142: ポイントの直前の段落を検査してから、新たな段落を始める空行を2つ挿入します。
 2143: 対応していない中括弧があれば、エコー領域にメッセージを表示します。
 2144: @kbd{M-x tex-validate-region}は、リージョンの段落を1つ1つ検査します。
 2145: エラーはバッファ@samp{*Occur*}に表示されます。
 2146: このバッファで@kbd{C-c C-c}や@kbd{Mouse-2}を使えば、
 2147: 特定の非対応箇所へ移動できます。
 2149: @c   Note that Emacs commands count square brackets and parentheses in
 2150: @c @TeX{} mode, not just braces.  This is not strictly correct for the
 2151: @c purpose of checking @TeX{} syntax.  However, parentheses and square
 2152: @c brackets are likely to be used in text as matching delimiters and it is
 2153: @c useful for the various motion commands and automatic match display to
 2154: @c work with them.
 2155: @TeX{}モードでは、Emacsコマンドは中括弧だけでなく、
 2156: 括弧(@samp{()})や角括弧(@samp{[]})も数えています。
 2157: これは、@TeX{}の構文を検査する目的からいえば、厳密には正しくありません。
 2158: しかし、括弧や角括弧はテキスト内で対応する区切りとしてよく使われますし、
 2159: 各種の移動コマンドや対応関係を自動表示するコマンドが
 2160: それらを扱えると便利です。
 2162: @node LaTeX Editing, TeX Print, TeX Editing, TeX Mode
 2163: @c @subsection La@TeX{} Editing Commands
 2164: @subsection La@TeX{}編集コマンド
 2166: @c   La@TeX{} mode, and its variant, Sli@TeX{} mode, provide a few extra
 2167: @c features not applicable to plain @TeX{}.
 2168: La@TeX{}モードと、その変種のSli@TeX{} モードには、
 2169: プレイン@TeX{}(plain-tex)では利用できない特別な機能がいくつかあります。
 2171: @table @kbd
 2172: @item C-c C-o
 2173: @c Insert @samp{\begin} and @samp{\end} for La@TeX{} block and position
 2174: @c point on a line between them (@code{tex-latex-block}).
 2175: La@TeX{}のブロックを表す@samp{\begin}と@samp{\end}を挿入し、
 2176: それらのあいだにポイントを置く(@code{tex-latex-block})。
 2177: @item C-c C-e
 2178: @c Close the innermost La@TeX{} block not yet closed
 2179: @c (@code{tex-close-latex-block}).
 2180: まだ閉じていないもっとも内側のLa@TeX{}のブロックを閉じる
 2181: (@code{tex-close-latex-block})。
 2182: @end table
 2184: @findex tex-latex-block
 2185: @c @kindex C-c C-o @r{(La@TeX{} mode)}
 2186: @kindex C-c C-o @r{(La@TeX{}モード)}
 2187: @vindex latex-block-names
 2188: @c   In La@TeX{} input, @samp{\begin} and @samp{\end} commands are used to
 2189: @c group blocks of text.  To insert a @samp{\begin} and a matching
 2190: @c @samp{\end} (on a new line following the @samp{\begin}), use @kbd{C-c
 2191: @c C-o} (@code{tex-latex-block}).  A blank line is inserted between the
 2192: @c two, and point is left there.  You can use completion when you enter the
 2193: @c block type; to specify additional block type names beyond the standard
 2194: @c list, set the variable @code{latex-block-names}.  For example, here's
 2195: @c how to add @samp{theorem}, @samp{corollary}, and @samp{proof}:
 2196: La@TeX{}の入力では、@samp{\begin}と@samp{\end}がテキストのブロックを
 2197: グループ化するために使われます。
 2198: @samp{\begin}と対応する@samp{\end}を(@samp{\begin}のつぎの新しい行に)
 2199: 挿入するには、@kbd{C-c C-o}(@code{tex-latex-block})を使います。
 2200: それらのあいだには空行が挿入されてポイントもそこに置かれます。
 2201: ブロックの種類を入力するときには、補完を使えます。
 2202: 標準のリストに含まれないブロック名を使う場合には、
 2203: 変数@code{latex-block-names}に設定します。
 2204: つぎの例は、@samp{theorem}、@samp{corollary}、@samp{proof}を追加するものです。
 2206: @example
 2207: (setq latex-block-names '("theorem" "corollary" "proof"))
 2208: @end example
 2210: @findex tex-close-latex-block
 2211: @c @kindex C-c C-e @r{(La@TeX{} mode)}
 2212: @kindex C-c C-e @r{(La@TeX{}モード)}
 2213: @c   In La@TeX{} input, @samp{\begin} and @samp{\end} commands must
 2214: @c balance.  You can use @kbd{C-c C-e} (@code{tex-close-latex-block}) to
 2215: @c insert automatically a matching @samp{\end} to match the last unmatched
 2216: @c @samp{\begin}.  It indents the @samp{\end} to match the corresponding
 2217: @c @samp{\begin}.  It inserts a newline after @samp{\end} if point is at
 2218: @c the beginning of a line.
 2219: La@TeX{}の入力では、
 2220: @samp{\begin}と@samp{\end}は対応が取れている必要があります。
 2221: @kbd{C-c C-e}(@code{tex-close-latex-block})を使うと、
 2222: 対応が取れていない最後の@samp{\begin}に対応する@samp{\end}を
 2223: 自動的に挿入できます。
 2224: また、対応する@samp{\begin}と同じ字下げを@samp{\end}にも施します。
 2225: ポイントが行頭にあったときには、@samp{\end}のうしろで改行します。
 2227: @node TeX Print,  , LaTeX Editing, TeX Mode
 2228: @c @subsection @TeX{} Printing Commands
 2229: @subsection @TeX{}印刷コマンド
 2231: @c   You can invoke @TeX{} as an inferior of Emacs on either the entire
 2232: @c contents of the buffer or just a region at a time.  Running @TeX{} in
 2233: @c this way on just one chapter is a good way to see what your changes
 2234: @c look like without taking the time to format the entire file.
 2235: バッファ全体あるいは一部のテキストに対して、
 2236: Emacsの下位プロセスとして@TeX{}を起動できます。
 2237: 特定の章だけに対してこのように@TeX{}を実行するのは、
 2238: ファイル全体の清書に時間を費すことなく、
 2239: 変更部分の見え方を確認するよい方法です。
 2241: @table @kbd
 2242: @item C-c C-r
 2243: @c Invoke @TeX{} on the current region, together with the buffer's header
 2244: @c (@code{tex-region}).
 2245: バッファのヘッダとともに、
 2246: カレントリージョンに対して@TeX{}を起動する(@code{tex-region})。
 2247: @item C-c C-b
 2248: @c Invoke @TeX{} on the entire current buffer (@code{tex-buffer}).
 2249: カレントバッファ全体に対して@TeX{}を起動する(@code{tex-buffer})。
 2250: @item C-c @key{TAB}
 2251: @c Invoke Bib@TeX{} on the current file (@code{tex-bibtex-file}).
 2252: 現在のファイルに対してBib@TeX{}を起動する(@code{tex-bibtex-file})。
 2253: @item C-c C-f
 2254: @c Invoke @TeX{} on the current file (@code{tex-file}).
 2255: 現在のファイルに対して@TeX{}を起動する(@code{tex-file})。
 2256: @item C-c C-l
 2257: @c Recenter the window showing output from the inferior @TeX{} so that
 2258: @c the last line can be seen (@code{tex-recenter-output-buffer}).
 2259: 下位プロセスである@TeX{}の出力を表示したウィンドウをスクロールして、
 2260: 出力行の最後が見えるようにする(@code{tex-recenter-output-buffer})。
 2261: @item C-c C-k
 2262: @c Kill the @TeX{} subprocess (@code{tex-kill-job}).
 2263: @TeX{}のサブプロセスを終了させる(@code{tex-kill-job})。
 2264: @item C-c C-p
 2265: @c Print the output from the last @kbd{C-c C-r}, @kbd{C-c C-b}, or @kbd{C-c
 2266: @c C-f} command (@code{tex-print}).
 2267: 最後に実行した@kbd{C-c C-r}、@kbd{C-c C-b}、@kbd{C-c C-f}の出力を印刷する。
 2268: (@code{tex-print})。
 2269: @item C-c C-v
 2270: @c Preview the output from the last @kbd{C-c C-r}, @kbd{C-c C-b}, or @kbd{C-c
 2271: @c C-f} command (@code{tex-view}).
 2272: 最後に実行した@kbd{C-c C-r}、@kbd{C-c C-b}、@kbd{C-c C-f}の出力を
 2273: プレビューする(@code{tex-view})。
 2274: @item C-c C-q
 2275: @c Show the printer queue (@code{tex-show-print-queue}).
 2276: プリンタキューを表示する(@code{tex-show-print-queue})。
 2277: @end table
 2279: @findex tex-buffer
 2280: @c @kindex C-c C-b @r{(@TeX{} mode)}
 2281: @kindex C-c C-b @r{(@TeX{}モード)}
 2282: @findex tex-print
 2283: @c @kindex C-c C-p @r{(@TeX{} mode)}
 2284: @kindex C-c C-p @r{(@TeX{}モード)}
 2285: @findex tex-view
 2286: @c @kindex C-c C-v @r{(@TeX{} mode)}
 2287: @kindex C-c C-v @r{(@TeX{}モード)}
 2288: @findex tex-show-print-queue
 2289: @c @kindex C-c C-q @r{(@TeX{} mode)}
 2290: @kindex C-c C-q @r{(@TeX{}モード)}
 2291: @c   You can pass the current buffer through an inferior @TeX{} by means of
 2292: @c @kbd{C-c C-b} (@code{tex-buffer}).  The formatted output appears in a
 2293: @c temporary file; to print it, type @kbd{C-c C-p} (@code{tex-print}).
 2294: @c Afterward, you can use @kbd{C-c C-q} (@code{tex-show-print-queue}) to
 2295: @c view the progress of your output towards being printed.  If your terminal
 2296: @c has the ability to display @TeX{} output files, you can preview the
 2297: @c output on the terminal with @kbd{C-c C-v} (@code{tex-view}).
 2298: @kbd{C-c C-b}(@code{tex-buffer})を使えば、
 2299: カレントバッファの内容を下位の@TeX{}に渡すことができます。
 2300: 清書結果は一時ファイルに出力されます。
 2301: それを印刷するには、@kbd{C-c C-p}(@code{tex-print})と打ちます。
 2302: そのあとで、印刷の進捗状況を確認するには
 2303: @kbd{C-c C-q}(@code{tex-show-print-queue})を利用できます。
 2304: @TeX{}の出力ファイルを表示する機能を持った端末があれば、
 2305: @kbd{C-c C-v}(@code{tex-view})でプレビューできます。
 2307: @c @cindex @code{TEXINPUTS} environment variable
 2308: @cindex 環境変数@code{TEXINPUTS}
 2309: @cindex @code{TEXINPUTS}(環境変数)
 2310: @vindex tex-directory
 2311: @c   You can specify the directory to use for running @TeX{} by setting the
 2312: @c variable @code{tex-directory}.  @code{"."} is the default value.  If
 2313: @c your environment variable @code{TEXINPUTS} contains relative directory
 2314: @c names, or if your files contains @samp{\input} commands with relative
 2315: @c file names, then @code{tex-directory} @emph{must} be @code{"."} or you
 2316: @c will get the wrong results.  Otherwise, it is safe to specify some other
 2317: @c directory, such as @code{"/tmp"}.
 2318: @TeX{}が実行時に使うディレクトリを指定するには、
 2319: 変数@code{tex-directory}に設定します。
 2320: デフォルトの値は@code{"."}です。
 2321: 環境変数@code{TEXINPUTS}に相対的なディレクトリ名が入っていたり、
 2322: @TeX{}の@samp{\input}コマンドに相対的なファイル名を指定してある場合には、
 2323: @code{tex-directory}は@code{"."}である@emph{必要}があります。
 2324: さもないと、誤った結果になるでしょう。
 2325: そういった状況でなければ、@code{"/tmp"}のような、
 2326: 他のディレクトリを設定しても安全です。
 2328: @vindex tex-run-command
 2329: @vindex latex-run-command
 2330: @vindex slitex-run-command
 2331: @vindex tex-dvi-print-command
 2332: @vindex tex-dvi-view-command
 2333: @vindex tex-show-queue-command
 2334: @c   If you want to specify which shell commands are used in the inferior @TeX{},
 2335: @c you can do so by setting the values of the variables @code{tex-run-command},
 2336: @c @code{latex-run-command}, @code{slitex-run-command},
 2337: @c @code{tex-dvi-print-command}, @code{tex-dvi-view-command}, and
 2338: @c @code{tex-show-queue-command}.  You @emph{must} set the value of
 2339: @c @code{tex-dvi-view-command} for your particular terminal; this variable
 2340: @c has no default value.  The other variables have default values that may
 2341: @c (or may not) be appropriate for your system.
 2342: 下位の@TeX{}を起動するために使うコマンドを指定したければ、
 2343: 変数@code{tex-run-command}、@code{latex-run-command}、
 2344: @code{slitex-run-command}、@code{tex-dvi-print-command}、
 2345: @code{tex-dvi-view-command}、@code{tex-show-queue-command}に
 2346: それぞれ値を設定します。
 2347: @code{tex-dvi-view-command}にはデフォルト値がないので、
 2348: 使用する端末にあわせた値を設定する@emph{必要}があります。
 2349: これ以外の変数には、使用するシステムに適切と思われる
 2350: (そうでないかもしれないが)デフォルト値が設定されています。
 2352: @c   Normally, the file name given to these commands comes at the end of
 2353: @c the command string; for example, @samp{latex @var{filename}}.  In some
 2354: @c cases, however, the file name needs to be embedded in the command; an
 2355: @c example is when you need to provide the file name as an argument to one
 2356: @c command whose output is piped to another.  You can specify where to put
 2357: @c the file name with @samp{*} in the command string.  For example,
 2358: 通常は、これらのコマンドに与えるファイル名はコマンド文字列の最後にきます。
 2359: たとえば、@samp{latex @var{filename}}です。
 2360: しかし、ときにはコマンドの途中にファイル名を埋め込む必要があります。
 2361: たとえば、パイプを介して出力を他のコマンドに渡すようなコマンドの引数に
 2362: ファイル名を指定する場合です。
 2363: ファイル名を置く箇所は、コマンド文字列中の@samp{*}で指定できます。
 2364: たとえば、以下のように設定します。
 2366: @example
 2367: (setq tex-dvi-print-command "dvips -f * | lpr")
 2368: @end example
 2370: @findex tex-kill-job
 2371: @c @kindex C-c C-k @r{(@TeX{} mode)}
 2372: @kindex C-c C-k @r{(@TeX{}モード)}
 2373: @findex tex-recenter-output-buffer
 2374: @c @kindex C-c C-l @r{(@TeX{} mode)}
 2375: @kindex C-c C-l @r{(@TeX{}モード)}
 2376: @c   The terminal output from @TeX{}, including any error messages, appears
 2377: @c in a buffer called @samp{*tex-shell*}.  If @TeX{} gets an error, you can
 2378: @c switch to this buffer and feed it input (this works as in Shell mode;
 2379: @c @pxref{Interactive Shell}).  Without switching to this buffer you can
 2380: @c scroll it so that its last line is visible by typing @kbd{C-c
 2381: @c C-l}.
 2382: エラーメッセージを含めた@TeX{}からの端末出力は、
 2383: @samp{*tex-shell*}と呼ばれるバッファにすべて現れます。
 2384: @TeX{}がエラーを報告した場合には、
 2385: このバッファに切り替えれば適切な入力を与えることができます
 2386: (これはシェル(shell)モードと同様に動作する。@pxref{Interactive Shell})。
 2387: このバッファに切り替えなくても@kbd{C-c C-l}と打てば、
 2388: バッファの最後の行が表示されるようにスクロールできます。
 2390: @c   Type @kbd{C-c C-k} (@code{tex-kill-job}) to kill the @TeX{} process if
 2391: @c you see that its output is no longer useful.  Using @kbd{C-c C-b} or
 2392: @c @kbd{C-c C-r} also kills any @TeX{} process still running.@refill
 2393: @TeX{}の出力が不要となったら、@TeX{}プロセスを終了させるために
 2394: @kbd{C-c C-k}(@code{tex-kill-job})と打ちます。
 2395: @kbd{C-c C-b}や@kbd{C-c C-r}を使っても、
 2396: 動作中の@TeX{}プロセスを終了できます。
 2398: @findex tex-region
 2399: @c @kindex C-c C-r @r{(@TeX{} mode)}
 2400: @kindex C-c C-r @r{(@TeX{}モード)}
 2401: @c   You can also pass an arbitrary region through an inferior @TeX{} by typing
 2402: @c @kbd{C-c C-r} (@code{tex-region}).  This is tricky, however, because most files
 2403: @c of @TeX{} input contain commands at the beginning to set parameters and
 2404: @c define macros, without which no later part of the file will format
 2405: @c correctly.  To solve this problem, @kbd{C-c C-r} allows you to designate a
 2406: @c part of the file as containing essential commands; it is included before
 2407: @c the specified region as part of the input to @TeX{}.  The designated part
 2408: @c of the file is called the @dfn{header}.
 2409: @kbd{C-c C-r}(@code{tex-region})と打てば、
 2410: 任意のリージョンを下位の@TeX{}に渡せます。
 2411: しかし、これには少々巧妙な手口を必要とします。
 2412: というのは、たいていの場合、@TeX{}の入力ファイルの先頭部分には
 2413: パラメータの設定やマクロ定義があり、それらがないと残りの部分を正しく
 2414: 清書できないからです。
 2415: この問題を解決するために、@kbd{C-c C-r}では
 2416: ファイルの中で必須の整形コマンドを含んでいる部分を指定できます。
 2417: リージョンのまえにその部分を加えて@TeX{}への入力とします。
 2418: ファイル中の必須であると指定された部分を@dfn{ヘッダ}と呼びます。
 2420: @c @cindex header (@TeX{} mode)
 2421: @cindex ヘッダ(@TeX{}モード)
 2422: @c   To indicate the bounds of the header in Plain @TeX{} mode, you insert two
 2423: @c special strings in the file.  Insert @samp{%**start of header} before the
 2424: @c header, and @samp{%**end of header} after it.  Each string must appear
 2425: @c entirely on one line, but there may be other text on the line before or
 2426: @c after.  The lines containing the two strings are included in the header.
 2427: @c If @samp{%**start of header} does not appear within the first 100 lines of
 2428: @c the buffer, @kbd{C-c C-r} assumes that there is no header.
 2429: プレイン@TeX{}(plain-tex)モードでヘッダの境界を示すには、
 2430: ファイルに2つの特別な文字列を挿入します。
 2431: ヘッダの直前に@samp{%**start of header}を、
 2432: ヘッダの直後に@samp{%**end of header}を挿入します。
 2433: どちらの文字列も2行にまたがってはいけませんが、
 2434: 前後に別のテキストがあってもかまいません。
 2435: これらの文字列を持つ行もヘッダに含まれます。
 2436: バッファの先頭から100行以内に@samp{%**start of header}が現れなければ、
 2437: @kbd{C-c C-r}はヘッダがないと仮定します。
 2439: @c   In La@TeX{} mode, the header begins with @samp{\documentstyle} and ends
 2440: @c with @samp{\begin@{document@}}.  These are commands that La@TeX{} requires
 2441: @c you to use in any case, so nothing special needs to be done to identify the
 2442: @c header.
 2443: La@TeX{}モードでは、@samp{\documentstyle}で始まり
 2444: @samp{\begin@{document@}}で終わる部分がヘッダです。
 2445: これらは、いかなる場合でもLa@TeX{}が要求するコマンドなので、
 2446: ヘッダを認識するために特別なことをする必要はありません。
 2448: @findex tex-file
 2449: @c @kindex C-c C-f @r{(@TeX{} mode)}
 2450: @kindex C-c C-f @r{(@TeX{}モード)}
 2451: @c   The commands (@code{tex-buffer}) and (@code{tex-region}) do all of their
 2452: @c work in a temporary directory, and do not have available any of the auxiliary
 2453: @c files needed by @TeX{} for cross-references; these commands are generally
 2454: @c not suitable for running the final copy in which all of the cross-references
 2455: @c need to be correct.
 2456: コマンド@code{tex-buffer}と@code{tex-region}は、
 2457: 一時的なディレクトリ上ですべての作業を行うので、
 2458: 相互参照のために@TeX{}が必要とする補助ファイルを使用できません。
 2459: 一般に、これらのコマンドは、相互参照がすべて正しい必要がある
 2460: 最終的な原稿の作成には適していません。
 2462: @c   When you want the auxiliary files for cross references, use @kbd{C-c
 2463: @c C-f} (@code{tex-file}) which runs @TeX{} on the current buffer's file,
 2464: @c in that file's directory.  Before running @TeX{}, it offers to save any
 2465: @c modified buffers.  Generally, you need to use (@code{tex-file}) twice to
 2466: @c get the cross-references right.
 2467: 相互参照のための補助ファイルを必要とする場合には、
 2468: カレントバッファのファイルを入力として、そのファイルを置いたディレクトリで
 2469: @TeX{}を実行する@kbd{C-c C-f}(@code{tex-file})を使います。
 2470: @TeX{}を実行するまえに、変更したすべてのバッファを保存するか尋ねてきます。
 2471: 一般には、正しい相互参照を得るためには、
 2472: @code{tex-file}を2度実行する必要があります。
 2474: @vindex tex-start-options-string
 2475: @c   The value of the variable @code{tex-start-options-string} specifies
 2476: @c options for the @TeX{} run.  The default value causes @TeX{} to run in
 2477: @c nonstopmode.  To run @TeX{} interactively, set the variable to @code{""}.
 2478: 変数@code{tex-start-options-string}の値は、
 2479: @TeX{}の実行のオプションを指定します。
 2480: デフォルト値は、@TeX{}をバッチモードで実行します。
 2481: @TeX{}を対話的に実行するには、変数に@code{""}を設定します。
 2483: @vindex tex-main-file
 2484: @c   Large @TeX{} documents are often split into several files---one main
 2485: @c file, plus subfiles.  Running @TeX{} on a subfile typically does not
 2486: @c work; you have to run it on the main file.  In order to make
 2487: @c @code{tex-file} useful when you are editing a subfile, you can set the
 2488: @c variable @code{tex-main-file} to the name of the main file.  Then
 2489: @c @code{tex-file} runs @TeX{} on that file.
 2490: 巨大な@TeX{}文書は、複数のファイル、つまり、1つのメインファイルと
 2491: サブファイルとに分割されることがよくあります。
 2492: サブファイルに対して@TeX{}を実行しても、うまくいくことはまずありません。
 2493: メインファイルに対して@TeX{}を実行する必要があります。
 2494: サブファイルを編集する場合でも@code{tex-file}を使えるように、
 2495: メインファイルの名前を変数@code{tex-main-file}に設定できます。
 2496: そうすると@code{tex-file}はそのファイルに対して@TeX{}を実行します。
 2498: @c   The most convenient way to use @code{tex-main-file} is to specify it
 2499: @c in a local variable list in each of the subfiles.  @xref{File
 2500: @c Variables}.
 2501: @code{tex-main-file}のもっとも便利な使い方は、
 2502: 各サブファイルのローカル変数リストで指定することです。
 2503: @xref{File Variables}。
 2505: @findex tex-bibtex-file
 2506: @c @kindex C-c TAB @r{(@TeX{} mode)}
 2507: @kindex C-c TAB @r{(@TeX{}モード)}
 2508: @vindex tex-bibtex-command
 2509: @c   For La@TeX{} files, you can use Bib@TeX{} to process the auxiliary
 2510: @c file for the current buffer's file.  Bib@TeX{} looks up bibliographic
 2511: @c citations in a data base and prepares the cited references for the
 2512: @c bibliography section.  The command @kbd{C-c TAB}
 2513: @c (@code{tex-bibtex-file}) runs the shell command
 2514: @c (@code{tex-bibtex-command}) to produce a @samp{.bbl} file for the
 2515: @c current buffer's file.  Generally, you need to do @kbd{C-c C-f}
 2516: @c (@code{tex-file}) once to generate the @samp{.aux} file, then do
 2517: @c @kbd{C-c TAB} (@code{tex-bibtex-file}), and then repeat @kbd{C-c C-f}
 2518: @c (@code{tex-file}) twice more to get the cross-references correct.
 2519: La@TeX{}用ファイルであれば、
 2520: カレントバッファのファイルに対する補助ファイルを処理するために
 2521: Bib@TeX{}を使えます。
 2522: Bib@TeX{}は、参考文献をデータベースで調べて、
 2523: 参考文献の節のための文献リストを準備します。
 2524: コマンド@kbd{C-c TAB}(@code{tex-bibtex-file})は、
 2525: カレントバッファのファイルに対する@samp{.bbl}ファイルを
 2526: 生成するためのシェルコマンド(@code{tex-bibtex-command})を実行します。
 2527: 通常は、まず@samp{.aux}ファイルを作るために
 2528: @kbd{C-c C-f}(@code{tex-file})を一度実行してから、
 2529: つぎに@kbd{C-c TAB}(@code{tex-bibtex-file})を実行し、
 2530: 正しい相互参照を得るために@kbd{C-c C-f}(@code{tex-file})を
 2531: さらに2回実行します。
 2533: @vindex tex-shell-hook
 2534: @vindex tex-mode-hook
 2535: @vindex latex-mode-hook
 2536: @vindex slitex-mode-hook
 2537: @vindex plain-tex-mode-hook
 2538: @c   Entering any kind of @TeX{} mode runs the hooks @code{text-mode-hook}
 2539: @c and @code{tex-mode-hook}.  Then it runs either
 2540: @c @code{plain-tex-mode-hook} or @code{latex-mode-hook}, whichever is
 2541: @c appropriate.  For Sli@TeX{} files, it calls @code{slitex-mode-hook}.
 2542: @c Starting the @TeX{} shell runs the hook @code{tex-shell-hook}.
 2543: @c @xref{Hooks}.
 2544: どの@TeX{}モードに入っても、
 2545: フック@code{text-mode-hook}と@code{tex-mode-hook}を実行します。
 2546: そのあとで、
 2547: @code{plain-tex-mode-hook}か@code{latex-mode-hook}の適切なフックを実行します。
 2548: Sli@TeX{}ファイルに対しては、@code{slitex-mode-hook}を呼びます。
 2549: @TeX{}用のシェルの開始時には、フック@code{tex-shell-hook}を実行します。
 2550: @xref{Hooks}。
 2552: @node Nroff Mode, Formatted Text, TeX Mode, Text
 2553: @c @section Nroff Mode
 2554: @section nroffモード
 2556: @cindex nroff
 2557: @findex nroff-mode
 2558: @c   Nroff mode is a mode like Text mode but modified to handle nroff commands
 2559: @c present in the text.  Invoke @kbd{M-x nroff-mode} to enter this mode.  It
 2560: @c differs from Text mode in only a few ways.  All nroff command lines are
 2561: @c considered paragraph separators, so that filling will never garble the
 2562: @c nroff commands.  Pages are separated by @samp{.bp} commands.  Comments
 2563: @c start with backslash-doublequote.  Also, three special commands are
 2564: @c provided that are not in Text mode:
 2565: nroffモードはテキスト(text)モードに似ていますが、
 2566: テキスト中のnroffコマンドを扱えるように変更してあります。
 2567: このモードに入るには、@kbd{M-x nroff-mode}を実行します。
 2568: テキスト(text)モードとは、2、3の点で異なるだけです。
 2569: nroffコマンドを含んだ行は、すべて段落区切りとみなすので、
 2570: 詰め込みによってnroffコマンドが本文に混ざってしまうことはありません。
 2571: ページは@samp{.bp}コマンドで分割されます。
 2572: コメントは@samp{.\"}で始まります。
 2573: また、テキスト(text)モードにはない、つぎの3つの特別なコマンドがあります。
 2575: @findex forward-text-line
 2576: @findex backward-text-line
 2577: @findex count-text-lines
 2578: @c @kindex M-n @r{(Nroff mode)}
 2579: @c @kindex M-p @r{(Nroff mode)}
 2580: @c @kindex M-? @r{(Nroff mode)}
 2581: @kindex M-n @r{(nroffモード)}
 2582: @kindex M-p @r{(nroffモード)}
 2583: @kindex M-? @r{(nroffモード)}
 2584: @table @kbd
 2585: @item M-n
 2586: @c Move to the beginning of the next line that isn't an nroff command
 2587: @c (@code{forward-text-line}).  An argument is a repeat count.
 2588: nroffコマンドではないつぎの行の先頭にポイントを移動する
 2589: (@code{forward-text-line})。
 2590: 引数は反復回数。
 2591: @item M-p
 2592: @c Like @kbd{M-n} but move up (@code{backward-text-line}).
 2593: @kbd{M-n}と同様だが、まえの行に移動する(@code{backward-text-line})。
 2594: @item M-?
 2595: @c Prints in the echo area the number of text lines (lines that are not
 2596: @c nroff commands) in the region (@code{count-text-lines}).
 2597: リージョン中のテキスト(nroffコマンド以外)の行数をエコー領域に表示する
 2598: (@code{count-text-lines})。
 2599: @end table
 2601: @findex electric-nroff-mode
 2602: @c   The other feature of Nroff mode is that you can turn on Electric Nroff
 2603: @c mode.  This is a minor mode that you can turn on or off with @kbd{M-x
 2604: @c electric-nroff-mode} (@pxref{Minor Modes}).  When the mode is on, each
 2605: @c time you use @key{RET} to end a line that contains an nroff command that
 2606: @c opens a kind of grouping, the matching nroff command to close that
 2607: @c grouping is automatically inserted on the following line.  For example,
 2608: @c if you are at the beginning of a line and type @kbd{.@: ( b @key{RET}},
 2609: @c this inserts the matching command @samp{.)b} on a new line following
 2610: @c point.
 2611: nroffモードの他の機能としては、エレクトリックnroff(electric-nroff)モードが
 2612: あります。
 2613: これは@kbd{M-x electric-nroff-mode}でオン/オフできるマイナモードです
 2614: (@pxref{Minor Modes})。
 2615: このモードがオンのとき、
 2616: グループを始めるnroffコマンドを含む行を終えるために@key{RET}
 2617: @footnote{【訳注】実際には@kbd{C-j}。}を打つたびに、
 2618: そのグループを終える対応したnroffコマンドを自動的につぎの行に挿入します。
 2619: たとえば、行頭で@kbd{.@: ( b @key{RET}}と打つと、
 2620: ポイントのうしろに新たな行として対応するnroffコマンド@samp{.)b}を挿入します。
 2622: @c   If you use Outline minor mode with Nroff mode (@pxref{Outline Mode}),
 2623: @c heading lines are lines of the form @samp{.H} followed by a number (the
 2624: @c header level).
 2625: nroffモードと一緒にアウトラインマイナ(outline-minor)モード
 2626: (@pxref{Outline Mode})を使用すると、
 2627: 見出し行は@samp{.H}のあとに(見出しのレベルにあたる)数字が続く形になります。
 2629: @vindex nroff-mode-hook
 2630: @c   Entering Nroff mode runs the hook @code{text-mode-hook}, followed by
 2631: @c the hook @code{nroff-mode-hook} (@pxref{Hooks}).
 2632: nroffモードに入ると、フック@code{text-mode-hook}に続いて
 2633: フック@code{nroff-mode-hook}が実行されます(@pxref{Hooks})。
 2635: @node Formatted Text,  , Nroff Mode, Text
 2636: @c @section Editing Formatted Text
 2637: @section 整形済みテキストの編集
 2639: @c @cindex Enriched mode
 2640: @c @cindex mode, Enriched
 2641: @c @cindex formatted text
 2642: @cindex エンリッチモード(enrichedモード)
 2643: @cindex enrichedモード
 2644: @cindex モード、Enriched
 2645: @cindex 整形済みテキスト
 2646: @cindex WYSIWYG
 2647: @c @cindex word processing
 2648: @cindex 文書処理
 2649: @c   @dfn{Enriched mode} is a minor mode for editing files that contain
 2650: @c formatted text in WYSIWYG fashion, as in a word processor.  Currently,
 2651: @c formatted text in Enriched mode can specify fonts, colors, underlining,
 2652: @c margins, and types of filling and justification.  In the future, we plan
 2653: @c to implement other formatting features as well.
 2654: @dfn{エンリッチ(enriched)モード}は、
 2655: ワープロのようにWYSIWYG方式で、
 2656: 整形済みテキストを含むファイルの編集を行うためのマイナモードです。
 2657: 現在のところ、エンリッチ(enriched)モードの整形済みテキストには、
 2658: フォント、表示色、下線、左右端、詰め込みと幅揃えの種類を指定できます。
 2659: 将来的には、その他の整形機能も実装しようと計画しています。
 2661: @c   Enriched mode is a minor mode (@pxref{Minor Modes}).  Typically it is
 2662: @c used in conjunction with Text mode (@pxref{Text Mode}).  However, you
 2663: @c can also use it with other major modes such as Outline mode and
 2664: @c Paragraph-Indent Text mode.
 2665: エンリッチ(enriched)モードはマイナモードです(@pxref{Minor Modes})。
 2666: 通常は、テキスト(text)モードと一緒に使います(@pxref{Text Mode})。
 2667: しかしながら、アウトライン(outline)モードや
 2668: 段落字下げ型テキスト(paragraph-indent-text)モードのような
 2669: 他のメジャーモードと一緒に使うことも可能です。
 2671: @c   Potentially, Emacs can store formatted text files in various file
 2672: @c formats.  Currently, only one format is implemented: @dfn{text/enriched}
 2673: @c format, which is defined by the MIME protocol.  @xref{Format
 2674: @c Conversion,, Format Conversion, elisp, the Emacs Lisp Reference Manual},
 2675: @c for details of how Emacs recognizes and converts file formats.
 2676: Emacsは能力的には整形済みテキストのファイルをさまざまなファイル形式で
 2677: 格納することができす。
 2678: 現在のところは、1種類の形式のみ、
 2679: つまり、MIMEプロトコルで定義された@dfn{text/enriched}形式のみを
 2680: 実装してあります。
 2681: Emacsがどのようにファイルの形式を識別し変換するかの詳細に関しては
 2682: @xref{Format Conversion,, ファイル書式変換, elisp,
 2683: Emacs Lisp リファレンスマニュアル}。
 2685: @c   The Emacs distribution contains a formatted text file that can serve as
 2686: @c an example.  Its name is @file{etc/enriched.doc}.  It contains samples
 2687: @c illustrating all the features described in this section.  It also
 2688: @c contains a list of ideas for future enhancements.
 2689: Emacsの配布の中には、実例として整形済みテキストファイル
 2690: @file{etc/enriched.doc}があります。
 2691: このファイルには、本節で説明するすべての機能の実例が盛り込まれています。
 2692: また、将来の拡張に関するアイデアも述べてあります。
 2694: @menu
 2695: * Requesting Formatted Text::   Entering and exiting Enriched mode.
 2696: * Hard and Soft Newlines::      There are two different kinds of newlines.
 2697: * Editing Format Info::         How to edit text properties.
 2698: * Faces: Format Faces.          Bold, italic, underline, etc.
 2699: * Color: Format Colors.         Changing the color of text.
 2700: * Indent: Format Indentation.   Changing the left and right margins.
 2701: * Justification: Format Justification.
 2702:                                 Centering, setting text flush with the 
 2703:                                   left or right margin, etc.
 2704: * Other: Format Properties.     The "special" text properties submenu.
 2705: * Forcing Enriched Mode::       How to force use of Enriched mode.
 2706: @end menu
 2708: @node Requesting Formatted Text, Hard and Soft Newlines, , Formatted Text
 2709: @c @subsection Requesting to Edit Formatted Text
 2710: @subsection 整形済みテキストの編集
 2712: @c   Whenever you visit a file that Emacs saved in the text/enriched format,
 2713: @c Emacs automatically converts the formatting information in the file into
 2714: @c Emacs's own internal format (text properties), and turns on Enriched
 2715: @c mode.
 2716: text/enriched形式でEmacsが保存したファイルを訪れると、
 2717: Emacsは自動的にファイル中の整形情報をEmacs自身の内部形式(テキスト属性)に
 2718: 変換し、エンリッチ(enriched)モードをオンにします。
 2720: @findex enriched-mode
 2721: @c   To create a new file of formatted text, first visit the nonexistent
 2722: @c file, then type @kbd{M-x enriched-mode} before you start inserting text.
 2723: @c This command turns on Enriched mode.  Do this before you begin inserting
 2724: @c text, to ensure that the text you insert is handled properly.
 2725: 新たに整形済みテキストファイルを作成するには、
 2726: まず、存在しないファイルを訪れてから、
 2727: テキストを入力するまえに@kbd{M-x enriched-mode}と打ちます。
 2728: このコマンドはエンリッチ(enriched)モードをオンにします。
 2729: 入力されるテキストが正しく扱われることを保証するために、
 2730: テキストを挿入するまえにエンリッチ(enriched)モードをオンにしてください。
 2732: @c   More generally, the command @code{enriched-mode} turns Enriched mode
 2733: @c on if it was off, and off if it was on.  With a prefix argument, this
 2734: @c command turns Enriched mode on if the argument is positive, and turns
 2735: @c the mode off otherwise.
 2736: より一般的にいえば、コマンド@code{enriched-mode}は、
 2737: エンリッチ(enriched)モードがオフならオン、オンならオフにします。
 2738: 数引数を指定すると、それが正であればエンリッチ(enriched)モードを
 2739: オンにし、それ以外ではオフにします。
 2741: @c   When you save a buffer while Enriched mode is enabled in it, Emacs
 2742: @c automatically converts the text to text/enriched format while writing it
 2743: @c into the file.  When you visit the file again, Emacs will automatically
 2744: @c recognize the format, reconvert the text, and turn on Enriched mode
 2745: @c again.
 2746: エンリッチ(enriched)モードがオンのときにバッファを保存すると、
 2747: Emacsはテキストをファイルに書き出すときに
 2748: 自動的にtext/enriched形式へ変換します。
 2749: ふたたびそのファイルを訪問すると、Emacsは自動的にその形式を認識して
 2750: テキストを変換し、エンリッチ(enriched)モードをオンにします。
 2752: @vindex enriched-fill-after-visiting
 2753: @c   Normally, after visiting a file in text/enriched format, Emacs refills
 2754: @c each paragraph to fit the specified right margin.  You can turn off this
 2755: @c refilling, to save time, by setting the variable
 2756: @c @code{enriched-fill-after-visiting} to @code{nil} or to @code{ask}.
 2757: 通常、text/enriched形式のファイルを訪問すると、
 2758: Emacsは各段落を指定された右端に納まるように詰め込みます。
 2759: この詰め込みをやめて時間を短縮するために、
 2760: 変数@code{enriched-fill-after-visiting}に@code{nil}か@code{ask}を設定します。
 2762: @c   However, when visiting a file that was saved from Enriched mode, there
 2763: @c is no need for refilling, because Emacs saves the right margin settings
 2764: @c along with the text.
 2765: しかし、エンリッチ(enriched)モードで保存したファイルを訪問するときには、
 2766: Emacsは右端の設定をテキストと一緒に保存しているので、
 2767: テキストを再度詰め込む必要はありません。
 2769: @vindex enriched-translations
 2770: @c   You can add annotations for saving additional text properties, which
 2771: @c Emacs normally does not save, by adding to @code{enriched-translations}.
 2772: @c Note that the text/enriched standard requires any non-standard
 2773: @c annotations to have names starting with @samp{x-}, as in
 2774: @c @samp{x-read-only}.  This ensures that they will not conflict with
 2775: @c standard annotations that may be added later.
 2776: 通常はEmacsが保存しないテキスト属性に対する注記(annotation)も
 2777: 保存するようにするには、
 2778: 変数@code{enriched-translations}に追加しておきます。
 2779: text/enriched規格では、非標準の注記には、@samp{x-read-only}のように
 2780: @samp{x-}で始まる名前が必要なことに注目してください。
 2781: これによって、あとから追加される標準的な注記と
 2782: 名前が衝突しないことが保証されます。
 2784: @node Hard and Soft Newlines, Editing Format Info, Requesting Formatted Text, Formatted Text
 2785: @c @subsection Hard and Soft Newlines
 2786: @subsection ハード改行とソフト改行
 2787: @c @cindex hard newline
 2788: @c @cindex soft newline
 2789: @c @cindex newlines, hard and soft
 2790: @cindex ハード改行
 2791: @cindex ソフト改行
 2792: @cindex 改行、ハードとソフト
 2794: @c   In formatted text, Emacs distinguishes between two different kinds of
 2795: @c newlines, @dfn{hard} newlines and @dfn{soft} newlines.
 2796: Emacsは整形済みテキスト中の改行を、
 2797: @dfn{ハード}改行と@dfn{ソフト}改行の2種類に区別します。
 2799: @c   Hard newlines are used to separate paragraphs, or items in a list, or
 2800: @c anywhere that there should always be a line break regardless of the
 2801: @c margins.  The @key{RET} command (@code{newline}) and @kbd{C-o}
 2802: @c (@code{open-line}) insert hard newlines.
 2803: ハード改行は、段落の区切り、リスト内の項目、
 2804: 左右端に関係なく行分割がつねに必要な箇所に用いられます。
 2805: @key{RET}コマンド(@code{newline})と@kbd{C-o}(@code{open-line})は
 2806: ハード改行を挿入します。
 2808: @c   Soft newlines are used to make text fit between the margins.  All the
 2809: @c fill commands, including Auto Fill, insert soft newlines---and they
 2810: @c delete only soft newlines.
 2811: ソフト改行は、テキストを左右端のあいだに納めるために使用されます。
 2812: 自動詰め込み(auto-fill)モードを含めたすべての詰め込みコマンドは
 2813: ソフト改行を挿入し、ソフト改行だけを削除します。
 2815: @c   Although hard and soft newlines look the same, it is important to bear
 2816: @c the difference in mind.  Do not use @key{RET} to break lines in the
 2817: @c middle of filled paragraphs, or else you will get hard newlines that are
 2818: @c barriers to further filling.  Instead, let Auto Fill mode break lines,
 2819: @c so that if the text or the margins change, Emacs can refill the lines
 2820: @c properly.  @xref{Auto Fill}.
 2821: ハード改行とソフト改行は見た目は同じですが、違いを理解することは重要です。
 2822: 詰め込んだ段落の途中で行に分割するときに@key{RET}を使ってはいけません。
 2823: あとの詰め込みの妨げとなるハード改行を挿入してしまいます。
 2824: かわりに、自動詰め込み(auto-fill)モードに行分割を行わせて、
 2825: テキストや左右端が変化してもEmacsが適切に再度詰め込めるようにします。
 2826: @xref{Auto Fill}。
 2828: @c   On the other hand, in tables and lists, where the lines should always
 2829: @c remain as you type them, you can use @key{RET} to end lines.  For these
 2830: @c lines, you may also want to set the justification style to
 2831: @c @code{unfilled}.  @xref{Format Justification}.
 2832: 一方、表やリストのように、入力したとおりの行にしておく必要がある場合には、
 2833: @key{RET}で行を終えます。
 2834: これらの行では、幅揃えのスタイルとして@code{unfilled}を
 2835: 指定するのもよいかもしれません。
 2836: @xref{Format Justification}。
 2838: @node Editing Format Info, Format Faces, Hard and Soft Newlines, Formatted Text
 2839: @c @subsection Editing Format Information
 2840: @subsection 整形情報の編集
 2842: @c   There are two ways to alter the formatting information for a formatted
 2843: @c text file: with keyboard commands, and with the mouse.
 2844: 整形済みテキストファイルの整形情報を変更するには、2つの方法があります。
 2845: キーボードコマンドを使うか、マウスを使います。
 2847: @c   The easiest way to add properties to your document is by using the Text
 2848: @c Properties menu.  You can get to this menu in two ways: from the Edit
 2849: @c menu in the menu bar, or with @kbd{C-mouse-2} (hold the @key{CTRL} key
 2850: @c and press the middle mouse button).
 2851: 文書に属性を追加するもっとも簡単な方法は、
 2852: Text Propertiesメニューを使用することです。
 2853: このメニューを出すには2つの方法があります。
 2854: メニューバーのEditメニューから選択するか、
 2855: @kbd{C-mouse-2}(@key{CTRL}キーを押し下げたままマウスの真中のボタンを押す)
 2856: です。
 2858: @c   Most of the items in the Text Properties menu lead to other submenus.
 2859: @c These are described in the sections that follow.  Some items run
 2860: @c commands directly:
 2861: Text Propertiesメニューのほとんどの項目には、
 2862: 別のサブメニューがついています。
 2863: これらについては後述します。
 2864: コマンドを直接実行する項目もあります。
 2866: @table @code
 2867: @findex facemenu-remove-props
 2868: @item Remove Properties
 2869: @c Delete from the region all the text properties that the Text Properties
 2870: @c menu works with (@code{facemenu-remove-props}).
 2871: Text Propertiesメニューで扱えるすべてのテキスト属性をリージョンから取り除く
 2872: (@code{facemenu-remove-props})。
 2874: @findex facemenu-remove-all
 2875: @item Remove All
 2876: @c Delete @emph{all} text properties from the region
 2877: @c (@code{facemenu-remove-all}).
 2878: @emph{すべて}のテキスト属性をリージョンから取り除く
 2879: (@code{facemenu-remove-all})。
 2881: @findex list-text-properties-at
 2882: @item List Properties
 2883: @c List all the text properties of the character following point
 2884: @c (@code{list-text-properties-at}).
 2885: ポイント直後の文字のすべてのテキスト属性を表示する
 2886: (@code{list-text-properties-at})。
 2888: @item Display Faces
 2889: @c Display a list of all the defined faces.
 2890: 定義済みフェイス一覧を表示する。
 2892: @item Display Colors
 2893: @c Display a list of all the defined colors.
 2894: 定義済み表示色一覧を表示する。
 2895: @end table
 2897: @node Format Faces, Format Colors, Editing Format Info, Formatted Text
 2898: @c @subsection Faces in Formatted Text
 2899: @subsection 整形済みテキストのフェイス
 2901: @c   The Faces submenu lists various Emacs faces including @code{bold},
 2902: @c @code{italic}, and @code{underline}.  Selecting one of these adds the
 2903: @c chosen face to the region.  @xref{Faces}.  You can also specify a face
 2904: @c with these keyboard commands:
 2905: Facesサブメニューには、@code{bold}、@code{italic}、@code{underline}といっ
 2906: たEmacsで使用できる各種フェイスが並んでいます。
 2907: その中から1つを選ぶと、リージョンにフェイスを追加します。
 2908: @xref{Faces}。
 2909: 以下のキーボードコマンドでフェイスを指定することもできます。
 2911: @table @kbd
 2912: @c @kindex M-g d @r{(Enriched mode)}
 2913: @kindex M-g d @r{(エンリッチモード)}
 2914: @findex facemenu-set-default
 2915: @item M-g d
 2916: @c Set the region, or the next inserted character, to the @code{default} face
 2917: @c (@code{facemenu-set-default}).
 2918: リージョン、あるいは、つぎに挿入する文字のフェイスを@code{default}にする
 2919: (@code{facemenu-set-default})。
 2920: @c @kindex M-g b @r{(Enriched mode)}
 2921: @kindex M-g b @r{(エンリッチモード)}
 2922: @findex facemenu-set-bold
 2923: @item M-g b
 2924: @c Set the region, or the next inserted character, to the @code{bold} face
 2925: @c (@code{facemenu-set-bold}).
 2926: リージョン、あるいは、つぎに挿入する文字のフェイスを@code{bold}にする
 2927: (@code{facemenu-set-bold})。
 2928: @c @kindex M-g i @r{(Enriched mode)}
 2929: @kindex M-g i @r{(エンリッチモード)}
 2930: @findex facemenu-set-italic
 2931: @item M-g i
 2932: @c Set the region, or the next inserted character, to the @code{italic} face
 2933: @c (@code{facemenu-set-italic}).
 2934: リージョン、あるいは、つぎに挿入する文字のフェイスを@code{italic}にする
 2935: (@code{facemenu-set-italic})。
 2936: @c @kindex M-g l @r{(Enriched mode)}
 2937: @kindex M-g l @r{(エンリッチモード)}
 2938: @findex facemenu-set-bold-italic
 2939: @item M-g l
 2940: @c Set the region, or the next inserted character, to the @code{bold-italic} face
 2941: @c (@code{facemenu-set-bold-italic}).
 2942: リージョン、あるいは、つぎに挿入する文字のフェイスを@code{bold-italic}にする
 2943: (@code{facemenu-set-bold-italic})。
 2944: @c @kindex M-g u @r{(Enriched mode)}
 2945: @kindex M-g u @r{(エンリッチ)}
 2946: @findex facemenu-set-underline
 2947: @item M-g u
 2948: @c Set the region, or the next inserted character, to the @code{underline} face
 2949: @c (@code{facemenu-set-underline}).
 2950: リージョン、あるいは、つぎに挿入する文字のフェイスを@code{underline}にする
 2951: (@code{facemenu-set-underline})。
 2952: @c @kindex M-g o @r{(Enriched mode)}
 2953: @kindex M-g o @r{(エンリッチモード)}
 2954: @findex facemenu-set-face
 2955: @item M-g o @var{face} @key{RET}
 2956: @c Set the region, or the next inserted character, to the face @var{face}
 2957: @c (@code{facemenu-set-face}).
 2958: リージョン、あるいは、つぎに挿入する文字のフェイスを@var{face}にする
 2959: (@code{facemenu-set-face})。
 2960: @end table
 2962: @c   If you use these commands with a prefix argument---or, in Transient Mark
 2963: @c mode, if the region is not active---then these commands specify a face
 2964: @c to use for your next self-inserting input.  @xref{Transient Mark}.  This
 2965: @c applies to both the keyboard commands and the menu commands.
 2966: 前置引数を指定してこれらのコマンドを使ったり、
 2967: 暫定マーク(transient-mark)モードでリージョンが選択されていなければ、
 2968: これらのコマンドはつぎに入力する自己挿入文字だけに使うフェイスを指定します。
 2969: @xref{Transient Mark}。
 2970: これはキーボードコマンドとメニューコマンドの両方に通用します。
 2972: @c   Enriched mode defines two additional faces: @code{excerpt} and
 2973: @c @code{fixed}.  These correspond to codes used in the text/enriched file
 2974: @c format.
 2975: エンリッチ(enriched)モードには、
 2976: @code{excerpt}と@code{fixed}の2つの追加フェイスが定義されています。
 2977: これらのフェイスは、text/enrichedファイル形式で
 2978: 使用されるコードに対応しています。
 2980: @c   The @code{excerpt} face is intended for quotations.  This face is the
 2981: @c same as @code{italic} unless you customize it (@pxref{Face Customization}).
 2982: @code{excerpt}フェイスは引用を表すためのものです。
 2983: カスタマイズしてなければ@code{italic}と同じです
 2984: (@pxref{Face Customization})。
 2986: @c   The @code{fixed} face is meant to say, ``Use a fixed-width font for this
 2987: @c part of the text.''  Emacs currently supports only fixed-width fonts;
 2988: @c therefore, the @code{fixed} annotation is not necessary now.  However,
 2989: @c we plan to support variable width fonts in future Emacs versions, and
 2990: @c other systems that display text/enriched format may not use a
 2991: @c fixed-width font as the default.  So if you specifically want a certain
 2992: @c part of the text to use a fixed-width font, you should specify the
 2993: @c @code{fixed} face for that part.
 2994: @code{fixed}フェイスは、『この部分のテキストには固定幅フォントを使用する』と
 2995: いう意味です。
 2996: 現在、Emacsは固定幅フォントにだけ対応しています。
 2997: したがって、@code{fixed}の注記は今のところ必要ありません。
 2998: しかしながら、将来のEmacsでは可変幅フォントに対応したり、
 2999: 固定幅フォントをデフォルトとしないtext/enriched形式を
 3000: 表示可能な他のシステムを計画しています。
 3001: ですから、固定幅フォントをどうしても使いたい箇所には、
 3002: その部分のテキストに@code{fixed}を指定するべきです。
 3004: @c   The @code{fixed} face is normally defined to use a different font from
 3005: @c the default.  However, different systems have different fonts installed,
 3006: @c so you may need to customize this.
 3007: 通常、@code{fixed}フェイスには、デフォルトと異なるフォントを使うように
 3008: 定義されています。
 3009: ところが、システムごとにさまざまなフォントがありますから、
 3010: この定義をカスタマイズする必要があるかもしれません。
 3012: @c   If your terminal cannot display different faces, you will not be able
 3013: @c to see them, but you can still edit documents containing faces.  You can
 3014: @c even add faces and colors to documents.  They will be visible when the
 3015: @c file is viewed on a terminal that can display them.
 3016: 異なるフェイスを表示できない端末ではそれらの違いを目にすることはできませんが、
 3017: それでも、さまざまなフェイスを含む文書の編集は行えます。
 3018: 文書にフェイスや表示色を追加することもできます。
 3019: それらを表示可能な端末で見たときにフェイスや色を目にすることができます。
 3021: @node Format Colors, Format Indentation, Format Faces, Formatted Text
 3022: @c @subsection Colors in Formatted Text
 3023: @subsection 整形済みテキストの表示色
 3025: @c   You can specify foreground and background colors for portions of the
 3026: @c text.  There is a menu for specifying the foreground color and a menu
 3027: @c for specifying the background color.  Each color menu lists all the
 3028: @c colors that you have used in Enriched mode in the current Emacs session.
 3029: テキストの部分ごとに前景色と背景色を指定できます。
 3030: 前景色を指定するメニューと背景色を指定するメニューがあります。
 3031: これらのメニューには、そのEmacsセッションのエンリッチ(enriched)モードで
 3032: 使っている表示色一覧が表示されます。
 3034: @c   If you specify a color with a prefix argument---or, in Transient Mark
 3035: @c mode, if the region is not active---then it applies to your next
 3036: @c self-inserting input.  @xref{Transient Mark}.  Otherwise, the command
 3037: @c applies to the region.
 3038: 前置引数とともに表示色を指定したり、
 3039: 暫定マーク(transient-mark)モードでリージョンが選択されていなければ、
 3040: つぎに入力する自己挿入文字だけに作用します。
 3041: @xref{Transient Mark}。
 3042: そうでなければ、コマンドはリージョンに作用します。
 3044: @c   Each color menu contains one additional item: @samp{Other}.  You can use
 3045: @c this item to specify a color that is not listed in the menu; it reads
 3046: @c the color name with the minibuffer.  To display list of available colors
 3047: @c and their names, use the @samp{Display Colors} menu item in the Text
 3048: @c Properties menu (@pxref{Editing Format Info}).
 3049: それぞれの表示色メニューにはもう1つ@samp{Other}という項目があります。
 3050: この項目は、メニューに表示されていない表示色を指定するために使います。
 3051: これは、ミニバッファで表示色名称を読み取ります。
 3052: 利用可能な表示色と名前の一覧を表示するには、
 3053: Text Propertiesメニューの@samp{Display Colors}項目を使います
 3054: (@pxref{Editing Format Info})。
 3056: @c   Any color that you specify in this way, or that is mentioned in a
 3057: @c formatted text file that you read in, is added to both color menus for
 3058: @c the duration of the Emacs session.
 3059: このようにして指定した表示色や、
 3060: 読み込んだ整形済みテキスト内で使われている表示色は、
 3061: そのEmacsセッション中は、両方の表示色メニューに追加されます。
 3063: @findex facemenu-set-foreground
 3064: @findex facemenu-set-background
 3065: @c   There are no key bindings for specifying colors, but you can do so
 3066: @c with the extended commands @kbd{M-x facemenu-set-foreground} and
 3067: @c @kbd{M-x facemenu-set-background}.  Both of these commands read the name
 3068: @c of the color with the minibuffer.
 3069: 表示色を指定するためのキーバインディングはありませんが、
 3070: 拡張コマンド@kbd{M-x facemenu-set-foreground}や
 3071: @kbd{M-x facemenu-set-background}を使えばできます。
 3072: どちらのコマンドもミニバッファで表示色名称を読み取ります。
 3074: @node Format Indentation, Format Justification, Format Colors, Formatted Text
 3075: @c @subsection Indentation in Formatted Text
 3076: @subsection 整形済みテキストの字下げ
 3078: @c   When editing formatted text, you can specify different amounts of
 3079: @c indentation for the right or left margin of an entire paragraph or a
 3080: @c part of a paragraph.  The margins you specify automatically affect the
 3081: @c Emacs fill commands (@pxref{Filling}) and line-breaking commands.
 3082: 整形済みテキストの編集では、段落全体あるいは段落の一部に
 3083: 異なる左端と右端の字下げを指定できます。
 3084: 指定した左右端は、自動的に詰め込みコマンド(@pxref{Filling})と
 3085: 行分割コマンドに反映されます
 3087: @c   The Indentation submenu provides a convenient interface for specifying
 3088: @c these properties.  The submenu contains four items:
 3089: Indentationサブメニューは、
 3090: これらの属性を指定するための便利なインターフェイスです。
 3091: このサブメニューにはつぎの4つの項目があります。
 3093: @table @code
 3094: @c @kindex C-x TAB @r{(Enriched mode)}
 3095: @kindex C-x TAB @r{(エンリッチモード)}
 3096: @findex increase-left-margin
 3097: @item Indent More
 3098: @c Indent the region by 4 columns (@code{increase-left-margin}).  In
 3099: @c Enriched mode, this command is also available on @kbd{C-x @key{TAB}}; if
 3100: @c you supply a numeric argument, that says how many columns to add to the
 3101: @c margin (a negative argument reduces the number of columns).
 3102: リージョンを4桁分字下げする(@code{increase-left-margin})。
 3103: エンリッチ(enriched)モードでは、
 3104: このコマンドは@kbd{C-x @key{TAB}}でも実行できる。
 3105: 数引数を指定すると、左端に加える桁数として扱う(負の値であれば桁を減らす)。
 3107: @item Indent Less
 3108: @c Remove 4 columns of indentation from the region.
 3109: リージョンから4桁分字下げを取り除く。
 3111: @item Indent Right More
 3112: @c Make the text narrower by indenting 4 columns at the right margin.
 3113: 右端を4桁分字下げしてテキストの幅を狭める。
 3115: @item Indent Right Less
 3116: @c Remove 4 columns of indentation from the right margin.
 3117: 右端から4桁分字下げを取り除く。
 3118: @end table
 3120: @c   You can use these commands repeatedly to increase or decrease the
 3121: @c indentation.
 3122: なお、これらのコマンドを繰り返せば、字下げを増やしたり減らしたりできます。
 3124: @c   The most common way to use these commands is to change the indentation
 3125: @c of an entire paragraph.  However, that is not the only use.  You can
 3126: @c change the margins at any point; the new values take effect at the end
 3127: @c of the line (for right margins) or the beginning of the next line (for
 3128: @c left margins).
 3129: これらのコマンドの一般的な使い方は、段落全体の字下げを変更することです。
 3130: しかし、それだけではありません。
 3131: 任意の箇所で左右端を変更できます。
 3132: 新たに設定された値は、行末(右端)や
 3133: つぎの行の先頭(左端)に影響します。
 3135: @c   This makes it possible to format paragraphs with @dfn{hanging indents},
 3136: @c which means that the first line is indented less than subsequent lines.
 3137: @c To set up a hanging indent, increase the indentation of the region
 3138: @c starting after the first word of the paragraph and running until the end
 3139: @c of the paragraph.
 3140: それにより、@dfn{ぶら下がり字下げ}で段落を整形することができます。
 3141: ぶら下がり字下げとは、1行目の字下げ幅が2行目以降の字下げ幅より少ないものです。
 3142: ぶら下がり字下げするには、段落の最初の単語の直後から始まり段落の末尾まで
 3143: 続くリージョンの字下げ幅を増やします。
 3145: @c   Indenting the first line of a paragraph is easier.  Set the margin for
 3146: @c the whole paragraph where you want it to be for the body of the
 3147: @c paragraph, then indent the first line by inserting extra spaces or tabs.
 3148: 段落の1行目の字下げはもっと簡単です。
 3149: 段落の本体があるべき位置に段落全体に対する左右端を設定してから、
 3150: 最初の行に追加の空白やタブを挿入すればよいのです。
 3152: @c   Sometimes, as a result of editing, the filling of a paragraph becomes
 3153: @c messed up---parts of the paragraph may extend past the left or right
 3154: @c margins.  When this happens, use @kbd{M-q} (@code{fill-paragraph}) to
 3155: @c refill the paragraph.
 3156: 編集の結果、段落の詰め込みが汚くなってしまうことがあります。
 3157: たとえば、段落の一部が左端や右端からはみ出してしまうことです。
 3158: そうなったときには、@kbd{M-q}(@code{fill-paragraph})を使って、
 3159: 段落を詰め込み直します。
 3161: @vindex standard-indent
 3162: @c   The variable @code{standard-indent} specifies how many columns these
 3163: @c commands should add to or subtract from the indentation.  The default
 3164: @c value is 4.  The overall default right margin for Enriched mode is
 3165: @c controlled by the variable @code{fill-column}, as usual.
 3166: 変数@code{standard-indent}は、これらのコマンドで増減する字下げ幅を指定します。
 3167: デフォルト値は4です。
 3168: エンリッチ(Enriched)モード全体に対する右端のデフォルトは、
 3169: 通常どおり変数@code{fill-column}で制御します。
 3171: @c   The fill prefix, if any, works in addition to the specified paragraph
 3172: @c indentation: @kbd{C-x .} does not include the specified indentation's
 3173: @c whitespace in the new value for the fill prefix, and the fill commands
 3174: @c look for the fill prefix after the indentation on each line.  @xref{Fill
 3175: @c Prefix}.
 3176: 詰め込み接頭辞があれば、指定した段落の字下げに追加されます。
 3177: @kbd{C-x .}は、
 3178: 詰め込み接頭辞として新たに指定された値には、字下げの白文字を含めません。
 3179: しかも、詰め込みコマンドは各行の字下げのうしろにある詰め込み接頭辞を探します。
 3180: @xref{Fill Prefix}。
 3182: @node Format Justification, Format Properties, Format Indentation, Formatted Text
 3183: @c @subsection Justification in Formatted Text
 3184: @subsection 整形済みテキストの幅揃え
 3186: @c   When editing formatted text, you can specify various styles of
 3187: @c justification for a paragraph.  The style you specify automatically
 3188: @c affects the Emacs fill commands.
 3189: 整形済みテキストの編集では、段落に対してさまざまなスタイルの揃え方を
 3190: 指定できます。
 3191: 指定したスタイルは自動的にEmacsの詰め込みコマンドに影響します。
 3193: @c   The Justification submenu provides a convenient interface for specifying
 3194: @c the style.  The submenu contains five items:
 3195: Justificationサブメニューは、
 3196: スタイルを指定するための便利なインターフェイスです。
 3197: このサブメニューにはつぎの5項目があります。
 3199: @table @code
 3200: @item Flush Left
 3201: @c This is the most common style of justification (at least for English).
 3202: @c Lines are aligned at the left margin but left uneven at the right.
 3203: これは(少なくとも英語では)もっとも一般的な幅揃えスタイル。
 3204: 行は左端に揃えられるが、右側は不揃いのまま。
 3206: @item Flush Right
 3207: @c This aligns each line with the right margin.  Spaces and tabs are added
 3208: @c on the left, if necessary, to make lines line up on the right.
 3209: 右端に行を揃える。
 3210: 必要に応じて左側に空白やタブを挿入して右側で行を揃える。
 3212: @item Full
 3213: @c This justifies the text, aligning both edges of each line.  Justified
 3214: @c text looks very nice in a printed book, where the spaces can all be
 3215: @c adjusted equally, but it does not look as nice with a fixed-width font
 3216: @c on the screen.  Perhaps a future version of Emacs will be able to adjust
 3217: @c the width of spaces in a line to achieve elegant justification.
 3218: 行ごとに左右両端を揃える。
 3219: このスタイルで揃えると空白を均等に挿入する。
 3220: 印刷物では見栄えがたいへんよいが、
 3221: 画面上の固定幅フォントではそれほど美しくない。
 3222: たぶん、将来のEmacsでは行内の空白量を調節できるようになり、
 3223: エレガントな幅揃えが達成できるであろう。
 3225: @item Center
 3226: @c This centers every line between the current margins.
 3227: 各行を現在の左右端の中央に揃える。
 3229: @item None
 3230: @footnote{【訳注】
 3231: メニューには@samp{None}ではなく@samp{Unfilled}が表示される。}
 3232: @c This turns off filling entirely.  Each line will remain as you wrote it;
 3233: @c the fill and auto-fill functions will have no effect on text which has
 3234: @c this setting.  You can, however, still indent the left margin.  In
 3235: @c unfilled regions, all newlines are treated as hard newlines (@pxref{Hard
 3236: @c and Soft Newlines}) .
 3237: 詰め込みをいっさい止める。
 3238: 各行は入力したままになる。
 3239: つまり、この設定をしたテキストでは、
 3240: 詰め込みコマンドも自動詰め込み機能も何の効果もない。
 3241: それでも、左端を字下げすることは可能。
 3242: 詰め込まないリージョンでは、改行はすべてハード改行として扱う
 3243: (@pxref{Hard and Soft Newlines})。
 3244: @end table
 3246: @c   In Enriched mode, you can also specify justification from the keyboard
 3247: @c using the @kbd{M-j} prefix character:
 3248: エンリッチ(enriched)モードでは、
 3249: @kbd{M-j}プレフィックス文字を使ってキーボードで幅揃えを指定することもできます。
 3251: @table @kbd
 3252: @c @kindex M-j l @r{(Enriched mode)}
 3253: @kindex M-j l @r{(エンリッチモード)}
 3254: @findex set-justification-left
 3255: @item M-j l
 3256: @c Make the region left-filled (@code{set-justification-left}).
 3257: リージョンを左端揃えにする(@code{set-justification-left})。
 3258: @c @kindex M-j r @r{(Enriched mode)}
 3259: @kindex M-j r @r{(エンリッチモード)}
 3260: @findex set-justification-right
 3261: @item M-j r
 3262: @c Make the region right-filled (@code{set-justification-right}).
 3263: リージョンを右端揃えにする(@code{set-justification-right})。
 3264: @c @kindex M-j f @r{(Enriched mode)}
 3265: @kindex M-j f @r{(エンリッチモード)}
 3266: @findex set-justification-full
 3267: @item M-j f
 3268: @c Make the region fully-justified (@code{set-justification-full}).
 3269: リージョンを左右端揃えにする(@code{set-justification-full})。
 3270: @c @kindex M-j c @r{(Enriched mode)}
 3271: @c @kindex M-S @r{(Enriched mode)}
 3272: @kindex M-j c @r{(エンリッチモード)}
 3273: @kindex M-S @r{(エンリッチモード)}
 3274: @findex set-justification-center
 3275: @item M-j c
 3276: @itemx M-S
 3277: @c Make the region centered (@code{set-justification-center}).
 3278: リージョンを中央揃えにする(@code{set-justification-center})。
 3279: @c @kindex M-j u @r{(Enriched mode)}
 3280: @kindex M-j u @r{(エンリッチモード)}
 3281: @findex set-justification-none
 3282: @item M-j u
 3283: @c Make the region unfilled (@code{set-justification-none}).
 3284: リージョンでは詰め込まない(@code{set-justification-none})。
 3285: @end table
 3287: @c   Justification styles apply to entire paragraphs.  All the
 3288: @c justification-changing commands operate on the paragraph containing
 3289: @c point, or, if the region is active, on all paragraphs which overlap the
 3290: @c region.
 3291: 揃え方のスタイルは段落全体に適用されます。
 3292: 揃え方を変更するコマンドは、ポイントを含む段落に作用しますが、
 3293: リージョンが設定されているときには
 3294: リージョンと重なる段落すべてが対象になります。
 3296: @vindex default-justification
 3297: @c   The default justification style is specified by the variable
 3298: @c @code{default-justification}.  Its value should be one of the symbols
 3299: @c @code{left}, @code{right}, @code{full}, @code{center}, or @code{none}.
 3300: 揃え方のスタイルのデフォルトは、
 3301: 変数@code{default-justification}で指定されます。
 3302: この値は、@code{left}、@code{right}、@code{full}、
 3303: @code{center}、@code{none}
 3304: @footnote{【訳注】詰め込まないことを指定するシンボルは
 3305: @samp{none}。@code{Unfilled}ではない。}
 3306: のいずれかのシンボルでなくてはいけません。
 3308: @node Format Properties, Forcing Enriched Mode, Format Justification, Formatted Text
 3309: @c @subsection Setting Other Text Properties
 3310: @subsection 他のテキスト属性の設定
 3312: @c   The Other Properties menu lets you add or remove three other useful text
 3313: @c properties: @code{read-only}, @code{invisible} and @code{intangible}.
 3314: @c The @code{intangible} property disallows moving point within the text,
 3315: @c the @code{invisible} text property hides text from display, and the
 3316: @c @code{read-only} property disallows alteration of the text.
 3317: Other Propertiesメニュー
 3318: @footnote{【訳注】@samp{Other Properties}ではなく、
 3319: @samp{Special Properties}と表示される。}には、
 3320: @code{read-only}、@code{invisible}、@code{intangible}といった有用な
 3321: テキスト属性を追加/削除する項目があります。
 3322: @code{intangible}属性はテキスト内にポイントを移動できなくし、
 3323: @code{invisible}属性はテキストを表示しないようにし、
 3324: @code{read-only}属性はテキストを変更できなくします。
 3326: @c   Each of these special properties has a menu item to add it to the
 3327: @c region.  The last menu item, @samp{Remove Special}, removes all of these
 3328: @c special properties from the text in the region.
 3329: これらの特別な属性には、
 3330: リージョンに属性を付加するためのメニュー項目があります。
 3331: 最後のメニュー項目@samp{Remove Special}は、
 3332: これらの特別な属性すべてをリージョンから取り除きます。
 3334: @c   Currently, the @code{invisible} and @code{intangible} properties are
 3335: @c @emph{not} saved in the text/enriched format.  The @code{read-only}
 3336: @c property is saved, but it is not a standard part of the text/enriched
 3337: @c format, so other editors may not respect it.
 3338: 現在のところ、@code{invisible}属性と@code{intangible}属性は、
 3339: text/enriched形式に保存され@emph{ません}。
 3340: @code{read-only}属性は保存されますが、
 3341: これはtext/enriched形式の標準的なものではないので、
 3342: Emacs以外の他のエディタでは使用されないかもしれません。
 3344: @node Forcing Enriched Mode,  , Format Properties, Formatted Text
 3345: @c @subsection Forcing Enriched Mode
 3346: @subsection エンリッチ(enriched)モードの強制
 3348: @c   Normally, Emacs knows when you are editing formatted text because it
 3349: @c recognizes the special annotations used in the file that you visited.
 3350: @c However, there are situations in which you must take special actions
 3351: @c to convert file contents or turn on Enriched mode:
 3352: 普通は、Emacsは訪問したファイル内にある特別な注記を認識するので、
 3353: 整形済みテキストを編集中であることがわかります。
 3354: ところが、ファイルの内容を変換するために特別な操作をしたり、
 3355: 手動でエンリッチ(enriched)モードをオンにする必要がある状況もあります。
 3357: @itemize @bullet
 3358: @item
 3359: @c When you visit a file that was created with some other editor, Emacs may
 3360: @c not recognize the file as being in the text/enriched format.  In this
 3361: @c case, when you visit the file you will see the formatting commands
 3362: @c rather than the formatted text.  Type @kbd{M-x format-decode-buffer} to
 3363: @c translate it.
 3364: 他のエディタで作成したtext/enriched形式のファイルを訪問すると、
 3365: Emacsがそのファイルをtext/enriched形式であると認識しないかもしれない。
 3366: こういった場合、ファイルを訪れると、
 3367: 整形済みテキストではなく整形コマンドを目にする。
 3368: @kbd{M-x format-decode-buffer}と打って形式を変換する。
 3370: @item
 3371: @c When you @emph{insert} a file into a buffer, rather than visiting it.
 3372: @c Emacs does the necessary conversions on the text which you insert, but
 3373: @c it does not enable Enriched mode.  If you wish to do that, type @kbd{M-x
 3374: @c enriched-mode}.
 3375: ファイルを訪問したのではなく、バッファにファイルを@emph{挿入}したとき。
 3376: Emacsは挿入されたテキストに対しては必要な変換を行うが、
 3377: エンリッチ(enriched)モードをオンにしない。
 3378: オンにしたければ、@kbd{M-x enriched-mode}と打つ。
 3379: @end itemize 
 3381: @c   The command @code{format-decode-buffer} translates text in various
 3382: @c formats into Emacs's internal format.  It asks you to specify the format
 3383: @c to translate from; however, normally you can type just @key{RET}, which
 3384: @c tells Emacs to guess the format.
 3385: コマンド@code{format-decode-buffer}は、
 3386: さまざまな形式のテキストをEmacsの内部形式に変換します。
 3387: このコマンドは、どの形式からの変換であるのかを尋ねてきますが、
 3388: 通常は単に@key{RET}を打てばEmacsが形式を推測します。
 3390: @findex format-find-file
 3391: @c   If you wish to look at text/enriched file in its raw form, as a
 3392: @c sequence of characters rather than as formatted text, use the @kbd{M-x
 3393: @c find-file-literally} command.  This visits a file, like
 3394: @c @code{find-file}, but does not do format conversion.  It also inhibits
 3395: @c character code conversion (@pxref{Coding Systems}) and automatic
 3396: @c uncompression (@pxref{Compressed Files}).  To disable format conversion
 3397: @c but allow character code conversion and/or automatic uncompression if
 3398: @c appropriate, use @code{format-find-file} with suitable arguments.
 3399: text/enriched形式のファイルをそのままの形、
 3400: つまり、整形済みテキストではなく文字列として見たいのであれば、
 3401: @kbd{M-x find-file-literally}コマンドを使います。
 3402: このコマンドは@code{find-file}のようにファイルを訪問しますが、
 3403: 形式変換を行いません。
 3404: 文字コード変換(@pxref{Coding Systems})と
 3405: 自動展開(@pxref{Compressed Files})も禁止します。
 3406: 形式変換を禁止しても、適宜、文字コード変換や自動展開を行わせたいのであれば、
 3407: 適当な引数を指定して@code{format-find-file}を使います。

FreeBSD-CVSweb <>