Сделайте предупреждения более очевидными

Сделайте предупреждения более очевидными

Как автор пакета, я хочу, чтобы люди загружали мой пакет с versionпараметром вроде

\usepackage[version=4]{mhchem}

Я решил использовать предупреждение (а не ошибку), если они этого не сделают, поскольку отсутствие указания версии работает для базового использования, а различия будут заметны только в более сложных химических формулах.

Я не слишком возражаю против того, что задаваемые здесь вопросы не содержат параметр версии. Но принятые ответы должны быть полностью правильными, с моей точки зрения. Однако, почти ни один из принятых ответов изначально таковым не являлся.

Это приводит меня к выводу, чтодаже опытные пользователи LaTeX, которые публикуют здесь ответы, не смотрят на предупреждения LaTeX,что делает систему оповещения LaTeX практически бесполезной.

Поэтому, прежде чем я подумаю об изменении моего предупреждения на ошибку, я хотел бы спросить, есть ли возможность создать более очевидные предупреждения. (Я сомневаюсь в этом, но я все равно хотел спросить.)

Обновлять

Может быть, вы могли бы сообщить, как ведет себя ваш редактор.

\documentclass{article}
\usepackage{expl3}
\begin{document}
a
\PackageWarning{test}{This is a traditional warning.}
\ExplSyntaxOn
\msg_new:nnn { test } { msg } { This~is~a~LaTeX3~warning.}
\msg_warning:nn { test } { msg }
\end{document}
  • TeXworks: Идентифицирует традиционное предупреждение, но не предупреждение LaTeX3. Тем не менее, скрывает вывод консоли после компиляции, даже если предупреждение было идентифицировано.
  • ...

решение1

Благодаря вашим отчетам мои подозрения подтвердились.

Если автор пакета хочет, чтобы пользователи видели предупреждение, он/она должениспользуйте традиционное предупреждение ( \PackageWarning), поскольку предупреждения LaTeX3 ( \msg_warning:nn) не распознаются многими редакторами LaTeX.

решение2

Kile идентифицирует традиционное предупреждение на вкладке Log and Messages, но не expl3. Однако полный вывод доступен на вкладке Output.

С другой стороны, Kile в его текущем состоянии не может найти свои собственные .cwlфайлы, поэтому я не возлагаю больших надежд на то, что он распознает синтаксис expl3 или предупреждения.

Связанный контент