/noncomm-group-codes

Записки лекций по курсу «Коды на некоммутативных группах»

Primary LanguageShell

«Коды на некоммутативных группах»

Здесь хранятся записки лекций по курсу «Коды на некоммутативных группах» (лектор: доц. В.М. Деундяк, Мехмат ЮФУ, 2014). (Имеются ввиду помехоустойчивые коды.) Скомпилированные PDF можно найти в разделе Releases. Курс в основном построен на результатах книги Циммермана, изложенных в более доступном стиле.

Материалы оформлены в Маркдауне с вставками из Латеха. Налажена компиляция в PDF отдельных лекций и всех сразу (см. toPdf.sh и allToPdf.sh). Возможно, позднее будет добавлена компиляция в HTML.

Подробнее о формате

Формулы, естественно, в обычном Латехе. Как внутристрочные, так и выключные. Можно использовать любые пакеты (пока подключены и используются AMS*-пакеты). Любая подстройка генерируемого на промежуточной стадии Латеха выполняется через редактирование шаблона (файл template.latex, первоначальная версия сгенерирована Пандоком) или файла head.inp, который содержит определение авторских команд. Без последнего можно было бы обойтись, включив всё в шаблон, однако есть подозрение, что head.inp может быть полезен при генерации HTML (такие эксперименты, в целом, успешные, уже проводились).

Из Маркдауна используется в основном оформление заголовков и списков, и выделение звёздами (полужирный шрифт) и нижними подчёркиваниями (италик). Хотя всё остальное тоже должно работать (однако см. замечания ниже).

Определено несколько команд в стиле Латех для вставки полужирных слов типа «пример», «замечание» и т. п. (\Ex, \Nt, etc.).

К сожалению, в этой смеси присутствуют конфликты, которые я до конца не понимаю, потому что они возникают более-менее непредсказуемым образом.

  1. Иногда просто так не вставляются окружения begin/end либо вставляются, но отбиваются дополнительным пустыми строками, что создаёт огромные вертикальные отступы, см. вопрос на SO.
  2. Маркдаун не обрабатывается внутри аргументов команд (\Cmd{no MD here}). Зато в этих местах нет проблем с begin/end почти всегда (но иногда есть). В общем, ничего непонятно: видимо, парсер сходит с ума непредсказуемым образом.

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

Чтобы избежать проблемы п. 1, использую проблему п. 2: применяю свою команду \MyId с одним аргументом, которая просто подставляет этот аргумент.