Перейти к содержимому
Topos Uranos

Другие документы и совместная работа: итоги и задачи повышенной трудности

Краткое содержание

Это занятие завершает седьмой раздел, посвящённый другим документам и совместной работе, а вместе с ним и весь курс. Оно восстанавливает цепочку принципов и механизмов, ведущую от фрейма Beamer к размеченному PDF, указывая в каждом звене, какой принцип используется и на каком занятии он устанавливается; соотносит достигнутое с планом курса и показывает, что остаётся после него; повторяет в итоговом тесте навыки входного теста; и заканчивается шестью задачами повышенной трудности, более сложными, чем задачи занятий, которые требуют соединить несколько разделов: составить короткую статью, собирающую весь курс, превратить её в презентацию, перенести её рисунок на постер, разобрать слияние без конфликта, которое меняет ссылку, подготовить статью для arXiv и для журнала, компилирующего в pdfLaTeX, и написать преамбулу, которая служила бы сразу статье, презентации и отчёту в KOMA-Script.

Цели обучения

  1. Восстанавливать порядок механизмов раздела, указывая принцип, на который опирается каждый из них.
  2. Объяснять, почему одно и то же содержание меняет жанр, автора и место назначения, не переписываясь, и какие решения всё же приходится принимать при каждой смене.
  3. Предсказывать, что дают фрейм с оверлеями, опция класса, файл исключений, слияние в Git и объявление метаданных, и исправлять исходный текст так, чтобы он давал задуманное.
  4. Составлять короткую академическую статью, собирающую средства всего курса, и приспосабливать её к презентации, к постеру и к требованиям места публикации.
  5. Соотносить изученное в курсе с курсами научного письма каждой дисциплины, для которых он служит основой.

Чего достиг раздел

Раздел ставил целью, чтобы академическая работа, построенная в шести предыдущих разделах, меняла жанр, писалась несколькими авторами и доходила до места назначения, не переделываясь. Цель достигнута с опорой на то, что введение объявило известным: логическую разметку, которая говорит, что есть каждая вещь, и оставляет её форму классу; собственную преамбулу, которая один раз решает то, что действует во всём документе; относительные размеры рисунков; и библиографическую базу, которая служит любому жанру, где есть ссылки. Поэтому пройденный путь можно прочесть как одну цепочку из четырёх отрезков.

Презентации в Beamer

Занятие о презентациях в Beamer показало, что презентация есть документ, как и другие, со своим классом: пропорции страницы выбираются опцией aspectratio, язык объявляется опцией класса, чтобы он доходил и до заголовков теорем, а разделы, записанные между фреймами, питают оглавление тем же механизмом проходов, что и ссылки. Оно установило, что каждый оверлей фрейма есть страница PDF, так что \pause и спецификации в угловых скобках идут в счёт, и что опция handout набирает каждый фрейм только один раз; представило темы, колонки, блоки и теоремы; перенесло на слайд краткую ссылку biblatex и фрейм со списком литературы; объяснило, почему заметки повторяются после каждого оверлея; и предупредило, что Beamer набирает текст рубленым шрифтом, так что \setmainfont (или \babelfont{rm}) не меняет слайды, а кириллице нужен \babelfont{sf}.

Постеры, письма и резюме

Занятие о постерах, письмах и резюме вывело из расстояния чтения минимальный кегль постера, s≥7⋅d30s \geq 7 \cdot \frac{d}{30}, а из пропорций серии A масштабный макет, который проверяют на обычном листе; набрало постер как сетку блоков с библиотекой poster пакета tcolorbox, базовый кегль которой задаётся одной опцией; рассмотрело письмо как набор данных, с классом letter и с переменными scrlttr2; представило moderncv, с его цветом перед стилем и с несовместимостью с испанским языком babel, которую устраняет опция es-lcroman; и составило академическое резюме, списки публикаций которого берутся, с отбором по ключевым словам, из той же базы, что и статьи. В конце каждому жанру был сопоставлен класс, который не может опустить его отличительную черту.

Совместное написание текстов

Занятие о совместном написании текстов представило совместную работу в Overleaf, с его комментариями, отслеживанием изменений и историей, и управление версиями с помощью Git. Из того, что Git сравнивает и сливает файлы построчно, оно вывело соглашение писать по одному предложению на строку, которое не меняет PDF и позволяет двум правкам в несоседних предложениях объединяться самим; исключило файлом .gitignore файлы, которые компиляция создаёт заново, назвав PDF документа по имени, а не все PDF, среди которых могут быть рисунки; научило разрешать конфликт и проверять разрешение компиляцией, потому что слияние без конфликта может сломать ссылку; показало изменения в PDF с помощью latexdiff; и собрало соглашения команды: общая преамбула, общая база, по файлу на главу и метки с префиксом.

Шаблоны и публикация

Занятие о шаблонах и публикации довело документ до места назначения. Оно приспособило статью к классу журнала, убрав то, что решает класс, и сохранив осмысленные команды, и указало на конфликты, например между natbib, который загружает elsarticle, и biblatex; подготовило папку для отправки, которая компилируется сама по себе; объяснило, что arXiv компилирует исходный текст и не предлагает LuaLaTeX, так что документ курса отправляют с XeLaTeX, запрашивая шрифты по имени файла, или приспосабливают к pdfLaTeX; получило PDF/A с помощью \DocumentMetadata, записанной перед классом и с той версией PDF, которую допускает стандарт; и разметило PDF, с tagging=on, альтернативным текстом рисунков и языком, чтобы его мог прочесть и тот, кто не видит.

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

Опоры цепи

  • AЧто это, а не как выглядит. Разметка говорит, что есть каждый элемент, а класс и его опции решают его форму; поэтому содержание меняет жанр при смене класса. Устанавливается во втором и третьем разделах. В этом модуле принимается без доказательства.
  • BРешать один раз. То, что решается в одном месте (опция, собственная команда, общая преамбула), меняется во всём документе, когда меняется там; то, что копируется вручную, перестаёт совпадать. Устанавливается в предыдущих разделах. В этом модуле принимается без доказательства.
  • CПроходы. Движок записывает во вспомогательные файлы то, что вычисляет за один проход, и использует это в следующем; эти файлы создаются заново при каждой компиляции. Устанавливается в первом разделе и уточняется в третьем. В этом модуле принимается без доказательства.
  • DОтносительные размеры. Размер, выраженный относительно текста, как \linewidth или размеры \large и \Huge, приспосабливается к месту, где используется. Устанавливается во втором и пятом разделах. В этом модуле принимается без доказательства.
  • EОдна база, много применений. Источники описываются один раз в библиографической базе, и каждый жанр ссылается на них или перечисляет их в подходящем ему стиле и с подходящими фильтрами. Устанавливается в шестом разделе. В этом модуле принимается без доказательства.
  • FПравильное не предупреждает. Движок и его программы предупреждают лишь о том, чего не могут обработать; правильный исходный текст, который говорит не то, что хотел автор, компилируется без предупреждения, и дефект виден только в результате. Устанавливается в пятом и шестом разделах. В этом модуле принимается без доказательства.
  • GРасстояние решает. Угол, который занимает буква, уменьшается пропорционально расстоянию; минимальный кегль растёт вместе с ним. Устанавливается в: 6. Кегль по расстоянию.
  • HGit сравнивает строки. Git сравнивает и сливает файлы построчно: объединяет только изменения в несоседних строках и объявляет конфликт, если два изменения затрагивают одну строку или смежные строки. Устанавливается в: 11. Построчные различия и слияния.
  1. Участок 1 Презентации в Beamer

    • Набирать фреймы с заголовком, блоками, колонками и теоремами.
    • Предсказывать страницы, которые дают оверлеи, раздаточные материалы и заметки.
    • Ссылаться на слайде на ту же базу.
    • Выбирать шрифт презентации, зная, каким семейством пользуется Beamer.
    1. Фрейм и оверлей как страница. Каждый фрейм даёт по странице на оверлей: \pause и спецификации вроде <3-> или \only<2> задают их число; handout набирает по одной на фрейм, а заметка повторяется после каждого оверлея.

      Опирается на: A (Что это, а не как выглядит). Доказывается в уроке: Презентации в Beamer.

    2. Разделы и оглавление. \section пишется между фреймами, не даёт страницы и питает \tableofcontents, которое заполняется при второй компиляции.

      Использует: 1. Фрейм и оверлей как страница. Опирается на: C (Проходы). Доказывается в уроке: Презентации в Beamer.

    3. Язык в классе. russian как опция класса доходит до babel и до переводчика Beamer; данная только babel, она оставляет теоремы с английскими заголовками, без предупреждения.

      Использует: 1. Фрейм и оверлей как страница. Опирается на: B (Решать один раз), F (Правильное не предупреждает). Доказывается в уроке: Презентации в Beamer.

    4. Краткая ссылка. На слайде ссылаются краткой формой biblatex, на ту же базу, а полное описание помещают в последний фрейм.

      Использует: 1. Фрейм и оверлей как страница. Опирается на: E (Одна база, много применений). Доказывается в уроке: Презентации в Beamer.

    5. Рубленое семейство. Beamer набирает текст рубленым семейством: \setmainfont и \babelfont{rm} не меняют слайды, а без \babelfont{sf} русские буквы исчезают; меняют рубленое семейство или выбирают шрифтовую тему с засечками, а professionalfonts оставляет математику нетронутой.

      Использует: 1. Фрейм и оверлей как страница. Опирается на: A (Что это, а не как выглядит), F (Правильное не предупреждает). Доказывается в уроке: Презентации в Beamer.

  2. Участок 2 Постеры, письма и резюме

    • Рассчитывать кегль постера по расстоянию и проверять его на макете.
    • Набирать постер как сетку блоков.
    • Писать письма классами letter и scrlttr2.
    • Составлять профессиональное и академическое резюме из базы.
    1. Кегль по расстоянию. С 30 см удобный минимум составляет около 7 пунктов; на расстоянии dd, в сантиметрах, кегль ss должен удовлетворять условию s≥7⋅d30s \geq 7 \cdot \frac{d}{30}.

      Доказывается в уроке: Постеры, письма и резюме.

    2. Масштабный макет. Форматы серии A подобны, и каждая сторона делится на 2\sqrt{2} на каждом шаге: A0, уменьшенный до A4, читают с четверти предусмотренного расстояния.

      Использует: 6. Кегль по расстоянию. Опирается на: G (Расстояние решает). Доказывается в уроке: Постеры, письма и резюме.

    3. Сетка блоков. tcbposter делит страницу на колонки и ряды, каждый \posterbox занимает в них место, а fontsize задаёт базовый кегль, от которого зависят все относительные размеры.

      Использует: 6. Кегль по расстоянию. Опирается на: B (Решать один раз), D (Относительные размеры), G (Расстояние решает). Доказывается в уроке: Постеры, письма и резюме.

    4. Письмо как данные. letter и scrlttr2 получают отправителя, адресата, дату и подпись как данные; scrlttr2 хранит их в переменных, например place, и решает их место своими опциями.

      Опирается на: A (Что это, а не как выглядит). Доказывается в уроке: Постеры, письма и резюме.

    5. Резюме из базы. moderncv требует цвет перед стилем, а на испанском es-lcroman в babel; академическое резюме перечисляет публикации с помощью \nocite{*} и фильтров по ключевым словам, которые сочетают свои условия.

      Использует: 9. Письмо как данные, 4. Краткая ссылка. Опирается на: E (Одна база, много применений), F (Правильное не предупреждает). Доказывается в уроке: Постеры, письма и резюме.

  3. Участок 3 Совместное написание текстов

    • Делиться проектом в Overleaf или в репозитории Git.
    • Писать так, чтобы чужие изменения не сталкивались.
    • Исключать то, что создаётся, не теряя того, что не создаётся.
    • Разрешать конфликт, проверять его компиляцией и показывать изменения.
    1. Построчные различия и слияния. Git записывает изменения каждого коммита как удалённые и добавленные строки и объединяет две ветки без вмешательства, когда их изменения затрагивают разные строки.

      Доказывается в уроке: Совместное написание текстов.

    2. Одно предложение на строку. Простой перевод строки есть пробел, так что запись по одному предложению на строку не меняет PDF; разница указывает изменённое предложение, а две правки в несоседних предложениях объединяются сами.

      Использует: 11. Построчные различия и слияния. Опирается на: H (Git сравнивает строки). Доказывается в уроке: Совместное написание текстов.

    3. Созданное не хранят. .gitignore исключает вспомогательные файлы и PDF документа по его имени; *.pdf исключил бы и рисунки в PDF, без предупреждения, и документ не скомпилировался бы на другом компьютере.

      Использует: 11. Построчные различия и слияния. Опирается на: C (Проходы), F (Правильное не предупреждает). Доказывается в уроке: Совместное написание текстов.

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

      Использует: 12. Одно предложение на строку, 13. Созданное не хранят. Опирается на: H (Git сравнивает строки), F (Правильное не предупреждает). Доказывается в уроке: Совместное написание текстов.

    5. Изменения в PDF. latexdiff сравнивает две версии исходного текста и пишет третью, которая после компиляции показывает удалённое и добавленное; соглашения команды (общие преамбула и база, метки с префиксом) не дают сравнению заполниться различиями формы.

      Использует: 14. Разрешить и скомпилировать. Опирается на: B (Решать один раз). Доказывается в уроке: Совместное написание текстов.

  4. Участок 4 Шаблоны и публикация

    • Приспосабливать статью к классу журнала.
    • Готовить папку для отправки, которая компилируется сама.
    • Выбирать движок и библиографию, которые допускает место назначения.
    • Получать архивный и размеченный PDF.
    1. Приспособить к шаблону. Убирают то, что решает класс журнала (страница, шрифт, заголовки), и сохраняют осмысленные команды; пакеты, которые класс уже загружает, как natbib в elsarticle, могут конфликтовать с собственными.

      Использует: 3. Язык в классе. Опирается на: A (Что это, а не как выглядит), B (Решать один раз). Доказывается в уроке: Шаблоны и публикация.

    2. Исходный текст, который компилируется сам. Папка отправки содержит всё, что читает документ, и ничего больше: исходные тексты, рисунки, базу или .bbl и ни одного вспомогательного файла.

      Использует: 16. Приспособить к шаблону, 13. Созданное не хранят. Опирается на: C (Проходы). Доказывается в уроке: Шаблоны и публикация.

    3. Место назначения решает движок. arXiv компилирует исходный текст в LaTeX, pdfLaTeX или XeLaTeX, а не в LuaLaTeX: документ курса отправляют с XeLaTeX, запрашивая шрифты по имени файла, или приспосабливают к pdfLaTeX и заранее компилируют этим движком; отправленный .bbl должен быть совместим с его версией biblatex.

      Использует: 17. Исходный текст, который компилируется сам, 4. Краткая ссылка. Опирается на: E (Одна база, много применений), F (Правильное не предупреждает). Доказывается в уроке: Шаблоны и публикация.

    4. PDF/A и его версия. \DocumentMetadata ставится перед \documentclass; при pdfstandard=a-2b добавляют pdfversion=1.7, потому что версия 2.0 недопустима для этой части стандарта.

      Использует: 17. Исходный текст, который компилируется сам. Опирается на: F (Правильное не предупреждает). Доказывается в уроке: Шаблоны и публикация.

    5. Теги, альтернативный текст и язык. tagging=on выводит структуру PDF из осмысленной разметки; alt даёт каждому рисунку то, что услышит тот, кто его не видит, а lang объявляет язык.

      Использует: 19. PDF/A и его версия. Опирается на: A (Что это, а не как выглядит). Доказывается в уроке: Шаблоны и публикация.

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