Я создал индивидуальный класс для персональной программы обучения. Его можно найти на
https://github.com/igormorgado/elegantcv
Он прекрасно компилируется с pdlatex, XeTeX и LuaLaTeX, но попытка сборки с htlatex
его помощью завершается ошибкой:
Error LaTeX Error: File 'email' not found
Я не знаю достаточно, чтобы отладить или создать MWE, который выдает ту же ошибку (я пробовал). Удаление всех ссылок на мой пользовательский класс устраняет ошибку, но это не настоящий MWE для самой проблемы.
Я спрашиваю:
Как правильно выполнить отладку, чтобы иметь возможность понять ошибку и правильно указать на проблему (и, возможно, исправить ее самостоятельно);
Как создать безупречно написанный, пользовательский класс документа, который позволит мне работать с htlatex и не выдавать предупреждений или ошибок.
Как решить эту проблему и создать HTML-версию моего класса Latex.
Чтобы воспроизвести проблему, просто (предполагается, что 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.
Вот как это выглядит из коробки: