1 Знакомство с Quarto
Многие специалисты в области Data Science, работающие с языком программирования R, знакомы с инструментом R Markdown, который позволяет объединять повествовательный текст и код для создания отформатированных материалов в виде веб-страниц, записей в блогах, книг, бизнес-отчетов и других документов. R Markdown существует примерно с 2014 года и объединяет большое количество библиотек для создания и публикации научного, технического и бизнес-контента. Тем не менее, один из создателей R Markdown и основателей RStudio (теперь уже Posit Software, PBC) J.J. Allaire в своем интервью признал, что развитие R Markdown приходит в тупик, и несколько лет тому назад он с коллегами начал проект Quarto, который стал попыткой обобщить экосистему R Markdown таким образом, чтобы все полезные функции для создания и публикации технического контента могли быть доступны более широкому миру за пределами языка R.
Quarto® — это научно-техническая издательская система с открытым исходным кодом, построенная на основе Pandoc и использующая Markdown для разметки. Напомним, что Pandoc — это универсальный конвертер для работы с текстовыми документами для форматирования научных и технических текстов, поддерживающий множество различных форматов, написанный на языке программирования Lua.
Сегодня Quarto — это универсальный инструмент для тех, кто пишет на R, Python, Julia и Observable JavaScript и использует Markdown для форматирования документов. Многие из тех возможностей R Markdown, которые были доступны только для пользователей R, теперь также обобщены и для тех, кто программирует на Python и Julia и занимается анализом данных, научной и преподавательской деятельностью. Альтернативами Quarto, помимо R Markdown, можно считать MyST Markdown, Weave.jl, iPyPublish, Quarkdown, Mintlify и пр.
1.1 Название Quarto
Авторы научно-технической издательской системы хотели использовать название, которое имело значение в истории издательского дела, и остановились на Quarto (не нужно путать с настольной абстрактной игрой Quarto или издательством The Quarto Group, которое продает иллюстрированные книги).
Quarto (от латинского quārtō, сокращенно Qto, 4to или 4º) — это формат книги или памфлета, изготовленной из полных листов, напечатанных с восемью страницами текста, по четыре на одну сторону, а затем сложенных дважды, чтобы получить четыре листа. Затем листы обрезаются, чтобы получить восемь страниц книги. Размер каждой напечатанной страницы составляет одну четвертую полного листа.
Самыми ранними из сохранившихся книг, напечатанных немецким первопечатником Гутенбергом подвижным шрифтом, являются именно кварто (примерно 1452–53 гг.), которые появились до знаменитой Библии Гутенберга. Самая ранняя известная европейская печатная книга — это Quarto фрагмент средневековой поэмы «Сибилленбух» (Sibyllenbuch).
1.2 Возможности Quarto
Quarto предоставляет широкие возможности для работы с данными и создания документов. С его помощью можно:
- представлять результаты анализа данных в доступной и наглядной форме;
- создавать документы в различных форматах, включая HTML, PDF, ePub, Word, PowerPoint и другие на основе единого источника публикации;
- применять возможности разметки: формулы, цитаты, перекрестные ссылки, расширенные макеты и многое другое;
- публиковать веб-документы в интернете через различные веб-сервисы;
- интегрировать интерактивные приложения и виджеты в HTML-документы;
- создавать воспроизводимые документы с включением кода.
С помощью Quarto можно создавать:
- статьи, подходящие как для веб-публикации, так и для научных издательств;
- презентации;
- веб-страницы, включая блоги и техническую документацию;
- интерактивные книги, которые можно переводить различные форматы, пригодные для печати и электронных носителей.
Этот инструмент позволяет легко объединять аналитические возможности с качественным оформлением для различных аудиторий.
1.3 Примеры разработок на Quarto
Большим источником идей для создания рабочих материалов, сайтов, презентаций, статей, документации и другого похожего содержимого может служить Галерея примеров Quarto на официальном сайте.
Большое количество материалов на основе Quarto содержится на сайте Awsome Quarto, автор которого Mickaël Canouil. Кроме того, ссылки на примеры и полезные советы по Quarto приведены в Приложении.
1.4 Документы Quarto
Документы Quarto представляют собой, по сути, простой текстовый файл и имеют расширение *.qmd
. Приведем пример документа Quarto в качестве знакомства.
Более подробно структуру и компоненты Quarto документов мы рассмотрим в последующих частях книги, в зависимости от желаемого конечного результата.
1.5 Используемые инструменты
Поскольку Quarto использует собственный CLI (интерфейс командной строки), мы во многих случаях будем использовать именно его: для работы с ним необходимо открыть терминал, перейти в корневой каталог проекта и набрать нужную команду, например quarto render
для рендера. Посмотреть все команды Quarto CLI в терминале можно с помощью команды quarto --help
как показано ниже.
Для написания текста и кода в Quarto необходим подходящий инструмент, поэтому нам потребуется IDE (интегрированная среда разработки).
Для работы с документами Quarto можно использовать различные среды разработки, такие как RStudio, Visual Studio Code, Positron, Cursor, Jupyter, Emacs, Neovim, Sublime Text. Расширения Quarto для этих IDE обеспечивают:
- подсветку синтаксиса для Markdown и языков программирования (например, Python, R, Julia, LaTeX);
- автодополнение кода;
- удобные команды и сочетания клавиш для выполнения ячеек и отдельных строк;
- другие полезные функции для повышения эффективности работы.
В некоторых из перечисленных IDE (например, RStudio, Visual Studio Code) также имеется визуальный режим для редактирования, что упрощает работу с документами.
1.6 Расширения Quarto
Стоит отметить что Quarto имеет большой спектр различных расширений, которые постоянно пополняются. Mickaël Canouil создал собственную страницу, которая посвящена расширениям Quarto.
Установить расширение довольно просто: достаточно в директории, где находится ваш проект, выполнить команду во установке расширения в терминале. Например, для установки расширения, которое позволяет вставлять в документы иконки Font Awesome, достаточно набрать:
Terminal
quarto add quarto-ext/fontawesome
и далее следовать командам установщика.

Теперь достаточно в тексте указать {{< fa thumbs-up >}}
, чтобы получить иконку .
Заключение
Мы завершили наше краткое знакомство с научно-издательской системой Quarto. В следующей части мы подробно разберем установку Quarto и основные аспекты работы в IDE.
Quarto хорошо документирован, например, имеется достаточно подробное руководство и множество примеров реализации в виде интерактивных книг, веб-страниц, презентаций.