Mir ist aufgefallen, dass Manpages und andere Dokumente, die mit Unix-Dienstprogrammen formatiert werden, häufig doppelte Backticks ``
gefolgt von doppelten einfachen Anführungszeichen verwenden ''
, um zitierte Phrasen anstelle des doppelten Anführungszeichens zu umschließen "
. Einfache Anführungszeichen werden auf ähnliche Weise ersetzt. Warum ist das so?
Hier sind einige Beispiele aus der Manpage für 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.
Antwort1
Die Semantik und die üblichen Glyphen für diese Zeichen haben sich in den letzten 50 Jahren (mehrmals) geändert.
Die sechs Bit umfassenden Vorgänger von ASCII enthielten verschiedene Mehrzweckzeichen, darunter ein einzelnes Anführungszeichen, das für alles verwendet wurde, was eine gewisse Ähnlichkeit mit einem Anführungszeichen hatte: öffnendes Anführungszeichen, schließendes Anführungszeichen, Apostroph oder (durch Überdrucken) Akut oder Gravis.
ASCII führte ein weiteres Anführungszeichen ein, sodass wir nun hatten '
, das als Apostroph, schließendes Anführungszeichen und Akut verwendet wurde, und `
, das als öffnendes Anführungszeichen oder Gravis verwendet wurde (die konkreten Glyphen waren bei verschiedenen Schriftarten unterschiedlich).
Aus irgendeinem bizarren Grund deklarierte ISO-8859-1 es '
als Apostroph oder ungerichtetes Zitat, deklarierte es `
als Gravis, fügte einen weiteren Akzent hinzu ´
(Akut),
und den Überdruck abgeschafft(so dass die isolierten Akzentzeichen nun völlig sinnlos waren). Spätere Erweiterungen (MS-Windows-Codepages und Unicode) behoben dies durch die Einführung neuer gerichteter Anführungszeichen und kombinierter Akzente.
Was Sie hier sehen, ist im Wesentlichen ein Relikt aus der Zeit von ASCII, als die meisten Schriftarten gepaarte (schräge und/oder verschnörkelte) Glyphen für '
und hatten `
.
Antwort2
Eine solche Ausgabe wird erzeugt makeinfo
vonTexinfoQuellen. Texinfo kann auchRendern in andere Formate wie PDF, daher muss es ausdrucksstärker sein als ASCII. Vielleicht um zu vermeiden, dass Semantik verloren geht, makeinfo
werden Anführungszeichen so codiert, dass man sehen kann, was öffnende und schließende Anführungszeichen sind.
Beispiel: Wenn Sie den Unterschied nicht sehen könnten, könnte ich mir vorstellen, dass es etwas verwirrend wäre, wenn Sie eine Texinfo-Quelle schreiben und sich darauf verlassen würden, dass der Unterschied im Zitat sichtbar ist, weil Sie es als PDF in der Vorschau angezeigt hätten. Da Sie nie mit gerendert haben makeinfo
, würden Sie nie feststellen, dass es so gerendert nicht lesbar ist.