LINUX.ORG.RU

Рекомендации по переходу на LuaTeX

 , , , ,


3

1

В ноябре 2024 года LuaTeX был рекомендован TeX-сообществом (как минимум одним из его активных разработчиков Джозефом Райтом) в качестве движка по умолчанию. До этого момента рекомендованным движком LaTeX c 2007 г. являлся компилятор pdfTeX.

С помощью коллективного сознания LOR был сформирован набор рекомендаций по переходу с pdflatex на lualatex с учётом русских типографских традиций.

LuaTeX — система компьютерной вёрстки, основанная на TeX (читается как «тех»). Представляет собой расширенную версию pdfTeX со встроенным движком Lua, поддержкой Unicode и шрифтов OpenType.

>>> pdflatex → lualatex: почти бесшовный переход

★★★★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 16)

А где сообщество? Джозеф Райт себя характеризует всего лишь как активного разработчика TeX. В лидерах TeX User Group Джозефа нет. Формальный лидер проекта LaTeX – Франк Миттельбах. По ссылке – личный сайт Джозефа, где он рекомендует использовать LuaTeX по умолчанию для всех новых документов. То есть, я увидел всего лишь рекомендованное административное решение от авторитетного человека. Пассивный залог тут, видимо, использован из академической скромности.

Из текста новости можно представить, будто поменялось поведение команды latex по умолчанию. Я в release notes ничего такого не нашел, нагуглить смену поведения тоже не удалось.

Vidrele ★★★★★
()
Ответ на: комментарий от Vidrele

Тремя днями ранее Джозеф отметился на сайте The LaTeX Project: https://www.latex-project.org/news/2024/11/01/issue40-of-latex2e-released/ примерно в том же стиле, хотя менее определённо. Франк Миттельбах упоминается на основной страничке сайте наравне с именем Джозефа с просьбой заспонсировать, так что он всё-таки играет какую-то роль в LaTeX Team

IMHO это не какой-то хрен с горы. Изменений движка по умолчанию нет, а есть только рекомендации. Так что вроде более-менее утверждение в том виде, как оно сейчас есть, оправдано.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 3)
Ответ на: комментарий от Vidrele

Я пытался понять так же понять чем занимается TeX User Group. Так вот они не занимаются разработкой — в целях ничего такого явного нет (хотя может быть пропустил). Это группа по интересам организующая конференции, списки рассылки и вроде как поддерживающая CTAN, хотя в этом я не уверен.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от Evgueni

IMHO это не какой-то хрен с горы.

Да, это не хрен с горы, а активный разработчик (La)TeX, активный участник The LaTeX Project и один из голосов, выступающих от имени проекта по крайней мере на сайте проекта. Сам The LaTeX Project, видимо, представляет собой небольшое неформальное объединение.

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

Но если внимательно перечитать вступление и все предложения с упоминанием LuaTeX, станет очевидно: заметка адресована пользователям, и именно пользователям предлагается использовать по умолчанию LuaTeX для новых документов. Надо бы первое и второе предложение как-то логически развести, потому что поведение пользователя по умолчанию и поведение программ по умолчанию - два разных дефолта.

Vidrele ★★★★★
()
Ответ на: комментарий от Vidrele

Поправил. Убрал упоминание о поведении по умолчанию. Оставил только рекомендацию.

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от dataman

С днём рожденья LOR по-моему регулярно себя поздравляет. Вряд ли при этом он ссылается на какой-то другой ресурс :P

Evgueni ★★★★★
() автор топика

Прошу показать пример простейшего luatex шаблона. Хочу попробовать набрать на дефолтной комплектации AstraLinux.

Сам много пробовал, но всегда получаю ошибку на подобии

This is LuaTeX, Version 1.07.0 (TeX Live 2019/dev/Debian) 
 restricted system commands enabled.
(./test.tex
! Undefined control sequence.
l.1 \documentclass
                [a4paper,12pt]{report}
? 
Gnom7
()
Ответ на: комментарий от Gnom7

Первый шаг: установите TeX Live 2025 локально через https://www.tug.org/texlive/ Установка по сети не сложная.

Шаг второй: почитайте рекомендации pdflatex → lualatex: почти бесшовный переход

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от Evgueni

Мне нельзя ничего устанавливать. Теперь понятно что без TeX Live 2025 не получится. Я думал, что можно обойтись только командой luatex.

Gnom7
()
Ответ на: комментарий от Gnom7

LuaTeX очень активно сейчас развивается и то, что не работало 6 лет назад сейчас работает на ура.

Хотя странно видеть именно такую ошибку. Как именно запускалась компиляция? Вы точно на текст натравили lualatex?

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 3)
Ответ на: комментарий от Gnom7

А, внимательно прочитал ваше сообщение. Само собой это заголовок не для tex, а для latex, то есть для компиляции нужно использовать lualatex или какой-то специализированный/умный редактор типа emacs, который сам компилятор подберёт.

Проверьте ещё раз. Хотя скорее всего не будет пакета newcomputermodern

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от Evgueni

newcomputermodern - это весьма топорная поделка, сделанная в значительной части поверх cm-unicode даже без упоминания этого. Там еще добавлен шрифт 8 pt, кириллица там не понять как сгенерирована. Уже поверьте мне, я в этом деле разбираюсь.

pandrey ★★
()
Ответ на: комментарий от overmind88

А как вы это себе представляете? Единственное место, которое можно запараллелить — это разбивка разных абзацев на строки. Всё остальное aka постраничная разбивка текста, плавающие объекты, нумерация страниц, перекрёстные ссылки, алфавитный указатель и библиография требуют информации из других фрагментов.

Проектов, где бы параллелилась именно разбивка абзацев на строки я не видел. Не уверен, что там был бы существенный выигрыш, так как каждый такой процесс должен откуда-то получить всю информацию по шрифтам.

Возможно добавление в компилятор «сторонних» сущностей вида MPlib и соответственно картинок в виде кода MetaPost или PGF/TikZ сподвигнет разработчиков как-то разбавить однопоточность subj, так как картинки могут обрабатываться очевидно в параллель вплоть до момента когда потребуется их размер для вставки. Но пока увы и ах.

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от Evgueni

В принципе процесс оптимальной разбивки абзацев на строки вынести в отдельный thread в виде: есть набор боксов и клей между ними — оптимизируй разбивку (то есть то, чем TeX и занимается) в параллель к основному процессу. Тут правда возникает экзистенциальная проблема в случае если присутствуют «рисунки в оборку». Можно ли на этом что-то выиграть я не знаю.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)

Замечательно, когда мейнстрим совпадает с твоими хотелками! Сам интуитивно стал использовать именно LuaLaTeX года с 2023-го (установлен до сих пор TeXLive-2023 с Tug). Если кому интересно, могу скинуть свой шаблон простых заметок/статей в LuaLaTeX (хотя, возможно, сейчас стОит что-то в нём подправить). @Evgeni спасибо, что держите «техников» в курсе новаций!

Old-Cat
()
Ответ на: комментарий от Old-Cat

Полезную информацию IMHO лучше сюда: pdflatex → lualatex: почти бесшовный переход

Чтобы не потерялась.

P.S. Я вот, осознал, что «Какой же LuaTeX тормоз!» Теперь пытаюсь понять как его ускорить. Ранее для pdflatex я когда-то генерил форматный файл для преамбулы, но сейчас что-то не могу для lualatex найти пошаговой инструкцию.

Evgueni ★★★★★
() автор топика

А если сравнить с зитехом, то в чём будет разница, кроме этой самой Луа?

XMs ★★★★★
()
Ответ на: комментарий от XMs

Если пройти по ссылке, то в конце текста будет сравнение.

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от ei-grad

Глупый ответ. Предпечатная подготовка в O'Reilly по ходу до сих пор сидит на troff, который _никакого_ к TeX отношения не имеет. Изучили бы вопрос просто для расширения кругозора.

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от sergey3000

Вообще-то вы используете pdfLaTeX. Примерно с 2007 года классический LaTeX ушёл на покой.

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от sergey3000

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

James_Holden ★★★★★
()

Разработка XeTeX де факто заброшена в 2020 году

Спасибо, вопросы отпали, буду переходить на LuaTeX.

James_Holden ★★★★★
()
Ответ на: комментарий от James_Holden

Ну, от XeTeX отпочковалось нечто под названием tectonic: https://tectonic-typesetting.github.io

Якобы быстрее pdflatex и на расте. Можно и его палочкой потыкать.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от James_Holden
  1. Computer Modern мне не нравится, но он не единственный. Я использую, например, пародию на гарнитуру Литературную или другие. Выбор невелик, но есть.
  2. Чаще всего, я не волнуюсь о шрифтах, потому что это проблема издательств, которые разрабатывают шаблоны.
sergey3000
()
Последнее исправление: sergey3000 (всего исправлений: 1)
Ответ на: комментарий от sergey3000

Да вы, батенька, контрафактом под и именем PScyr балуетесь, потому что то, что извергла из себя в своё время ParaType под бесплатной, но несвободной лицензией под именем Литературная использовать без топора и напильника невозможно.

P.S. Мне то как раз Computer Morden нравится своей цельностью и фундаментальной согласованностью всего со всем.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 2)
Ответ на: комментарий от James_Holden

Если это по поводу Computer Modern, то cm-super и всё, что на него операется выдаёт вполне хороший результат.

Он и раньше выдавал во времена классического LaTeX и xdvi, но эти времена прошли :( Де факто идеи заложенные Кнутом 50 лет назад в виде описания глифов кривыми третьего порядка и искажения шрифтов целиком для получения новых начертаний осилили только в OpenType через чёрт знает сколько времени.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от Evgueni

Я из интереса поглядел несколько исходников оттуда. Любопытно было увидеть большой и полезный проект на Rust.

Выглядит, на первый взгляд, как очень тонкая прослойка над большой базой C++ кода.

Chiffchaff
()
Ответ на: комментарий от Chiffchaff

Интересно. Спасибо за доп информацию.

По идее там не только XeLaTeX на переписывание на раст которого были намёки, но масса сторонних утилит для индексации и поиска в дереве texmf.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 2)
Ответ на: комментарий от Evgueni

Я пользуюсь пакетом literat (non-free-fonts в texlive).

Им я пользуюсь только в личных целях, нигде не публикую.

Если же этот шрифт использует журнал, это меня никак не касается.

Мне не нравится кириллица в Computer Modern. И раздражает его распространенность как Times New.

sergey3000
()
Последнее исправление: sergey3000 (всего исправлений: 1)
Ответ на: комментарий от sergey3000

Чисто в познавательных целях: как там в случае использования этого шрифта выглядит слово «Где» (первая буква заглавная).

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от Evgueni

Какие-нибудь шрифты с нормальной кириллицей. Сами шрифты lh, которые идут по умолчанию в LaTeXe довольно аляповатые. К чему там сейчас сделаны развитые наборы математических символов?

pandrey ★★
()
Ответ на: комментарий от Evgueni

Сами-то шрифты, написанные на metafont вполне себе пригодные для печати на бумаги. Другое дело использование их в электронных документах.

pandrey ★★
()

Что касается LuaTeX. Несколько лет назад все переходили на Xe(La)TeX, до этого тоже были варианты. Как-то все это нестабильно.

pandrey ★★
()
Ответ на: комментарий от Evgueni

Честно говоря, терпимо. Реже писать Где и не приглядываться. Все это идет как раздаточный материал студентам.

В журналах все свое, потому о шрифтах и не думаю особо.

sergey3000
()
Последнее исправление: sergey3000 (всего исправлений: 1)
Ответ на: комментарий от pandrey

Вопрос: какие? В смысле шрифты. Информация со стороны разбирающегося в этом человека была бы к месту.

Крайне желательно, чтобы шрифты были доступны под свободной лицензией.

Evgueni ★★★★★
() автор топика
Ответ на: комментарий от pandrey

Под словом кто-то подразумевается Microsoft? Ну да сейчас вряд-ли предъявит — тупо забанит.

Evgueni ★★★★★
() автор топика
Последнее исправление: Evgueni (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.