ascii と siunitx パッケージが衝突する

ascii と siunitx パッケージが衝突する

asciiパッケージとパッケージの両方をロードしたいのですがsiunitx、問題は両方がシンボルを定義していることです\SI。両方のパッケージを連携させる方法はありますか?

答え1

asciiマクロの機能を\SI別の(これまで使用されていない)マクロ(たとえば、\aSI)に「保存」し、その後パッケージ\let\SI\relaxをロードすることができます。(他のパッケージがのバリアントになることをsiunitx想定していないことを事前に確認してください。)\SIascii

\documentclass{article}

\usepackage{ascii}

\let\aSI\SI

\let\SI\relax

\usepackage{siunitx}

\begin{document}

Some text.

\end{document}

答え2

私は、savesymパッケージ。

\documentclass{article}

\usepackage{savesym}
\usepackage{siunitx}
\savesymbol{SI}
\usepackage{ascii}
\restoresymbol{a}{SI}


\begin{document}
\asciifamily

Some Text and \aSI. Some units \SI{2}{\m\per\second}.

\end{document}

出力

参照https://texfaq.org/FAQ-alreadydef参考までに。

関連情報