числа и единицы измерения в InDesign: есть ли простой способ сделать это?

Занимаюсь написанием большого количества научных текстов. Многие из них я (вынужден) делаю в LaTeX. Однако я предпочитаю InDesign и использую его чаще, чем Latex.

Научные/технические тексты часто требуют большого количества чисел с единицами измерения («5 м», «10 с» и т. д.). Научные руководства по стилю, которые я обычно пишу, обычно требуют по крайней мере пробела между числом и единицей измерения, но еще более предпочтительным является em-пробел. В Latex есть замечательный пакет siunitx, который обрабатывает несколько вещей, связанных с единицами измерения. Насколько мне известно, это:

  • Работает с em-пробелом между числом и единицей измерения.
  • делает пару число + единица неразрывной, IE, вы никогда не получите «5» в конце одной строки и «s» в следующем
  • Обрабатывает тот факт, что вы можете захотеть изменить стиль записи определенной единицы на основе отраслевых стандартов (распространенный пример: гигабит в секунду в истинном стиле «СИ» должен быть записан как Гбит / с, но многие электротехнические работы вместо этого предпочитайте Гбит/с). Все это можно потом подправить.

Третий момент меня не слишком волнует, но было бы неплохо, если бы я мог получить аналогичную функциональность в InDesign, которая обрабатывает два других пункта: сделать пространство между ними равным длине em-space и иметь все это не ломается. Я экспериментировал со стилями абзацев и символов, но это всегда заканчивалось проблемой. Есть ли «правильный» способ реализации этого?


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

Эм-пространство, правда? Вы уверены в этом на все 100%? Это самое большое из всех пространств с фиксированной шириной. «Длина 3 м» выглядит положительно странно.
Вы правы, это не em-space. Мне сказали это однажды, и это звучало логично, но я не знал, насколько широким было эм-пространство, и это было явно неправильно. Пространство, используемое siunitx, уже стандартного пространства, но я не уверен, насколько оно узкое. Это также не официальный стандарт ISO или SI, но для соответствия текстам, написанным латексом, я хотел бы также реализовать более узкое пространство.

Ответы (1)

Вы можете создать стиль GREP внутри стиля абзаца, который использует стиль символа для применения неразрывного атрибута к строке GREP, например \d+\ss✝. Что на английском языке означает, что любая пара «номер-пробел-s» будет вынуждена держаться вместе на одной строке. Затем вы можете продублировать этот стиль GREP для других единиц, таких как \d+\sm✝ и так далее.

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

введите описание изображения здесь

введите описание изображения здесь

Что касается преобразования этого пробела между числом и единицами в пространство EM, это не может быть «живым» действием, как в стиле GREP выше, но это может быть достигнуто с помощью поиска/замены GREP, и вы можете сохранить этот поиск для повторения использования см. ниже.

введите описание изображения здесь

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

введите описание изображения здесь

Если вы преобразуете все пробелы между числами и единицами измерения в пробелы em (что безумно широко, я бы просто использовал неразрывные пробелы или, может быть, даже шестые пробелы ), вам действительно не нужен неразрывный стиль символа, не так ли? Кстати: Поскольку мы имеем дело с типографикой: не следует ли вам использовать символ кинжала (†) вместо латинского креста (✝)? 😁
Да, есть несколько разных подходов к этому.