Решение проблем с Markdown

Что делать, если формула красная, директива или строка атрибутов видна как текст, изображение не открывается, диаграмма не отрисована или ссылка не разрешилась.

Каждый раздел ниже начинается с того, что вы видите на странице. Сначала проверьте предпросмотр в редакторе: он показывает ровно то, что увидят читатели, поэтому проблема, видная там, — в исходном тексте, а не в сайте.

Формула показана красным

Формулу, которую KaTeX не может отрисовать, он показывает на месте красным цветом вместе с исходным текстом, а не ломает страницу. Обычные причины:

  • Команда, которой KaTeX не знает. KaTeX покрывает большую часть математического режима LaTeX, но не всё, и пакеты подключать нельзя. Найдите команду в списке поддерживаемых функций KaTeX и запишите равнозначную оттуда.

  • Макрос, определённый в другой формуле. \newcommand или \def действует только в той формуле, где определён. Пишите команду полностью там, где она нужна.

  • Выключное окружение в формуле в строке. align*, gather и \tag требуют выключного режима. Если формула записана $$…$$ одной строкой, она в строке: вынесите $$ на отдельные строки.

    $$
    \begin{align*}
    a &= b + c
    \end{align*}
    $$
  • Ссылка внутри формулы. \href и \url в формулах запрещены. Поставьте ссылку в текст вокруг формулы.

См. Математика.

Директива видна как текст

На странице видны строка :::имя и закрывающая :::, а тело между ними отрендерено. Значит, ни одна конструкция не узнала это имя, и оно показано как набрано, а не угадано.

  • Имя написано с ошибкой или его нет в словаре. :::theorm и :::proposition — не директивы. Сверьте имя со справочником синтаксиса; для вида утверждения, которого нет в списке, используйте :::statement[Предложение].
  • Галерея без изображений. :::gallery принимает только строки с изображениями; без них она остаётся текстом.
  • Номер печатной страницы, который им не является. :pb[] принимает арабский или римский номер (:pb[412], :pb[xii]) и ничего больше.

Двоеточие в обычном тексте (3:1, 12:30) никогда не директива и показывается как набрано.

Строка атрибутов напечатана

Строка вроде {align=center} видна на странице, а блок под ней не выровнен. Строка показывается текстом, когда она понята не целиком:

  • Опечатка в ключе или значении: {alig=center}, {align=centre}.
  • Ключ, который пишется в ограде директивы, например number= или label=. Запишите его в ограде: :::theorem{number=3.17}.
  • Пустая строка между строкой атрибутов и блоком. Строка должна стоять прямо над блоком.
  • Строка внутри пункта списка или цитаты — там она текст.

Ключи и значения перечислены в справочнике синтаксиса.

Изображение не открывается на весь экран

По щелчку изображение открывается в полноэкранном просмотре, только если просмотр покажет его крупнее, чем страница. Маленькое изображение в натуральную величину выиграть нечего, и оно остаётся как есть. Диаграммы TikZ и изображения галереи открываются всегда.

  • Изображение внутри ссылки. [![alt](изображение)](https://…) по щелчку ведёт по ссылке — так задумано.
  • Изображение не загрузилось. Незагруженное изображение становится неброской рамкой с альтернативным текстом. Проверьте, что адрес верен и доступен всем.

Диаграмма показывает «Diagram not rendered.»

Блок :::tikz компилируется при сохранении работы, а страница показывает изображение. Эта заглушка значит, что изображения пока нет: диаграмма ещё не скомпилирована или LaTeX не смог её скомпилировать.

  • Откройте работу в редакторе и переключитесь в режим «Визуально». Там блок компилируется и показывает ошибку LaTeX со строкой исходника, к которой она относится.
  • Недоступный пакет. Ошибка перечисляет доступные пакеты. Окружение tikzcd пока компилируется неправильно; рисуйте диаграмму матрицей узлов (matrix).
  • Целый документ LaTeX. Уберите \documentclass и \begin{document}: они добавляются за вас.

См. Нарисовать диаграмму в TikZ.

Ссылка на источник осталась как набрана

[@knuth1974] и [@fig:setup] показываются ровно так, как написаны. Так сейчас и работает: синтаксис сохраняется, но пока не превращается в автора, год или номер рисунка. Чтобы дать читателю источник, по которому можно перейти, используйте сноску; чтобы указать на часть документа — якорь и ссылку. См. Цитирование и перекрёстные ссылки.

Пропадают переводы строк

Одиночный перевод строки внутри абзаца строку не разрывает: текст перетекает, как в любом Markdown. Оставьте пустую строку, чтобы начать новый абзац, или закончите строку обратной косой чертой, чтобы разорвать её внутри абзаца. Для стихов используйте :::verse — там каждая строка сохраняется.

Два дефиса стали тире

-- становится коротким тире, а --- — длинным. Чтобы показать дефисы как набраны, например флаг командной строки, поместите их в код в строке: `--verbose`.