カスタム ドキュメントクラスで htlatex が失敗する: エラー LaTeX エラー: ファイル `email' が見つかりません

カスタム ドキュメントクラスで htlatex が失敗する: エラー LaTeX エラー: ファイル `email' が見つかりません

個人カリキュラム用のカスタムクラスを作成しました。

https://github.com/igormorgado/elegantcv

pdlatex、XeTeX、LuaLaTeX でうまくコンパイルされますが、ビルドしようとするとhtlatexエラーが発生して失敗します。

Error LaTeX Error: File 'email' not found

同じエラーが発生する MWE をデバッグまたはビルドするのに十分な知識がありません (試してみました)。カスタム クラスへのすべての参照を削除するとエラーは削除されますが、それは問題自体に対する実際の MWE ではありません。

私が尋ねているのは次のことです:

  1. エラーを理解し、問題を正しく指摘できるように(そしておそらく自分で修正できるように)正しくデバッグする方法。

  2. htlatex でも実行でき、警告やエラーが発生しない、完璧に記述されたカスタム ドキュメント クラスを構築する方法。

  3. この問題を解決し、LaTeX クラスの HTML バージョンを構築できるようにする方法。

問題を再現するには(Unixの場合)

git clone https://github.com/igormorgado/elegantcv
cd elegantcv
make html

PS: 外部参照を作成することが SO の質問を処理する最善の方法ではないことはわかっていますが、クラス全体をここに貼り付ける方が良いでしょうか? もしそうなら、できます。

答え1

リポジトリのサンプル ファイルで別のエラーが発生しました。これはテーブルが原因でした。問題は、基本クラスとして使用する Memoir が、\cmidruleパッケージを要求せずに、Booktabs パッケージから他のコマンドを直接定義することです。そのため、tex4htこれらのコマンドのパッチ バージョンをロードできず、コンパイル エラーが発生します。ソースでこれを修正したtex4htので、今後は発生しないはずです。問題は、TeX Live が現在フリーズしているため、修正は TL 2019 にのみ含まれることです。

その間、次の構成ファイルを使用できますelegantcv.4ht

\input booktabs.4ht
\Hinput{elegantcv}
\endinput

この行は\input booktabs.4ht、 のコードと衝突するため、TL2019 がリリースされたら削除する必要がありますmemoir.4ht

ファイル内に他のものを入れることも可能ですelegantcv.4ht。例えば、HTMLコードを挿入するためにクラスからマクロを再定義します。タグをここに直接入れることもできますが、設定ファイルに入れるのがよいでしょう。私の詳細はチュートリアルをご覧ください必ず CSS スタイルを追加します。

箱から取り出した状態は次のようになります:

ここに画像の説明を入力してください

関連情報