(Часть 1)
Стили «Базовый» и «Заголовок»
Почему для этих двух стилей потребовалось выделять отдельный раздел? На это есть чрезвычайно серьёзная причина. Состоит она в следующем: Стилей «Базовый» и «Заголовок» не должно быть в документе!
Теперь объясним.
Это не значит, что данные стили следует удалять из Стилиста (да это и невозможно). Это значит, что их нельзя использовать в документе.
Ситуация осложняется тем, что по умолчанию стиль «Базовый» предлагается сразу при создании нового документа. Это, к сожалению пока не исправленный недочёт начальных настроек OOo.
Рассмотрим ситуацию, в какую попадают практически все начинающие пользователи OOo — создание документа, в котором заголовок является не первым абзацем, а одним из последующих.
Весьма часто документ начинается с простого текста, а первый заголовок появляется спустя несколько абзацев. Пользователь приступает к набору текста. По умолчанию первому абзацу присваивается стиль «Базовый». И последующие за ним имеют тот же стиль.
Затем создаётся заголовок. Ему присваивается стиль «Заголовок 1». И здесь, после нажатия [Enter], создаётся новый абзац простого текста, но его стиль уже — «Основной текст». Не замечая этого изменения, пользователи продолжают набор. В результате они имеют текст документа, принадлежащий к одной логической категории, оформленный двумя разными стилями, в чём и проявился дефект настройки OOo по умолчанию.
Существует широко распространённое, но при этом глубоко ошибочное мнение о предназначении стиля «Базовый». К сожалению, его придерживаются даже специалисты-филологи, повседневно использующие OOo в своей работе. Вот мнение одного из них:
«Вы когда стили используете? Когда записку быстро чёркаете, или когда книгу пишите?
Стиль «Базовый» — это стиль для документов без стилей, т. е. его задача состоит в отображении набора простого текста, не требующего стилистического оформления.
Остальные «вшитые» стили ООо соблюдают чёткую иерархию, согласно английской стилистике: после Заголовка идёт стиль для первого абзаца — «Основной текст», который продолжается стилем второго и последующих абзацев — «Первая строка с отступом». Остальное — для цитат, списков, ссылок и т. д.
Поймите, пожалуйста: когда вы набираете коротенький документ с ручным форматирование, стилист ООо представляет «Базовый», над форматированием которого можно без ущерба поиздеваться; но уж если вы поставите «Заголовок», то стилист решит, что вы намереваетесь написать что-то серьёзное и включает свою систему».
По понятным причинам, автора сей цитаты мы не указываем.
Данное рассуждение весьма логично, и почти верно, за исключением одной ошибки — в OOo нет документов «без стилей». А посему стиль «Базовый» никогда не предназначался для создания документов с ручным форматированием. Если бы это было так, то этот стиль не лежал бы в основе всей системы стилей.
Вспомним «Объектную модель» (статья «Философия OpenOffice.org». Там уже упоминались понятия «Наследование» и «Родительский». Так вот, стиль «Базовый» является родительским для всей системы стилей. От него наследуют все стили в системе. Следовательно, любые изменения в параметрах стиля «Базовый» неминуемо отражаются на всех остальных стилях. То же, но в меньшей степени, относится к стилю «Заголовок». На нём основано всё подмножество стилей, отвечающих за заголовки.
Повторимся, нам неоднократно приходилось наблюдать за мучениями пользователей, размечавших основной текст стилем «Базовый» и пытавшихся придать документам требуемый вид, редактируя настройки этого стиля. В результате у них разъезжалось всё — заголовки, таблицы, подписи и т. д.
Следовательно, для основного текста необходимо применять стиль «Основной текст». Для заголовков соответствующего уровня — стиль «Заголовок 1», «Заголовок 2», «Заголовок N».
Проиллюстрируем это примером.
Есть текст с тремя уровнями заголовков, размеченный стилями «Заголовок 1», «Заголовок 2», «Заголовок 3», «Базовый», «Основной текст», «Цитата» и «Подпись». Затем в стиле «Базовый» изменяется цвет шрифта на зелёный. В документе, основной текст которого отформатирован стилем «Базовый», изменения в одном стиле отразились на всём документе, что совершенно недопустимо.
Таким образом видно, что изменения в «Базовом» стиле ведёт к лавинообразному изменению во всей системе стилей.
В документе же, основной текст которого отформатирован стилем «Основной текст», изменение этого стиля не затронет никаких других элементов документа.
Следовательно, стиль «Базовый» нельзя использовать в качестве текстового стиля. Вместо него необходимо использовать стиль «Основной текст».
Здесь необходимо сделать небольшую ремарку. Выше было сказано, что изменение стиля «Основной текст» не затрагивает другие элементы документа. Однако бывают ситуации, когда стиль «Основной текст» является родительским для других стилей. В этом случае, разумеется, его изменения затронут и его потомков. Следовательно, потомки стиля «Основной текст» должны так же управлять именно основным текстом документа. Например, когда нужно сделать логический интервал в тексте без отделения его заголовком. Обычно это делается с помощью вставки пустого абзаца. Но правильнее сделать стиль «Основной текст Логический отступ», основанный на стиле «Основной текст» и отличающийся от него лишь увеличенным отступом перед абзацем. В параметре «следующий стиль» у него должен быть выставлен стиль «Основной текст».
Таким образом, если потребуется сменить шрифт у основного текста документа, это нужно будет сделать лишь у стиля «Основной текст», а у всех его дочерних стилей он изменится автоматически.
Если же назначить стиль «Основной текст» родительским для стиля, который не относится к группе текста, а, например, к заголовкам, то это будет логической ошибкой.
(Продолжение: Базовые концепции философии OpenOffice.org. Часть 3).
А. Е. Харламенков