21 июл. 2021 г.

Пробелы в Indesign

Если в докомпьютерную эпоху набор текста и подготовка оригинал-макета были отдельной профессией, то ныне любой человек, установивший верстальную программу (или даже Word) способен готовить документы к печати.

В компьютерную эпоху пробелы, как самая несодержательная часть текста, часто обходят должным вниманием при подготовке изданий. Зачастую в документе присутствуют всего два вида пробелов: обыкновенный и неразрывный (в Word'е фиксированной ширины, в InDesign'е — нет). Между тем, пробелов существует около двух десятков, и некоторые из них очень пригождаются в русской типографике.

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

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

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


Итак, какие же ещё пробелы нам предлагает InDesign? (в скобках русские названия, которые я знаю)

Em Space (круглая) — пробел шириной в кегль. Почти нигде не нужен.
En Space (полукруглая) — пробел шириной в половину кегля.
Nonbreaking Space (Fixed Width) — неразрывный пробел фиксированной величины. Величина задаётся в настройках
Third Space (третья) — пробел шириной в треть круглой
Quarter Space (четвёртая) — пробел шириной в четверть круглой
Sixth Space (шестая) — пробел шириной в одну шестую круглой
Flush Space — пробел изменяемой ширины, добавляется в конце полностью (с последней строкой) выровненного абзаца
Hair Space — одна двадцать четвёртая круглой
Thin Space (тонкая) — одна восьмая круглой. В английской типографике добавляется вокруг тире
Figure Space — пробел шириной с цифру
Punctuation Space — пробел шириной с знак пунктуации (. : !)Некоторые из них имеют исключительно историческую ценность, а другие очень и очень улучшают вид издания.

Шестая ставится вокруг тире и значительно улучшает вид текста: пробелы вокруг тире не растягиваются ни при каких условиях.

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

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

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

Полукруглую я ставлю в некоторых специальных случаях, например в таком: Ил. 3. В. И. Пупкин — между «3.» и «В.».


***Напоследок хочу вручить несколько (не всегда идеально работающих) индизайновских регулярных выражений, помогающих мне с автоматической расстановкой пробелов.

Расставляет неразрывные пробелы после однобуквенных слов кроме б и ж:
Find what: \b([ИЯОВКУСАияовкуса])\b
Change to: $1~S

Расставляет неразрывные пробелы до б и ж:
Find what: \b([ЖбжБ])\b
Change to: $1~S

Заменяет пробелы вокруг тире:
Find what: [~m~>~f~|~S~s~<~/~.~3~4~%]~_[~m~>~f~|~S~s~<~/~.~3~4~%]
Change to: ~%~_~%

Заменяет пробелы в инициалах (до фамилии):
Find what: ([А-ЯA-Z]\.)\s([А-ЯA-Z]\.)\s
Change to: $1~4$2~4

Заменяет пробелы после номера/параграфа, (после которого идёт цифра)
Find what: (№|~6)\s?(?=\d)
Change to: $1~<

Макрос MS Office Excel: удаление цветных строк

Есть табличка, большая часть строк с черным текстом, часть строк выделена красным, синим, зеленым цветом.






Макрос удаляет цветные строки:


Sub removeNoBlackText() 
 i = ActiveSheet.UsedRange.Rows.Count 
 For c = i To 1 Step -1 
 If Cells(c, 1).Font.Color <> Black Then Rows(c).Delete 
 Next 
End Sub

Макрос MS Office: замена картинок именами файлов

Этот код заменяет все изображения (картинки, диаграммы, смарты) именами файлов:

Sub Picture_del()
Dim oInlineShape As InlineShape
Dim i As Integer
i = 1
Selection.HomeKey Unit:=wdStory
For Each oInlineShape In ActiveDocument.InlineShapes
oInlineShape.Select
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.TypeText Text:="[img]img" & i & ".tif[/img]"
i = i + 1
Next
End Sub


Этот код заменяет только картинки именами файлов

Sub del_pick()
  Dim ii, rng, nn
  nn = 0 'число собс-но картинок
  With ActiveDocument.InlineShapes
   For ii = 1 To .Count Step 1  'сначала считаем картинки
      If .Item(ii).Type = 3 Then 'Это картинка
        nn = nn + 1 'Увеличим счетчик картинок
      End If
   Next ii
   If nn > 0 Then ' Если есть что заменять
     For ii = .Count To 1 Step -1 'теперь пойдём от хвоста
       If .Item(ii).Type = 3 Then 'Это картинка?
         Set rng = .Item(ii).Range.Duplicate ' запомним место
         .Item(ii).Delete 'удалим картинку
         rng.Text = "[img]image" & nn & ".tif[/img]" 'Впишем название
         nn = nn - 1 'Уменьшим счётчик картинок
       End If
     Next ii
   End If
  End With
End Sub