
使用すると仮定しますxparseそして
\NewDocumentCommand{\macro}{+m}{%
\addcontentsline{foo}{#1}%
}%
次の\macro{some text}
ような .aux ファイルに入ります\@writefile{foo}{some text}
。
時々、私は処理された素材を同様の方法で逐語的キャットコード制度の下でトークン化したいと考えます。つまり、
\verbmacro|some text
some text
some text|
.aux ファイル内の( と\newlinechar=\endlinechar
即時書き込みを使用して、 の変更が\newlinechar
aux ファイルへの書き込み中に有効であることを保証) は次のようになります。
\@writeVerbatimArgFile{foo}|some text
some text
some text|
\@writeVerbatimArgFile
2 番目の引数を+v
-type 引数として処理できます。
重要な点は次のとおりです。
\verbmacro
の引数を-type 引数にすると+v
、周囲の逐語的区切り文字は削除されます。ただし、これは .aux ファイルの -entry にも表示されるため必要です\@writeVerbatimArgFile
。
したがって、私の質問は次のとおりです。
追加するとxparsev
逐語的区切り文字が削除されない/+v
のような引数タイプは意味がありますか?
これを利用する人は、それを実装するほど少数派なのでしょうか?xparse努力する価値がないのでしょうか?
誤解しないでください。これは「私にやらせてください!」という質問ではありません。私はすでに自分のルーチンを持っています(xparse)のようなことを行うためのルーチンです。例えば\UDcollectverbarg
、私の答え質問に対して固有の要件IDと対応するテスト方法のリスト" は、区切り文字の有無にかかわらず、逐語的に表現された引数を収集します。
問題は、そのような引数タイプが頻繁に使用されるかどうかです。そのため、それを実装し、基礎となるマクロ メカニズムを格納するためにメモリ リソースを費やす労力は価値があるでしょうか。
一見すると、.aux ファイルに書き込む前に、-type 引数の先頭と末尾に を追加する\verbmacro
方法で定義することが考えられます。|
+v
そうすると、次のようなことはできない
\verbmacro?some text with | in it?
もう。
ハードコードすると、次のようなエントリ|
が取得されます\@writeVerbatimArgFile
。
\@writeVerbatimArgFile{foo}|some text with | in it|
これは問題になるかもしれません。
逐語的区切り文字がハードコードされずに渡される場合、次のようになります。
\@writeVerbatimArgFile{foo}?some text with | in it?
、これは問題にならないはずです...