[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

14. 改行,改ページの作成と阻止

通常Texinfoファイルは,TeXとInfo書式化コマンドの一つの,両方で処理さ れます.行,段落,ページの分割は,出力のどれかで`間違った'場所で発生する こともあります.印刷されたマニュアルとInfoファイルの両方でテキストが正し く見えるように確認する必要があります.

例えば印刷されたマニュアルでは,ページの分割は例の途中で不恰好に発生する かもしれません.これを避けるため,テキストを2ページに分割することから守 るグループコマンドを使用してテキストを保つことができます.反対に,通常発 生しない場所で改ページを強制したい場合もあります.幸い,これらの問題は滅 多にありません.そうするときは,改行や改ページ,改行や改ページ防止,また はページ作成コマンドを使用してください.

14.1 改行,改ページコマンド  Summary of break-related commands.
14.2 @*: 改行の生成  Forcing line breaks.
14.3 @-@hyphenation: TeXのハイフネーションを助ける  Helping TeX with hyphenation points.
14.4 @w{text}: 改行を妨げる  Preventing unwanted line breaks in text.
14.5 @tie{}: 改行されないスペースを挿入する  Inserting an unbreakable but varying space.
14.6 @sp n: 空白行の挿入  Inserting blank lines.
14.7 @page: 新しいページの開始  Forcing the start of a new page.
14.8 @group: 改ページを妨げる  Preventing unwanted page breaks.
14.9 @need mils: 改ページを妨げる  Another way to prevent unwanted page breaks.


14.1 改行,改ページコマンド

改行,改ページコマンドは,行や段落の分割や作成を許可します.

@*
強制改行します.

@sp n
n個の空白行を省略します.

@-
任意のハイフンを挿入します.

@hyphenation{hy-phen-a-ted words}
hy-phen-a-ted wordsのハイフネーションポイントを定義します.

以下のコマンドは,テキストを単一行に維持します.

@w{text}
textを改行やハイブネーションで二行に跨ることを避けます.
@tie{}
改行が生じではならない場所に,単語内に普通のスペースを挿入します.

Infoはページが無いので,ページコマンドは印刷物のみで適用されます.

@page
印刷されたマニュアルで新しいページを開始します.

@group
印刷された1ページに現れるよう,テキストを一緒に保ちます.

@need mils
当該ページに十分余白が無い場合,新しい印刷ページを開始します.


14.2 @*: 改行の生成

@*コマンドは,印刷されたマニュアルとInfoの両方で,強制的に改行し ます.

例えば,以下のようにします.

 
この行は@* 2箇所で@*分割されます.

以下を生成します.

 
この行は
 二箇所で
分割されています.

(最初の@*コマンドの後のスペースは,次の行にそのまま運ばれること に注意してください.)

@*コマンドは,ファイルの著作権ページでよく使用されます.

 
これは,Texinfoドキュメントのエディション2.0@*
それは...

この状況では,@*コマンドは,TeXが醜い方法でページ全体に行を引 き延ばすことを阻止します.

注意してください:@*コマンドの後にカッコを書かないでくだ さい.それらは不要です.

@*コマンドを含む段落の終りに@refillコマンドを書かないで ください.それは改行の発生後に段落を補充し,改行の効果を否定します.


14.3 @-@hyphenation: TeXのハイフネーションを助ける

TeXのハイフネーションアルゴリズムは一般にかなり良いのですが,時々役に 立つハイフネーションポイントに失敗します.(滅多に無いことですが,間違っ たハイフネーションを挿入します.)そのため,通常の語彙のドキュメントや良 く調整された印刷エディションのため,TeX出力を助けたいと思うかもしれま せん.Texinfoはこのための二つのコマンドをサポートします.

@-
任意のハイフン,すなわちTeXでハイフネーション可能な(が必須ではない)場 所を挿入します.これはTeXがハイフネーションを失敗したため,overfull hbox(see section 19.10 Overfull "hboxes")を警告されたとき特に便利です.TeXは @-を含む単語にハイフネーションポイント自身を挿入しません.

@hyphenation{hy-phen-a-ted words}
TeXにhy-phen-a-ted wordsのハイフネーション方法を伝えます.御覧 のように,`-'をそれぞれのハイフネーションポイントに置きます.例えば 以下のようにします.
 
@hyphenation{man-u-script man-u-scripts}
TeXは,正しく一致した単語のときのみ指定されたハイフネーションポイント を使用するので,必要な変形を全て与えてください.

Info出力はハイフネーションしないので,これらのコマンドはそこでは意味があ りません.


14.4 @w{text}: 改行を妨げる

@w{text}textを出力し,text内部での改行を妨 げます.

@wコマンドを,長い名前や文節を行の終り付近でTeXが生成する自動 的にハイフネーションを避けるために使用することが可能です.例えば,以下の ようにします.

 
You can copy GNU software from @w{@samp{ftp.gnu.org}}.

以下を生成します.

You can copy GNU software from `ftp.gnu.org'.

改行されないスペースを生成するために@wを使用することも可能で,そ れは単語内の普通のスペースの幅に修正されます.

 
@w{ } @w{ } @w{ } indentation.

以下を生成します.

 
      indentation.

@w{ }でのスペースは,改行不可のものと同様に間隔を広くした り狭くしたりしません.例えば,手動で字下げを行なっている状況がそうしたい 場合でしょう.しかし,単語内に(印刷した出力で)伸び縮みする普通のスペース が欲しいときもあります.次のセクションの@tieコマンドを見てくださ い.


14.5 @tie{}: 改行されないスペースを挿入する

@tie{}コマンドは,単語内の改行を生じさせてはならない普通のスペー スを生成します.段落内で使用されるコマンドのように,常に(空の)カッコを続 けて書いてください.例は以下のようになります.

 
@TeX{} was written by Donald E.@tie{}Knuth.

以下を生成します.

 
TeX was written by Donald E.@tie{}Knuth.

@tie{}@w{ }には,二つの重要な違いがあります.


14.6 @sp n: 空白行の挿入

@sp nのみを含むもので始まる行は,印刷されたマニュアルと Infoファイルの両方で,n個の空白行の空間を生成します.@spは 段落の分割も強制します.例えば,以下のようにします.

 
@sp 2

二行の空白行を生成します.

@spコマンドはタイトルページで最もよく使用されます.


14.7 @page: 新しいページの開始

@pageのみを含む行は印刷されたマニュアルで,新しいページを開始し ます.このコマンドは,Infoファイルではページが無いので効果がありません. @pageコマンドは,著作権ページを開始するため,Texinfoファイルの @titlepageセクションでよく使用されます.


14.8 @group: 改ページを妨げる

@groupコマンドは(単独行で),@exampleやそれに類似した縦方 向に分割不可能なグループを開始するものの内部で使用され,それは印刷物では, 1ページに全体が現れます.グループは@end groupのみを含む行で終了 します.この二つの行はそれ自身出力に現れず,Info出力では効果がありません.

@groupには様々な文脈で概念的な意味はありますが,現在の実装では, @exampleとその変種の@display@format@flushleft,そして@flushrightのみで確実に動作します. See section 10. 引用と例. (これら全てのコマンドが共通に持つものは, 入力のそれぞれの行が出力を生成することです.)他の内容では, @groupは異常な縦の空白を生成するはずです.

この書式の必要条件は,以下のように書くべきだということです.

 
@example
@group
...
@end group
@end example

このように,@group@end groupコマンドを用いて, @example@end exampleコマンドの中に書きます.

@groupコマンドは例を1ページにまとめるため,最もよく使用されます. このTexinfoマニュアルには,100以上の例として,@group@end groupで囲まれたテキストが含まれています.

グループの終了を忘れた場合,TeXを実行したとき,奇妙で不可解なエラーメッ セージを得るかもしれません.これは,TeXがTexinfoファイルの残りを1ペー ジを書こうとして,大量のテキストを処理するまでエラーメッセージの生成を開 始しないためです.TeXで理解できないエラーメッセージを得る場合, @end groupが無いところを探すことは,良い経験則です.


14.9 @need mils: 改ページを妨げる

@need nのみを含む行は,現在のページの残りがnミル(千 分の1インチ)以下の場合,印刷されたマニュアルで新しいページを開始します. 引数nの周りにカッコを使用しないでください.@needコマンドは, Infoはページが無いので,Infoでは効果はありません.

この段落は,ページの残りが800ミル(10分の8インチ)以下の場合,TeXに新し いページを開始するよう伝える,@needコマンドで処理されます.以下 のようにします.

 
@need 800
This paragraph is preceded by ...

@needコマンドは孤立行(印刷ページの底の単一行)を避けるのに役立ち ます.


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Akihiro Sagawa on January, 21 2003 using texi2html