
私は最近、論文を次のようにいくつかのネストされたファイルに分割することにしました。
% メイン.tex
\documentclass{memoir}
\usepackage{subfiles}
\usepackage{siunitx}
\include{units}
\begin{document}
\subfile{pre_textual} % ToC, lists, etc.
\subfile{textual}
\subfile{pos_textual}
\end{document}
単位ファイルは main.tex と同じディレクトリにあります。通常のサブファイルは次のとおりです。
%textual.tex
\documentclass[../../main.tex]{subfiles} %this is because it's nested
\begin{document}
\subfile{chapter1}
\subfile{chapter2}
\end{document}
%chapter1.tex
\documentclass[../../../main.tex]{subfiles} %this is because it's nested
\begin{document}
text yada \si{\CustomUnit}
\end{document}
問題は、サブファイル(テキストまたは章)をコンパイルすると、ユニットファイルが見つからないことです。フルパスを追加すると、units.tex
エラーが発生します。
Can't write to the file
編集:
私のunits.texファイルは次のようになります
\DeclareSIUnit{\lix}{g/cm^2\day}
\DeclareSIUnit{\molp}{\mole\%}
\DeclareSIUnit{\taxaresf}{\degreeCelsius/\minute}
ただし、行数が多く、別々のファイルを作成する必要があるほど十分な単位があります。
答え1
私が見つけた解決策は、include の代わりにフルパスを追加することでしたinput
。フルパスなしで単純に入力しても機能しません。
結局、私はこうなります:
\usepackage{siunitx}
\input{D:/OneDrive/Documents/Thesis_latex/units}
これは、subfiles
\include
パッケージはプリアンブル内の sを好みません。
マニュアルのセクション2.3:
メイン ファイルのプリアンブルには、\input (\include や \subfile ではない) ファイル (定義と短縮コマンドを含む vg ファイル) を含めることができ、サブファイルも同様です。