Почему справочные страницы Unix используют двойные обратные кавычки вместо двойных кавычек?


32

Я заметил, что страницы руководства и другие документы, отформатированные утилитами Unix, часто используют двойные обратные кавычки, ``за которыми следуют двойные одинарные кавычки, ''чтобы заключить в кавычки фразы вместо символа двойной кавычки ". Одинарные кавычки заменяются аналогично. Почему это?

Вот пара примеров из справочной страницы для grep:

 To find all occurrences of the pattern `.Pp' at the beginning of a line:

       $ grep '^\.Pp' myfile

 The apostrophes ensure the entire expression is evaluated by grep instead
 of by the user's shell.  The caret `^' matches the null string at the
 beginning of a line, and the `\' escapes the `.', which would otherwise match
 any character.

 The grep utility is compliant with the IEEE Std 1003.1-2008 (``POSIX.1'')
 specification.

Мне не хватает полного ответа, но Emacs (почти во всех режимах, которые я видел) имеет специальную подсветку `...', выделяющую его (даже в комментариях).
Эхристоферсон

Ответы:


33

Семантика и обычные символы для этих символов изменились (несколько раз) за последние 50 лет.

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

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

По какой-то странной причине, ISO-8859-1 объявлен 'апострофом или неориентированной цитатой, объявлен `серьезным акцентом, добавлен еще один акцент ´(острый акцент) и отменена надпечатка (так что изолированные метки акцента теперь стали совершенно бессмысленными) , Более поздние расширения (кодовые страницы MS-Windows и Unicode) исправили это, введя новые символы направленных кавычек и комбинируя акценты.

То, что вы видите здесь, по сути является пережитком времен ASCII, когда большинство шрифтов имели парные (наклонные и / или фигурные) глифы для 'и `.


4
На самом деле ISO-8859-1 не имеет отношения к надпечатке и отражает скорее эффект , чем причину . Это было потеряно из-за (по существу) отсутствия поддержки видеотерминала для этой функции. Твердые копии терминалов не затрагиваются.
Томас Дики

7

Такой вывод генерируется makeinfoиз источников Texinfo . Texinfo также может отображать в других форматах, таких как PDF , поэтому он должен быть более выразительным, чем ASCII. Может быть, чтобы не выбрасывать семантику, makeinfoкодирует такие кавычки, чтобы вы могли видеть, что открывают и закрывают кавычки.

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.