В предыдущей статье я рассказал немного о вёрстке газеты с помощью прямой генерации постскрипт-файлов из отдельных готовых макетов. Комментаторы обратили моё внимание на LaTeX. Для меня было очевидно, что в описанном мной случае LaTeX был избыточным, но осадок остался. И я пошёл искать подробности в Яндексе.


LaTeX поразил меня прежде всего размером пакета texlive-full. Затем — сложностью вставки кавычек-ёлочек: надо каждый раз переключаться на латиницу. Я попробовал начать писать эту статью в LaTeX, и понял, что это не нужно. Потому что а) у Хабра другие требования (например, кавычки Хабр делает сам), и б) у меня тоже другие требования: если статья не для Хабра, я всё равно буду ставить обычные кавычки, а потом заменю их на ёлочки макросом в Виме.


Думаю, так рассуждаю не я один — что удобнее во время написания текста ставить какие-то простые метки, обозначающие кавычки, ссылки, жирность, нумерованный список… А потом заменять эти метки на универсальную разметку типа HTML с помощью, допустим, Markdown.pl.


Thinking in Markdown


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


Потом люди стали набирать тексты в компьютере, и постепенно изобрели TeX. Но кто и где его видел в эпоху застоя? Markdown расцвёл по-настоящему буйным цветом, когда широкие массы бывших советских граждан начали верстать газеты в программе Xerox Ventura Publisher. Это был инструмент, предвосхитивший не только современную концепцию markdown, но и HTML — CSS: тексты с разметкой хранились в одних файлах, структура публикации — в других, описание стилей — в третьих.


Потом появился модный «визуальный» Aldus Pagemaker и вёрстка превратилась в ад, а газетные страницы — в издевательство над разумом и чувствами читателей. Adobe Indesign ещё глубже перемешал содержание с оформлением. Потому что желание форматировать текст «наглядно» — неистребимо, и корпорации всегда будут с удовольствием на этом желании зарабатывать.


Точно так же неистребимо и желание некоторых людей всё упорядочивать, раскладывать по полочкам, рассчитывать расположение текста и картинок строго математически. Думаю, таких людей намного меньше, чем «визуалов». Об этом говорит нам огромное количество редакторов ВИЗИВИГ — в том числе и на сайтах (даже Википедия докатилась).


И соль, кажется, перестаёт быть солёной: После двадцати лет борьбы за «семантическую разметку» довольно странно было увидеть на сайте IBM (!) пример для LaTeX в стиле HTML 3.2:


Листинг 2. Исходный код титульного листа курсовой работы 
begin{titlepage} 
\begin{center}
 \large
     МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ\\ РОССИЙСКОЙ ФЕДЕРАЦИИ 

Ситуация, конечно, неоднозначная. Если мы должны сдать документ в электронном виде, тогда этот center — конкретное зло: получатель не сможет управлять печатью с помощью внешних стилей. Если же мы сами должны напечатать документ, тогда… Я бы всё-таки ожидал от принимающей стороны файла с настройкой для сущности titlepage, а не инструкции «отформатируйте как-нибудь сами, чтобы всё там по центру было».


Из этого примера я вижу, что желание непосредственно форматировать текст невозможно истребить никаким LaTeX'ом.


LaTeX vs []?


Одной из первых статей при поиске в Яндексе нашлась конечно же статья на Хабре Не пишите в LaTeX!. Там, в частности, утверждается, что Ворд не так уж плох — что мы просто «не умеем его готовить»:


Если кто-то размечает заголовки разделов в текстовом редакторе, выбирая жирный шрифт или увеличивая размер шрифта, то он неправильно использует функции текстового редактора. Человеку следует показать [...]

Думаю, этот «кто-то» использует редактор совершенно правильно. Потому что этот редактор именно для того и сделан. И ничего мы этому человеку не сможем ни показать, ни доказать. Потому что сначала родилось желание этого человека произвольно раскрашивать текст, и только потом появился Ворд, как ответ на запрос потребителя.


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


Обсуждение статьи показало мне, что противопоставлять LaTeX Ворду непродуктивно:


Ей было понятно, что вот это заголовок. А в ворде она не отличала заголовок от текста который жирный и с размером шрифта больше обычного.

В Ворде, конечно, тоже можно отличить заголовок от просто жирного текста. Но тут именно вопрос, в каком представлении это человеку удобнее. И тот, кому и так (от природы) удобнее работать с внешними метками, выберет НЕ Ворд. И не Indesign. Но что?


***


Долгое время работая с разными офисными документами, «голым» текстом, всякими вариантами «маркдаунов», я постепенно осознал, что чувствую себя уверенно и спокойно только с одним форматом — HTML. При получении «грязного» файла .doc для меня первым инстинктивным движением является Ctrl+a, Ctrl+m в ЛибреОфисе (очистка непосредственного форматирования). Второй шаг — копирование текста в специально созданную для этого ВИЗИВИГ-формочку на сайте с кнопкой «Очистить».


Понятно, что вторым способом можно чистить также и «грязный» HTML, в виде которого попадает к нам сегодня основная масса информации.


Очистка после конвертации в HTML оставляет только голые теги (сохраняются также атрибуты class и некоторые важные для таблиц — вроде rowspan). Это, в частности, решает проблему с «расползанием» таблиц. Потом полученный чистый HTML можно вставить обратно в текстовый редактор и дооформить уже нормально, стилями (если он нужен кому-то другому именно в таком виде). Или так и оставить — в HTML, и доработать прямо там.


Вот эту связку — Markdown — HTML — уже вполне, на мой взгляд, можно противопоставлять LaTeX'у, тут уже есть, что обсуждать. То есть конечная идея моя такая: всякий текст надо начинать набирать и оформлять на близком вам «диалекте» какого-то упрощённого маркдауна, и ближе к концу принимать решение: HTML или LaTeX. И совсем не обязательно, кстати, HTML должен навсегда остаться на экране — из него вполне можно создавать pdf или допиливать его в виде odt.


О чём вы думаете, глядя на эту кирпичную стену?


Вы, вероятно, со многим будете спорить, из-за чего-то даже ругать меня. Потому что всегда при написании статьи пишущий думает об одном, а читающий потом статью — о другом. Чтобы немного уменьшить это расхождение, скажу прямо: я думаю сейчас (и всегда) в первую очередь об уроках информатики. Первый шаг от «непосредственной визуальности» к мышлению стилями мы уже на этих уроках сделали: после оформления учебного документа в LibreOffice ученики сами спешат проверить свою работу с помощью Ctrl+m, не дожидаясь, когда это сделает учитель.


На следующем этапе передо мной возникает выбор стратегии: как приучить человека мыслить внешними метками при оформлении текста.


Вспоминаю, что где-то двумя параграфами выше я утверждал нечто несовместимое с этой задачей — что есть люди, от природы мыслящие «разметкой», а есть природные «визуалы», и ничего с этим не сделаешь. Это было полемическим преувеличением. Мы, конечно, не состоим только из «чёрного» и «белого», в каждом человеке дремлет и то и другое — чего-то немного больше. И то и другое можно пробудить намеренными действиями — эту возможность, в частности, успешно эксплуатируют продавцы Ворда и Индизайна.


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


Впрочем, программирование тоже развивает наблюдательность в нужном направлении: любая программа состоит из «команд» и данных, из операторов и операндов, она постоянно напоминает нам об этой неоднородности кода — о материале и его «обработчиках». И существует, кстати, язык программирования, который одновременно является и языком разметки.


Правильность его выбора для уроков информатики подтвердила для меня, в частности, статья (опять же на Хабре) Изучи Postscript за пять минут. Сама статья не очень содержательная, но в ней есть две полезные ссылки на «уроки postscript».


Postscript за пять часов


За пять минут, конечно, не получится изучить Postscript даже у вас; тем более у школьников. Для людей, не работающих постоянно с обратной польской нотацией, пяти минут может не хватить даже на то, чтобы представить на языке Postscript выражение 3 - 2 * 7 — даже если перед глазами у вас список операторов и вы уже знаете, что «умножить» там выглядит как mul, а «отнять» — как sub. Ученикам требуется обычно минут 20, чтобы один из них решил эту задачу хотя бы с помощью дополнительного оператора neg.


На самом деле первые 25 — 50 минут уйдут у вас на попытки организовать отладку программ на Postscript — это место в учебных статьях почему-то обычно обходят молчанием. Отладчик (интерпретатор) у нас по сути только один — Ghostscript, его найти несложно. Но дальше будет вот что: вы наберёте в консоли линукса команду gs (gswin32c.exe для Windows) и очень быстро обнаружите, что выйти из этой среды почти так же «легко», как… из Vim'а. Впрочем, gs в этом плане дружелюбнее — там работает не только волшебное слово quit, но и Ctrl+c. И даже Ctrl+d.


Следующий этап: мы набираем в интерактивном режиме gs команду 3 14 sub, нажимаем Энтер, и… ничего не происходит. Потому что оператор sub забрал из стека два числа, посчитал разницу между ними и положил в стек обратно. И причём тут, казалось бы, экран?


Чтобы извлечь из стека в стандартный вывод последнее значение, нужно вводить специальную команду. Догадайтесь с трёх раз, какую: = (знак равенства). То есть полностью наша команда должна выглядеть так: 3 14 sub =.


Через пять минут «интерактивного» изучения операторов в среде Ghostscript вам станет скучно и захочется написать хотя бы небольшую программу, чтобы она и квадрат Малевича нарисовала, и числа перемножила заодно. С квадратами там всё стандартно. С числами сложнее. Вы напишете, например:


(3 - 2 * 7 = ) show

(В ps текст для печати нужно помещать не в кавычки, а в круглые скобки). Но этого мало, надо обязательно указать шрифт, место на странице для начала печати и в конце дать команду на отображение страницы:


%%BoundingBox: 0 0 600 600 
/Times-Roman findfont 40 scalefont setfont 
100 500 moveto (3 - 2 * 7 = ) show 
showpage 

Вторую координату мы указали побольше — 500, потому что начало координат в ps находится внизу. Этот текст надо сохранить в файл, например, 1.ps. И тогда счастливые обладатели программы okular смогут увидеть результат своего программирования с помощью двойного щелчка по имени этого файла. Если okular не установлен, файл откроется в каком-нибудь другом просмотровщике или даже в Gimp'е. Или совсем не откроется — тогда установите всё-таки okular.


Или используйте ultima ratio:
 gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r120     -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -sOutputFile=1.png 1.ps 


Мы вывели на печать (на экран) большими буквами надпись «3 — 2 * 7 =». Теперь в конце этого выражения нужно напечатать посчитанный результат. Для этого перед инструкцией showpage надо вставить строку:


3 2 7 mul sub 20 string cvs show 

В этой строке слева от числа 20 находятся собственно расчёты. Команда cvs преобразует числовой тип данных в строковый. В качестве второго аргумента этой команде нужна пустая строка фиксированной длины — мы создаём эту пустую строку командой 20 string. Теперь можно экспериментировать с арифметикой в ps, меняя в левой части строки числа и операторы. Только надо следить, чтобы результат не получался длиннее 20 символов.



Думаю, после такой встряски HTML покажется ученикам лёгким и приятным в изучении.


Стандарты и инструменты


И HTML, и LaTeX являются стандартами, но в повседневной жизни ученика, студента, преподавателя, программиста LaTeX не нужен — он, скорее, инструмент праздничный, используемый по особому случаю: для печати диплома, статьи в научном журнале. Каждый день же, прямо сейчас нам, людям, не работающим с трёхэтажными формулами, как воздух нужен HTML (хотя туда тоже можно вставлять формулы из LaTeX'а).


Потому что бумажных источников информации становится всё меньше; всё чаще мы читаем с экранов и пишем с помощью клавиатуры. Для уроков литературы нужно читать «Войну и мир». У многих ли дома лежат эти тома? Или, допустим, учитель обществознания нашёл интересную статью по экономике. Или сам написал. Что ему, распечатывать на всех учеников? Или диктовать в виде лекции?


Во всех случаях самым удобным стандартом будет HTML: фильтруем, чистим, выкладываем в локальную сеть школы (или делимся по email). К сожалению, именно что «будет»: сейчас это не так. Но я постараюсь научить основам разметки и учеников, и учителей.


Тут вовсе нет цели сделать из каждого профессионального верстальщика. Но научиться мыслить категориями компьютерной вёрстки просто необходимо каждому человеку, вовлечённому в учебный процесс и ежедневно имеющему дело с сотнями информации. Тогда и LibreOffice тоже станет нормальным стандартом — потому что после изучения HTML люди начнут видеть (и хотеть) не «большой и жирный шрифт», а Заголовок Раздела, и рассматривать курсив не в качестве украшения, а для смыслового выделения. Может быть.

Комментарии (22)


  1. vconst
    22.01.2018 15:42
    +1

    Вы путаете базовые понятия и потому сравниваете не то и не там.

    Текстовый редактор — это редактор текста, исключительно, без всякого его оформления. Примеры: vim, MultiEdit, Atom.

    MS Word, ChiWriter и подобные программы — это текстовые процессоры. Они используются для оформления небольших объемов текста. Ошибочно используются для верстки и, что еще хуже — для дизайна. То, что в Ворде появились функции верстки, вроде работы со стилями — не делает его программой для верстки, ибо он совершенно не умеет оперировать текстом относительно полосы, а в программах верстки — это базовое понятие.

    InDesign, PageMacker и подобные — это программы для верстки и дизайна. Верстальщик обязан видеть верстаемый текст, что бы соблюдать правила верстки, для хорошей читаемости этого текста, все эти вдовы-сироты, висяки и коридоры с лестницами — это все не придирки нудных редакторов (людей), это сильно влияет на восприятие текста.

    А дизайнер — тем более должен видеть результат, потому что он оперирует визуальными образами. Он представляет как картинка должна сочетаться с текстом, и не держать это «в голове» — а непосредственно видеть на экране. Кстати — верстать дизайнеры не умеют, как правило.

    ТЕХ создавался как инструмент корректного отображения математических и физических формул. Научному сотруднику не важно — будут ли у него висеть предлоги, ему не важно — насколько гармонично выглядит график рядом с описанием и какой формы должны быть маркеры на нем — главно, что бы они были различимы и не сливались. То, что в нем появились инструменты для верстки и оформления изображений, не делает его программой для дизайнеров.

    ___
    Но вы все смешали в кучу и везде нашли «недостатки». А удобным для вас является только тот инструмент, который вы освоили лучше всех, что логично, но не является основанием для критики всех остальных программ.

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


    1. 380365 Автор
      22.01.2018 16:30

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

      1. MS Word ещё в девяностых начал позиционировать себя как настольную издательскую систему. Это было проверено мной на практике, и нашлись проблемы с печатью изображений. Но в OpenOffice в «нулевых» мы регулярно верстали несколько страниц нашей газеты — даже Скрибус оказался не нужен.

      В Ворде же я лично набирал и подготовил к печати диссертацию (гуманитарную) со всем положенным сопровождением — библиографией, оглавлением… Там достаточно много возможностей «штатной» автоматизации по собиранию всяких указателей, работы со сносками; а где не хватает встроенного, всегда можно допилить макросами. Можно было — в MS Office 97 (сейчас с Вордом не работаю).

      2. Правила вёрстки и дизайн для меня совершенно разные вещи. Дизайн по определению не должен укладываться в правила. Где-то тут недавно обсуждались «искривления» логотипа Гугла. «Верстать» не умеют плохие дизайнеры, если под вёрсткой мы понимаем работу с текстом. Хороший дизайнер из любого текста сделает картинку!

      Вдовы-сироты настраиваются в Word'е и Writer'е стилями — можно просто установить правила: «не менее двух висячих строк»; «не отрывать от следующего абзаца»… Разумеется, тогда на страницах появятся «дыры» снизу, но как с ними поступать должен определять не верстальщик, а политика вашего издательства (а верстальщик — воплощать).

      Я как раз категорически против соединения дизайна и вёрстки — это соединение порождает хаос. Дизайнер делает «макеты». Любой макет вписывается в прямоугольник. Верстальщик размещает прямоугольники по жёстким правилам и добавляет (обновляет) колонтитулы и прочий бутор. Эта работа принципиально формализуема, и в идеале верстальщика можно исключить совсем (что мы и сделали когда-то в газете).

      3. Не верю, что научному сотруднику не важна типографика — висячие строки и предлоги. И дизайн тут ни при чём, это правила. TeX, насколько я успел с ним ознакомиться, безусловно, мощный инструмент именно вёрстки, он позволяет формулировать правила и чётко их выполнять.

      4. Я критикую не программы, а, скорее, подход к работе. Я люблю LibreOffice, но в нём можно работать по-разному. Я стремлюсь к такому подходу, который максимально разделяет разметку и оформление — как HTML и таблицы стилей CSS (при правильном обращении, конечно).

      5. Избавиться от лестниц в контейнере можно, определив ряд фиксированных состояний страницы по ширине, а не стремясь не «непрерывности».

      Когда я скачиваю для учеников с lib.ru тексты (ставшие общественным достоянием), я обязательно ограничиваю ширину текста внутри браузера (переопределяю правила CSS), иначе на широком мониторе читать просто неудобно.


      1. vconst
        22.01.2018 17:09

        1. Совершенно не важно, как MS пытается позиционировать свой текстовый процессор — программой для верстки он от этого не станет, увы.

        До сих пор можно встретить в ТТХ типографий или дизайн-студий традиционное «верстку в программах Ворд и Эксель — не принимаем», это не на голом месте появилось. Энтузиаст запросто может попробовать сверстать в ворде хоть диссер, хоть научную работу, но это будет адовая работа, хотя студент об этом не узнает — ему не с чем сравнивать. Ну и вы сильно удивитесь тому, что сейчас можно сделать автоматом в Индизе :)

        2. Дизайн — это визуализация некого гармоничного образа, которое включает в себя что угодно: текст, иллюстрация, форма прибора или автомобиля и тд тп. Это творчество по определенным правилам.

        Верстка — это ремесло, воплощение дизайна в рамках технических требований. Дизайнер может сказать: «вот здесь текст описания, кегль, шрифт и тд — скопировать с моего эскиза», а верстальщик втянет висяки и уберет лестницы.

        Колонтитулы, расставление блоков текста по правилам и остальное оформление — это работа дизайнера. Макет журнала и его сетку — верстальщик не делает, это не его работа, категорически. А дизайнер никогда не выучит всех правил верстки — это категорически не его работа. Интернет, в этом отношении, тоже мало что изменил. Вы в газете автоматизировали простейший процесс, но ничего бы не сделали с версткой многополосного глянцевого журнала. Хотя я слышал о верстке многополосных книг с картинками в Фотошопе, профи смотреть на них без слез было нельзя — так много технических ошибок было допущено дизайнером, который не умел верстать.

        Автоматически висящие союзы и предлоги — не убираются нигде, только руками или сторонними скриптами, я не случайно сказал «например», потому что правил верстки очень много и не все они настраиваются в программе.

        3. Фактически — их это не волнует. Те, кто заморачивается, пользуется скриптами для ЛаТЕХ, но мало кто возится с этим. Главное — что все формулы и обозначения нарисованы четко и правильно, малая сигма не заменяется коммерческой альфой и тп.

        5. Это приведет к тому, что дизайн сайта будет не «резиновый» а «скачущий». Нигде этого не видел и очень хорошо.


        1. 380365 Автор
          22.01.2018 18:00

          это будет адовая работа
          Вы меня не слышите: я делал эту работу — верстал диссертацию в Ворде, и я написал выше, что это было удобно. И я верстал другую диссертацию в PageMaker'e. В Ворде было на порядок удобнее.

          Макет журнала и его сетку — верстальщик не делает, это не его работа, категорически.
          Вот именно. Совершенно с этим согласен. Верстальщик — не нужен: по готовой сетке, со сгенерированными из БД колонтитулами лучше, надёжнее сверстает программа.

          Вы хотите сказать, что глянцевые журналы верстаются не по каким-то строгим алгоритмам и правилам, а на глазок, как верстальщику понравится? Почему вы думаете, что эту вёрстку автоматизировать невозможно? Я не увидел аргументов. В чём принципиальное отличие от газеты?

          Висящие предлоги и союзы убираются в рекламном бизнесе руками в самом конце работы — если начальство сочтёт, что овчинка стоит выделки. В диссертации, конечно, нет.

          Вот сайт (не знаю, как дать ссылку, чтобы не сочли рекламой): #https://irmag.ru/cat/11/, на страничке товары по 4 штуки в ряд. Если окно пошире — по 5 штук в ряд. Как вы сделаете это «резиновым», «не скачущим»? в промежутке — по 4.5 штуки в ряд?


          1. vconst
            22.01.2018 18:16

            Естественно вы сверстали свой диссер в Ворде, вы же не верстальщик и ничего не знали про альтернативы, даже в Пейдже профи сделал бы это быстрее и удобнее.

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

            Программа может «залить» текст по сетке, сверстать она не сможет. Потому что да, в не шаблонных изданиях типа глянцевых журналов — многое верстается «по месту», разгоняется и ужимается в соответствии с опытом верстальщика, а часто еще и после согласования и редактором, корректором и дизайнером. Могут передвинуться фотографии, текстовые блоки могут исказиться до сложновывернутых многоугольников в угоду дизайну и многое многое другое.

            Журнал — это не справочник. А справочники действительно можно «верстать» скриптом, я так и делал в Пейджмейкере — текст разбивается по абзацы по определенному шаблону и потом скрипт автоматом расставляет стили, от названия справочной статьи, до колонтитулов… Если где-то произошел сбой, текст исправляется и перезаливается снова.

            Про висящие предлоги в рекламе — не смешите пожалуйста. Может в газете бесплатных объявлений с одним шаблоном на все 32 страницы — так и происходит, но это крайний случай. Я говорю как полиграфист со стажем около 20 лет, поработавший и в справочниках, и в глянце, и в рекламных агентствах калибром от «три человека и бухгалтер» до международных сетевых.

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


            1. 380365 Автор
              23.01.2018 04:19

              Я вас немного разочарую: я верстал чужой дисер в Ворде. После того как сверстал другой чужой дисер в «Пейдже», потому что до этого несколько лет верстал в нём газету и справочники и был уверен, что это лучшее средство для вёрстки (ну, после Вентуры, конечно).

              Не буду спорить о «полосности» изданий — она важна в полиграфии. Но причём тут верстальщик? В одной из газет, где я работал, хозяевам в какой-то момент надоел хаос, они заставили дизайнеров выработать точные рекомендации по шрифтам, интерлиньяжу и насмерть запретили какие-либо «ужимания» или «разгон»: если статья не влезала, её возвращали автору для сокращений. И наоборот.

              и потом скрипт автоматом расставляет стили, от названия справочной статьи, до колонтитулов
              Мне казалось, именно об этом я и писал статью — примерно о таком стиле работы: набирая текст, я ставлю перед подзаголовком ###, потом это превращается в H3. Если же текст структурирован изначально в БД, оттуда можно сразу сгенерировать нужный формат с H3. Но в идеальной системе вёрстки текст не должен куда-то «перезаливаться» и требовать дополнительной обработки: вы расставили нужные метки и сразу печатаете, а система подключает при этом нужные шаблоны оформления. Текст — отдельно; шаблон — отдельно.

              Про висящие предлоги я вам описал наблюдаемую мной реальность: их обычно «дизайнеры» игнорируют, но для вип-клиента начальство может заставить дизайнера поработать с текстом.

              На сайтах при адаптивной вёрстке конечно же «прыгает» не размер одного блока, а количество блоков: например, для совсем узкого экрана исчезает меню (превращается в одну кнопку), исчезает «слайдер» в шапке… Размеры отдельных блоков могут плавно изменяться — в определённых пределах; потом всё равно состояние страницы изменяется «прыжком». В какой момент делать «прыжок», зависит, в частности, и от задачи избавиться от «лестниц в контейнере».


              1. vconst
                23.01.2018 11:23

                Пейдж, как программа для верстки — безусловно лучше Ворда во всех отношениях, но, как я уже говорил — для технических статей уже давно придуман ТЕХ, причем гораздо раньше, чем Пейдж и Ворд вместе взятые. Инструменты надо использовать по назначению.

                Увы, в ващей газете редактор и дизайнер получали свои деньги за просто так. Потому что ужимать и растягивать это их обязанности. Для этого двигаются другие статьи, меняются размеры картинок, добавляются врезки и тд тп. Верстальщик должен подгонять ±1-3 строки, а не абзац туда-сюда.

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

                Висяки и прочее — дизайнеры должны игнорировать, потому что это работа верстальщика. Если их игнорирует верстальщик — то он не выполняет свою работу. Для этого не надо никакого «ВИПа», это обычная рутинная работа.

                Дизайнер должен работать с крупными объектами, а не возиться с запятыми в текстовом блоке. Например, он должен расставлять вручную буквы в заголовках. И тому подобное. Потому что стандартный кернинг превращает слова набранные больше 14 пункта — в рваный трешак. Насмотрелся я на заголовки сделанные «как получилось» — вплоть до того, что некоторые слова практически разбивались на несколько частей. Но он должен этим заниматься всегда, а не «если генеральный попросит», это определяет уровень работы агентства. И если в «бесплатные объявления 32 на полосу» это не надо — не значит, что это нигде не надо.

                Я вам не верю. Покажите мне сайт, на котором ради красивой верстки текста — скачками меняется размер текстового блока. Какой браузер умеет определять наличие лестниц и коридоров в тексте, а также умеет втягивать строки?


                1. 380365 Автор
                  23.01.2018 13:20

                  Дизайнер должен работать с крупными объектами, а не возиться с запятыми в текстовом блоке. Например, он должен расставлять вручную буквы в заголовках.
                  Не вижу принципиальной разницы. Дизайнер создаёт общую красоту рекламного макета, и для хорошего дизайнера в макете не бывает «несущественных» деталей. Он начинает двигать буквы по одной, подбирать для всего текста шрифт, цвет… И почему он в какой-то момент должен всё бросить и передать свою заготовку какому-нибудь «подмастерью»?

                  Браузер не умеет определять наличие «лестниц» в тексте. Но в данном случае это неважно, так как я имел в виду «лестницы» из более крупных объектов. А вы (теперь ясно) — «лестницы» из слов. Я как раз во всех комментариях говорил, что размеры одного блока обычно меняются плавно — если вообще меняются. И там, конечно, за «лестницами» из слов никто не следит, с этим я не спорю. Но, вы знаете, есть и хорошая новость: глаз быстро привыкает к таким недочётам и мозг начинает успешно их игнорировать. Примерно как рекламу.


                  1. vconst
                    23.01.2018 13:36

                    И зря не видите разницы, потому что она принципиальна. А верстальщик — не «подмастерье», ни в полиграфии, ни в веб-разработке, а профессионал в своей области, как дизайнер в своей, без которых хороший продукт невозможен.

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

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

                    Я имел в виду лестницы из пробелов на нескольких строках, а вовсе не из блоков или слов. Мы же говорим о верстке текста.


                    1. 380365 Автор
                      23.01.2018 13:57

                      … или спорите просто ради спора.
                      Тут может быть ещё вариант с «и» вместо «или» (в особо злостном случае). Но я спорю скорее из вежливости. Отчасти действительно чего-то не понимаю, и мне неловко взять и так всё бросить. Отчасти, думаю, проблема в том, что мы говорим о разном. Когда я говорю о «рекламном макете», я имею в виду что-то вроде этого:


                      Я действительно не понимаю, почему после создания заголовка дизайнер должен передавать такой макет верстальщику для «заливки текста» или чтобы верстальщик перенёс союз «и» со строки «с нами и» на строку «и получайте».

                      А вы о каких рекламных макетах говорите?


                      1. vconst
                        23.01.2018 14:10

                        Еще раз…
                        Дизайн и реклама — не ограничиваются баннерами с тремя строчками текста. Вы сами в статье ведете речь о верстке текста больших объемов, а не трех строчек и заголовка. Потому я говорю о тексте, о том, что его надо верстать, а не просто «заливать» и объясняю — почему, в большинстве случаев, программа с этим не справится (и не справляются — браузеры тому примером). А для каждого случая — есть свои программы, область работ для которых пересекается довольно слабо.

                        Кстати — в образце дизайнер конкретно облажался, если он там вообще был, а не просто «залили текст по шаблону». Текст заголовка порван в хлам: «З_а_будьте о н_ехватке кл_иентов», потому что автоматический кернинг, как я выше уже говорил — не работает в заголовках набранных крупным кеглем. Это не говоря о «столбике» в 1-2 слова, это ужас-ужас и «вон-из-профессии». Я, как препресс и верстальщик — обратил бы на такой макет внимание редактора, потому что это позор.


                        1. 380365 Автор
                          23.01.2018 15:31

                          Вы сами в статье ведете речь о верстке текста больших объемов,
                          … для которых дизайнер изначально не нужен. В качестве примера я начал говорить о статье на Хабре, которую я типа «верстаю», расставляя внешние метки в Виме (а не «визуально»). И понятия не имею, каким шрифтом потом будут отображаться подзаголовки. Второй вариант — вёрстка в ЛаТеХ, там я тоже не выбираю ни начертание, ни размер шрифта для заголовка. Вёрстка для меня — прежде всего, именно разметка текста по смыслу, макетирование структуры, включая способы обтекания текстом изображений, например.

                          Я — за семантическую разметку; она не должна быть сложной, её должен создавать автор в процессе написания материала, а вовсе не «верстальщик-после-дизайнера». Если мы, конечно, говорим о «больших объёмах», которые могут быть опубликованы как в вебе, так и на бумаге. Разметка должна быть достаточно универсальной, чтобы текст можно было вывести на разных устройствах (в т.ч. твёрдые копии). Непосредственное форматирование — как в Ворде, так и в Индизайне, — не универсально, не переносимо на другие платформы без искажений. Для меня это зло. Я понимаю, что в некоторых случаях оно неизбежно — как в упомянутой вами (полиграфической) вёрстке учебников, например.


                          1. vconst
                            23.01.2018 15:49

                            Это вам кажется, что дизайнер не нужен, но дизайн статей на Хабре уже заранее придуман — дизайнерами хабра. И они потратили на это не мало времени. Вы, заполняя текстом специально отведенное вам место — выполняете функцию даже не верстальщика, а «заливальщика текста» с минимумом оформления, которое сильно ограниченно заранее.

                            Описываемая вами «верстка» — по любому требует работы дизайнера, который подготовит шаблон, выберет шрифты и ограниченные возможности оформления. Это подойдет для блогов и визиток-«хомяков», с минимумом свободы и одинаковыми как близнецы. Таких блогов, где публикующий не задумывается о внешнем виде статьи — море разливанное, тот же Хабр. В полиграфии есть всякие сервисы «печати по запросу», где дизайн уже сделан заранее, и автор только проставляет теги заголовков и ссылки на изображения. Кстати, верстальщиков там нет и книги выходят «кровь из глаз», на взгляд профессионала.

                            Но если нужен полноценный сайт или статья для печати — то без дизайнера и верстальщика не обойтись.

                            Непосредственное форматирование, универсальное и переносимое на любые платформы с минимальными искажениями — уже придумано: это верстка сайтов.

                            А полная универсальность — это утопия.


                            1. 380365 Автор
                              23.01.2018 16:23

                              выполняете функцию даже не верстальщика, а «заливальщика текста»
                              … предварительно создавая структуру текста с помощью особых верстальных меток: разделы статьи, абзацы, цитаты, изображения, списки… И да, дизайн уже кем-то придуман, и мне как верстальщику не нужно думать о дизайне, и это мне нравится — именно это я имел в виду — что мне, автору и верстальщику, дизайнер для моей работы не нужен, я спокойно создаю структуру документа, дизайн которого создаётся где-то отдельно. Это и есть мой идеал, моя «утопия».

                              с минимумом оформления, которое сильно ограничено заранее
                              Это же прекрасно! Представьте, что будет, если автор книги захочет разукрасить свой текст и его желание не будет «сильно ограничено заранее».

                              Простите, но в современной вёрстке сайтов непосредственное форматирование не используется. Вы расставляете в тексте метки «классов», которые потом могут интерпретироваться как угодно — это определяется внешними таблицами стилей. Но да, HTML наиболее близок к моему идеалу в плане описания универсальной структуры документа — об этом я тоже говорил в статье.


                              1. vconst
                                23.01.2018 16:32

                                автору и верстальщику, дизайнер для моей работы не нужен, я спокойно создаю структуру документа, дизайн которого создаётся где-то отдельно
                                Такое противоречие в одном предложении…

                                Автор в дизайн вмешиваться не должен, он в этом не разбирается, но дизайн все равно кем-то должен быть создан.

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


                                1. 380365 Автор
                                  23.01.2018 16:41

                                  Для вас нет разницы, а для меня это означает всё. Об этом, собственно, статья — о разделении структуры текста и оформления. Думаю, мы дошли до сути наших разногласий.


                                  1. vconst
                                    23.01.2018 16:46

                                    Ну и? Человек минимально размечает текст и выкладывает его в публичный блог-сервис типа LJ — это придумано сто лет назад.

                                    А «верска сайтов» включает в себя не только разметку тегами, но и оформление по заранее придуманному дизайну.


                1. cssfish
                  24.01.2018 09:52
                  +1

                  что касается веба:

                  Покажите мне сайт, на котором ради красивой верстки текста — скачками меняется размер текстового блока

                  на лендингах, например, таким вполне можно заморочиться для основного контента или заголовков (само собой, имеется ввиду небольшой объем текста, иначе смысла нет — если текст заменят, «красота» пропадет).

                  Какой браузер умеет определять наличие лестниц

                  браузер может и не умеет, но скриптом в приниципе можно посчитать количество строк и сделать выводы, после чего заменить размер шрифта, например. Или автоматизировать с помощью готовых решений навроде fittextjs. словом, костыли…


                  1. vconst
                    24.01.2018 11:24

                    В статье речь про большой объем текста.


        1. aknew
          23.01.2018 11:04

          Можно вмешаться по поводу пункта 3? Не то чтобы научных сотрудников это не волновало, это просто вне их зоны отвественности. Журнал верстают другие люди и верстают из множества статей, в зависимости от других статей твоя статья может начинаться в произвольном месте страницы и вся твоя верстка поплывет


          1. vconst
            23.01.2018 11:25

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


  1. vconst
    22.01.2018 17:09

    /