Несколько слов о пробелах

Источник: habr.com

 

Как следует из заголовка, речь в статье пойдёт о неотъемлемой части любого русскоязычного (и не только) текста — о пробеле. Мы затронем историю пробела, виды пробелов, вопросы употребления пробела в веб-типографике.

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

  1. спусковые (большие вертикальные пропуски в первой полосе издания) и концевые пробелы полосы,
  2. абзацные отступы и концевые пробелы абзаца,
  3. межстрочные пробелы (между строками текста),
  4. межсловные пробелы (между словами в одной строке),
  5. межбуквенные пробелы (между буквами в слове).

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

История межсловного пробела

Межсловный пробел — сравнительно позднее изобретении в истории человеческой мысли. Глубоко история пробела изложена в книге Пола Санджера (Paul Saenger) «Space between Words: The Origins of Silent Reading», а также, несколько менее глубоко, в книге Иоганнеса Фридриха «История письма».

Также есть неплохая статья Антона Бизяева о пробелах и об их истории «В начале пробелов не было», которая была опубликована в 1997 году в журнале «Publish».

Вкратце, пробел появился достаточно поздно, в тех письменностях, где отсутствие разграничения слов приводило к сложности чтения (так называемое консонантное письмо, где записываются только согласные звуки). Однако в греческом и латыни, в которых записывали и гласные звуки, использование пробела было утеряно. Пол Санджер связывает это с тем, что чтение производилось вслух, что упрощало разграничение слов при восприятии текста.

Вновь пробел начал использоваться приблизительно в VII—IX вв. н. э., и эта традиция пришла из Ирландии, где у писцов и чтецов родным языком являлся древнеирландский, а религиозная литература записывалась на латыни. По-видимому, по этой причине монахи испытывали трудности с чтением вслух. Считается, что появление пробела плотно связано с постепенным переходом от чтения вслух к чтению про себя. Примерами книг на латыни с межсловными пробелами являются памятники британской литературы: Евангелие из Дарроу (VII в.) и Келлская книга (VIII—IX вв.).

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

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

Пробелы в ручном наборе

Когда подвижность литер появилась (а произошло это с появлением наборных шрифтов), появились соответственно и вопросы — а как же ставить пробелы, чтобы соблюдалась выключка по ширине?

Технология ручного набора такова, что набранная строка полностью зажимается в верстатке и в гранке, и, соответственно, должна иметь ширину, практически точно равную ширине полосы (подробнее с технологией ручного набора можно познакомиться в одноимённой книге М. В. Шульмейстера).

Строка при ручном наборе набиралась из литер (брусков, на торце которых делались выпуклые зеркальные копии букв, отпечатывающиеся на бумаге), а межсловные пробелы создавались с помощью так называемых шпаций — брусков различной толщины, у которых на торце нет печатающей поверхности. Выглядит это примерно вот так. Шпации для каждого кегля шрифта, естественно, выпускались свои, и имели различную ширину. Например, для шрифта кегля 10 пунктов (стандартный кегль для большинства текстовых изданий) выпускались шпации шириной 10, 5, 4, 3, 2 и 1 пункт.

Шпации шириной в кегль назывались кегельными или круглыми. Шпации в половину кегельной назывались полукегельными или полукруглыми. Также существует название «тонкая шпация», под которой понимают шпации толщиной 1—2 пункта для шрифта кегля 8—12 пунктов. То есть, для шрифта кегля 10 пунктов тонкая шпация обычно составляет 2 пункта (соответственно, 1⁄5 кегельной). Однако, в связи с отсутствием точного определения тонкой шпации, в руководствах издателя, редактора и верстальщика обычно говорят не об отбивке на тонкую шпацию, а об отбивке на столько-то пунктов (считая, что кегль шрифта равен 10 пунктам).

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

Традиционная ширина межсловного пробела

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

Шульмейстер пишет (стр. 94), что при наборе строки между словами ставится полукруглая. Когда строка набрана до конца, в большинстве случаев её ширина оказывается либо меньше, либо больше ширины полосы набора. Поэтому верстальщику приходится изменять ширину пробелов, уменьшая её минимум до 1⁄4 круглой и увеличивая максимум до 3⁄4 круглой (соответственно, при наборе кеглем 10 пунктов межсловные пробелы могут варьироваться от 3 до 7 пунктов). Естественно, бывают нюансы, зависящие от формата издания, но мы их касаться не будем.

Однако, Шульмейстер оговаривается, что сам по себе межсловный пробел в полукруглую великоват, и использование стандартного пробела в 1⁄3 круглой является как более экономичным с точки зрения расхода бумаги, так зачастую и более красивым. Также использование межсловного пробела в полукруглую не рекомендуется для узких шрифтов.

С появлением строкоотливных машин пробелы стали делаться равномерными по ширине в пределах одной строки, а ширина межсловного пробела стала варьироваться около 1⁄3 круглой.

Компьютерный набор и веб-типографика

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

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

Символы пробела в Unicode

В Unicode предусмотрены следующие символы для пробелов западной типографики.

  1. Межсловный пробел, U+0020,   — ширина от 1⁄5 до 1⁄2 круглой в зависимости от шрифта. Для средних шрифтов межсловный пробел имеет ширину порядка 1⁄4 круглой (например, Times New Roman имеет именно такой пробел), для широких — порядка 1⁄3 круглой (Microsoft Verdana — 0,35 круглой, Microsoft Tahoma — 0,31 круглой).
  2. Неразрывный межсловный пробел, U+00A0,   — имеет ту же ширину, что и обычный межсловный пробел, но в месте неразрывного пробела запрещён разрыв строки.
  3. Обычный и неразрывный межсловный пробелы входят в любой шрифт и правильно отображаются всеми агентами, если не считать отсутствия увеличения и уменьшения неразрывного пробела при выключке по ширине в некоторых текстовых процессорах и браузерах (что является нарушением рекомендаций). Например, FireFox правильно масштабирует неразрывные пробелы, а MSIE 7.0 не масштабирует их вовсе.
  4. Все остальные пробельные символы имеют фиксированную ширину и не растягиваются при выключке строк по ширине. Вместе с тем, согласно алгоритму разрыва строк в Unicode, все они должны обрабатываться как точка разрыва строки.
  5. Круглая шпация, U+2003,   — как было сказано, имеет ширину, равную размеру кегля. Также называется Em Space, возможно, потому что буква «M» в каких-либо старых шрифтах имела такую ширину. Вместе с тем, сейчас это выполняется далеко не везде, и поэтому утверждение, что Em Space всегда имеет ширину буквы «M» — заблуждение.
  6. Полукруглая шпация, U+2002,   — половина круглой. Также называется En Space, возможно, потому что буква «N» в каких-либо старых шрифтах имела такую ширину. Вместе с тем, сейчас это выполняется далеко не везде, и поэтому утверждение, что En Space всегда имеет ширину буквы «N» — заблуждение.
  7. Третная шпация, U+2004,   — треть круглой. По-английски называется Three-per-Em Space.
  8. Четвертная шпация, U+2005,   — четверть круглой. По-английски называется Four-per-Em Space.
  9. Одна шестая круглой, U+2006,  . По-английски называется Six-per-Em Space.
  10. Тонкая шпация, U+2009,   — обычно имеет ширину в 1⁄5 круглой (реже — 1⁄6). Вообще говоря, её ширина зависит от языка набора и производителя шрифта, и в кириллических шрифтах тонкая шпация обычно имеет ширину в 1⁄5 круглой. Эта шпация по пропорциям в точности соответствует двухпунктовой шпации при наборе кеглем в 10 пунктов. По-английски называется Thin Space.
  11. Волосяная шпация, U+200A,   — самая узкая шпация, шириной около 1⁄10—1⁄16 круглой. Такая шпация по пропорциям примерно соответствует однопунктовой шпации при наборе кеглем в 10 пунктов или выглядит даже у́же.

Использование различных пробелов

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

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

Основные правила использования пробелов будут описаны ниже, но в целом мы рекомендуем следующий принцип для использования при вёрстке для веба.

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

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

Обработка пробелов браузерами и поисковиками

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

Как выяснилось, рендеринг нестандартных пробельных элементов работает в браузерах из рук вон плохо. Нормально справляются с задачей только Firefox 3.0 в Windows XP и *nix, MSIE 7.0 и Safari в Windows XP. Об MSIE 8.0 данных нет, но скорее всего, у него тоже всё в порядке.

  • Firefox до версии 3.0 вообще не разрывает строку в местах нестандартных пробелов. При этом ширина пробелов отображается правильно.

  • Opera 9.26 и 9.50, FireFox 3.0 под Mac, Safari под Mac строку переносят, но зато все пробелы оказываются одной ширины.

  • MSIE 5.5 и 6.0 под Windows 2000 вместо пробелов ставят квадратики (возможно, соответствующие символы просто отсутствуют в системном шрифте).

  • Не вполне понятно, с чем связана одинаковая ширина всех пробельных элементов во всех браузерах под Mac. Вероятно, со встроенными шрифтами.

    Основные правила употребления пробелов

    Итак, ещё раз подчеркнём, что во всех правилах, перечисленных ниже, тонкая шпация   используется только в том случае, когда автор отметает риск использования посетителем сайта браузеров, неверно отображающих тонкую шпацию. К ним относятся некоторые браузеры в *nix (возможно, это связано со встроенными шрифтами), MSIE версии 6.0 и раньше, браузеры для Mac (ими можно пренебречь, так как ошибка рендеринга заключается только в ширине шпации), возможно — некоторые браузеры для мобильных телефонов и КПК. В том случае, если использование таких браузеров вероятно, мы рекомендуем использовать вместо тонкой шпации обычный или неразрывный межсловный пробелы.

    Как было описано выше, согласно рекомендациям Unicode тонкая шпация является таким пробелом, где возможен разрыв строки. В тех случаях, когда правила требуют постановки тонкой шпации и запрета разрыва строки (например, между разрядами при наборе числа), необходимо использовать конструкцию типа <span style="white-space: nowrap;">250&thinsp;000</span>. HTML-элемент nobr является проприетарным и к использованию запрещён.

    Далее мы опишем те правила расстановки пробелов, которые чаще всего, по нашим наблюдениям, нарушаются при вёрстке текстов. Более подробную информацию о правилах набора текстов можно почерпнуть, например, в «Справочнике издателя и автора» А. Э. Мильчина и Л. К. Чельцовой.

    Сокращения и символы

    1. В сокращениях «и так далее», «и тому подобное», «так как», «то есть», «и другие», «до нашей эры», «южной широты» и подобных все элементы сокращения отделяются неразрывным пробелом:
      – и т. д. — и&nbsp; т.&nbsp; д.
      – и т. п. — и&nbsp; т.&nbsp; п.
      – т. к. — т.&nbsp; к.
      – т. е. — т.&nbsp; е.
      – и др. — и&nbsp; др.
      – до н. э. — до&nbsp; н.&nbsp; э.
      – ю. ш. — ю.&nbsp; ш.
    2. Инициалы отбиваются друг от друга и от фамилии неразрывным пробелом.
      – А. С. Пушкин — А.&nbsp; С.&nbsp; Пушкин
      – Дж. Р. Р. Толкиен — Дж.&nbsp; Р.&nbsp; Р.&nbsp; Толкиен
      Допустима также отбивка инициалов друг от друга и от следующей за ним фамилии тонкой шпацией, однако перенос инициалов либо фамилии на следующую строку запрещён. Независимо от выбора стиля отбивки инициалов необходимо придерживаться единства стиля в рамках всего документа или сайта:
      – В. В. Путин — В.&thinsp; В.&thinsp; Путин
      – В. Путин — В.&thinsp; Путин
      – Путин В. В. — Путин&nbsp; В.&thinsp; В.
      – Путин В. — Путин&nbsp; В.
    3. Сокращённое слово отбивается от имени собственного неразрывным пробелом:
      – ул. Щорса — ул.&nbsp; Щорса
      – г. Москва — г.&nbsp; Москва
      – метрополитен им. Ленина — метрополитен им.&nbsp; Ленина
    4. Число и соответствующее ему счётное слово отбиваются неразрывным пробелом:
      – 12 млрд рублей — 12&nbsp; млрд рублей
      – гл. IV — гл.&nbsp;IV
      – пп. 3—6 — пп.&nbsp;3—6
      – рис. 42 — рис.&nbsp;42
      – XX в. — XX&nbsp; в.
      – 1941—1945 гг. — 1941—1945&nbsp; гг.
      – палата № 6 — палата №&nbsp;6
      – § 22 — §&nbsp;22
      – 25 % — 25&nbsp;%
      – 97,5 ? — 97,5&nbsp;?
      – 16 ¢ — 16&nbsp;¢.
    5. Число и соответствующая ему единица измерения (кроме знаков градуса, минуты и секунды) отбиваются тонкой шпацией, разрыв строки запрещён:
      – 400 м — 400&thinsp; м
      – 100 т — 100&thinsp; т
      – 451 °F — 451&thinsp;°F
      – но 59°, 57′, 00″.
    6. Знаки градуса, минуты и секунды отбиваются тонкой шпацией от последующих цифр.
      – 59° 57′ 00″ —
      – 59°&thinsp;57′&thinsp;00″

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

    Числа и интервалы

    1. Дробная и целая части числа не отбиваются пробелом от запятой:
      – 0,62, 345,5.
    2. Разряды числа отбиваются друг от друга тонкой шпацией, кроме дат, номеров (например, документов), обозначений машин и механизмов.
      – 25 563,42 — 25&thinsp;563,42
      – 1 652 — 1&thinsp;652
      – 1 298 300 — 1&thinsp;298&thinsp;300
      но 1999 год, ГОСТ 20283, вх. № 982364
    3. При численном обозначении интервалов тире не отбивается от границ интервала.
      – 50—100 м — 50—100&thinsp; м
      – 1 500—2 000 — 1&thinsp;500—2&thinsp;000
      – 1,5—2 тыс. — 1,5—2&nbsp; тыс.
      – 15—20 % — 15—20&nbsp;%
    4. Унарные знаки плюс, минус и плюс-минус не отбиваются от следующего за ним числа: +20 °C, −42, ±0,1.
    5. Бинарные знаки математических операций и соотношений отбиваются с обеих сторон на тонкую шпацию.
      – 2 + 3 = 5 — 2&thinsp;+&thinsp;3&thinsp;=&thinsp;5

    Знаки препинания

    1. Точка, запятая, двоеточие, вопросительный и восклицательный знаки, точка с запятой не отбиваются пробелом от предшествующего слова, и отбиваются пробелом от последующего: Ха, ха. Ха? Ха!
    2. Многоточие не отбивается от предшествующего слова, если оно стоит в конце предложения или части предложения, и от последующего — если оно стоит в начале предложения: Ого… Что? …Ничего.
    3. Кавычки не отбиваются пробелами от заключённого в них текста: броненосец «Потёмкин».
    4. Скобки не отбиваются пробелами от заключённого в них текста, и отбиваются пробелами снаружи (кроме того случая, когда закрывающая скобка соседствует с знаком препинания справа): Текст в&nbsp; скобках никому не&nbsp; интересен (обычно).
    5. Тире отбивается от предыдущего слова неразрывным пробелом, а от следующего — обычным пробелом (в том числе и в случае, если интервал указан в словесной, а не цифровой форме).
      Витенька&nbsp;— молодец!
      нам подойдёт только огурец длиной пятнадцать&nbsp;— двадцать сантиметров
      пакт Молотова&nbsp;— Риббентропа.
    6. Если два числа в словесной форме не образуют интервал, а означают «то ли одно число, то ли другое», то между ними ставится дефис, который не отбивается пробелами: выпил рюмки две-три.
    7. Существует рекомендация отбивать тире на тонкую шпацию или не отбивать вообще от точки, запятой или кавычки. Это может быть оправдано при наборе печатного текста конкретным шрифтом, так как увеличивает однородность пробелов. В то же время, при просмотре текста для веба шрифты у пользователя могут быть совершенно разнообразными, из-за чего левый от тире пробел постоянно становится уже, чем правый.

    Нежелательные переносы

    1. Короткие слова и союзы (а, и, но, я, ты, и так далее) лучше отбивать от последующего слова неразрывным пробелом, так как висящее на конце строки короткое слово ухудшает читаемость. В том числе очень желательно не допускать переноса строки между частицей не и следующим за ней глаголом.
    2. Частицы же, бы, ли желательно отбивать от предыдущего слова неразрывным пробелом: то&nbsp;же, сказал&nbsp;бы, думал&nbsp;ли я.
    3. Желательно не отрывать предлоги в начале предложения от следующих за ними слов. (даже более длинные, чем одно- и двухбуквенные)