LaTeXで、コンパイルされたPDFの変数の代わりにその内容が使われる文字列変数をどのように定義できますか?
私がソフトウェアに関する技術文書を書いていて、プリアンブルかどこかでパッケージ名を定義したいとしましょう。名前が変わっても、それを多くの場所で置き換える必要はなく、1か所だけで置き換えます。 。
あなたの前文に以下を追加してください。
\newcommand{\newCommandName}{text to insert}
それならあなたはテキストで\newCommandName{}
を使うことができます
\newcommand
の詳細については、以下を参照してください。 ウィキブックス
\def
コマンドを使用してください。
\def \variable {Something that's better to use as a variable}
\def
は警告なしに既存のマクロをオーバーライドするため、さまざまな微妙なエラーを引き起こす可能性があります。これを克服するには、my_var
のような名前空間変数を使用するか、代わりに\newcommand
、\renewcommand
コマンドにフォールバックします。
距離を記述する変数には\newlength
を使用します(そして\setlength
、\addlength
、\settoheight
、\settolength
および\settodepth
で値を操作します)。
同様に、あなたは\newcounter
へアクセスすることができて、セクション番号と図番号のようなものは文書を通して増加します。私は過去にこれを使用して、他の数字とは別に番号が付けられたコードサンプルを提供しました...
また、\makebox
も用意されており、後で再利用するために(そして\settolength
...と共に使用するために)レイアウトされた文書を少し保存することができます。
\newcommand
を使いたい場合は、\usepackage{xspace}
をインクルードし、\newcommand{\newCommandName}{text to insert\xspace}
でcommandを定義することもできます。これにより、\newCommandName
ではなく\newCommandName{}
を使用することができます。
詳細は http://www.math.tamu.edu/~harold.boas/courses/math696/why-macros.html
私はあなたがおそらくこの目的のためにトークンリストを使用したいと思うと思います:名前を割り当てるためにトークンリスト\newtoks\packagename
を設定するため:\packagename={New Name for the package}
あなたの出力に名前を入れるため:\the\packagename
。