次: ifset ifclear, 上: set clear value
@setと@value
フラグに対する値を指定するために@setコマンドを使用し,それは後に
@valueコマンドで展開されます.
フラグ(flag)は識別子です.一般的に,フラグ名には文字と数字のみを使 用し,`-'や`_'は使用しないことが最善です — それらが動作する 文脈もありますが,TeXの制限のため全てが動作するわけではありません.
値は入力行の残りの文字による文字列で,あらゆるものを含めることが可能です.
@setコマンドは以下のように書きます.
@set foo これは文字列です.
これは,フラグfooの値を“これは文字列です”に設定します.
そのとき,Texinfoフォーマッタは@value{flag}コマンドを
flagに設定された文字列に置換します.このためfooが上記のよう
に設定されている場合,Texinfoフォーマッタは以下のように変換します.
@value{foo}
上記を以下に変換
これは文字列です
@valueコマンドを段落の中に書くことも可能です.しかし,
@setコマンドは単独行に書く必要があります.
@setコマンドを以下のように書く場合を考えます.
@set foo
文字列を指定していないので,fooの値は空の文字列になります.
@clear flagで前に設定されたフラグをクリアする場合,それに
続く@value{flag}コマンドはエラーを報告します.
例えば,以下のようにfooを設定した場合を考えます.
@set how-much very, very, very
そのとき,フォーマッタは以下のように変換します.
It is a @value{how-much} wet day.
上記を以下変換
It is a very, very, very wet day.
以下のように書いた場合を考えます.
@clear how-much
そのとき,フォーマッタは以下のように変換します.
It is a @value{how-much} wet day.
上記を以下に変換
It is a {No value for "how-much"} wet day.