古いtexliveでchemfigを使うには【setchemfigとchargeの落とし穴】
chemfigは化学マクロの中では最も解説ブログが豊富だが、そこに書かれている通りにやろうとしても2017以前のtexliveユーザーは頓挫することがある。
texliveを最新版にアップデートすればそれらの問題は解決するが、アップデートがうまくいかず、当分は今のバージョンのtexliveを使い続けなければならない人向けの解決策を紹介する。
なお、2017年以前のtexliveといちいち書くのは面倒なので、以降、『2017年以前のtexlive』を『texlive~2017』と表記する。
同様に『2019年以前のtexlive』を『texlive~2019』と表記する。
- 問題1…texlive~2017搭載のchemfigでは\setchemfigは使えない
- 問題2…texlive~2019搭載のchemfigでは\chargeは使えない
- 問題3…texlive~2017ではv1.54以降のchemfigは動作しない
問題1…texlive~2017搭載のchemfigでは\setchemfigは使えない
\setchemfigが使えるのは、2018/3/8に公開されたv1.3以降のchemfigらしい。
CTANのchemfigのページではアップデートの履歴を閲覧できるが、v1.3公開のお知らせに\setchemfig新登場の記載がある。
CTAN: CTAN-ann - CTAN Update: chemfig
texlive~2017には、当然のことながらそれ以前のバージョンのchemfigが搭載されているため、\setchemfigは使えない。その場合、以前存在した\setchemfigの代わりとなるコマンドを使用する必要がある。
atom sepの設定についての一例を示す。
%texlive2018以降搭載のchemfigでの表現 \setchemfig{atom sep=3em} \chemfig[atom sep=3em]{} %texlive~2017搭載のchemfigでの表現 \setatomsep{3em}
問題2…texlive~2019搭載のchemfigでは\chargeは使えない
CTANから入手できる最新のマニュアル(パッケージドキュメント)
https://ftp.kddilabs.jp/CTAN/macros/generic/chemfig/chemfig-en.pdf
には、『v1.5以降、\Lewisコマンドや\lewisコマンドが\chargeコマンドに置き換わりました』という趣旨の記述がある。
v1.5の公開が20203/5なので、それ以前のchemfigが搭載されているtexlive~2019では旧バージョンのコマンドである\lewisを使うしかない。
\lewisの使い方を知るには旧バージョンのchemfigのマニュアルを参照する必要があるが、現在CTANで閲覧できるのは最新バージョンのマニュアルのみだ。
windows10にLaTeX2e美文書作成入門改訂第7版のDVD-ROMでtexliveをインストールした場合のchemfigマニュアルの在り処を参考までに載せておく。
問題3…texlive~2017ではv1.54以降のchemfigは動作しない
以上のように、ブログなどの情報を頼りに古いchemfigを使うのには様々な問題が伴う。
ならば、
CTANから最新のchemfigをインストールすればいいのでは?
…という考えに至るのも自然なことだが、実はそれもうまくいかない。
その理由は、CTANから入手できる最新のマニュアル(パッケージドキュメント)の1.1節に記載されている。
難しい話はよくわからないが平たくいえば、『v1.54以降のchemfigは古いtexlive等では動作しませんよ』と書かれてあるのだ。
古いバージョンのchemfigを入手するのもおそらく不可能なので、texlive自体の更新が困難ならば、やはりchemfigの旧ルールに従い続けるしかない。