Next: Changecom, Previous: Dnl, Up: Input Control
デフォルトの引用符は組み込みマクロchangequote
によって変更できます。
changequote(opt start, opt end)
startは新しい開始引用符でendは新しい終了引用符です。
もし欠けている引数があるときは、デフォルトの引用符(`
と '
)
がその欠けている引数の代わりに使用されます。
changequote
は展開されると消滅します。
changequote([, ]) define([foo], [Macro [foo].]) foo Macro foo.
適切な文字がないときはstartやendを好きな長さにしてかまいません。
changequote([[, ]]) define([[foo]], [[Macro [[[foo]]].]]) foo Macro [foo].
引用符を両方とも空文字列にすると、事実上クォート機構が無効になり、 テキストをクォートする方法が無くなります。
define(`foo', `Macro `FOO'.') changequote(, ) foo Macro `FOO'. `foo' `Macro `FOO'.'
changequote
を使って現在の引用符を替えない限り、
終了引用符と対になっていない開始引用符を含む文字列をクォートする
方法はm4
には存在しません。
入力に含まれる名前と混同されてしまうので、 どちらの引用符も記号でない普通の文字や‘_’ (アンダースコア)で 始めるべきではありません。そうした場合はクォート機構が無効になります。