スタンドアロンと Gensymb の競合の診断

スタンドアロンと Gensymb の競合の診断

免責事項: 私は LaTeX の初心者で、独学で学びました。

私は「単位円」TikZ グラフィックを作成しようとしていますが、その中でパッケージ\degreeのシンボルをgensymbノードのラベル テキストに表示したいと考えています。

私の現在のワークフローにはstandaloneパッケージが関係しており、\includeコマンドを使用して、それぞれの作品を独自のページに収めた一種の「マスター ファイル」を作成し、他の Overleaf プロジェクトで「別のプロジェクトからの出力ファイル」とパッケージを使用して参照することでgraphicxコンパイル時間を短縮しています。おそらくこれよりも良い方法があるでしょうが、私にとってはこれで十分シンプルですし、すべてをほぼ同じ場所にまとめて、画像間で簡単に参照できるようにしたいと思っています。これまではうまくいっていましたが、今となっては...

私の問題は、新しい画像を追加するたびにマスター ドキュメントのプリアンブルを更新しなくてもよい方がよいということです。特に、同じ名前 (gradient1 など) を使用することもある色などを定義する場所であるためです。したがって、\usepackage[subpreambles]{standalone}各スタンドアロンのプリアンブルを個別に読み込んで読み込みます。繰り返しますが、これはこれまでのところ十分に機能しており、問題があれば自分で解決できました。

[subpreambles]正確な原因を診断することはできませんでしたが、タグとパッケージの読み込みに何か問題がありますgensymb。これが私の MWE です:

\documentclass[tikz]{standalone}
\usepackage{textcomp,gensymb} % for degree symbol

\begin{document}
\begin{tikzpicture}
        \node at (0,0) {$0\degree$};
\end{tikzpicture}
\end{document}

これは Overleaf に として保存されていますdegree-test.tex。このファイルを別のファイルで参照しようとすると、次のようになります。

\documentclass[tikz]{standalone}
\usepackage[subpreambles]{standalone}

\begin{document}
    \include{degree-test}
\end{document}

次のエラーが発生します:Package standalone Warning: Sub-preamble of file 'degree-test.tex' has changed. Content will be ignored. Please rerun LaTeX! on input line 4.

私は LuaLaTeX でコンパイルしていますが、他のコンパイラでも同様の結果が出ます。\degreeノード ラベルから削除しても、実際にはシンボルを使用していないにもかかわらず、エラーが発生します。プリアンブル中に特定のものを定義するコマンドと何らかの競合があるはずですが、エラー ログの読み方がわからず、表面的には非常に恐ろしいものです。

これに対する簡単な解決策はありますか?

編集: 私も失格\documentclass[tikz]{standalone}と犯人として\includeVSしました。\includestandalone

答え1

それで、ユーザー@DavislorによるとこのTeX.SEフォーラム、パッケージを削除してgensymb、最新の LaTeX ディストリビューションの一部である を単に使用できます\textdegree。数式モードでは動作しないので残念ですが、私のアプリケーションでは、これは渋々受け入れるしかありません。 使用しても$\textrm{\textdegree}$問題ありません。

興味がある人のために言っておくと、パッケージ\ang{}で提供される はsiunitx私の好みには空っぽすぎるように見えますが、これは上記のリンク先の投稿で示されているように と同じです^\circ

関連情報