Percebi que as páginas de manual e outros documentos formatados pelos utilitários Unix costumam usar backticks duplos ``
seguidos por aspas simples ''
para colocar frases entre aspas, em vez do caractere de aspas duplas "
. Aspas simples são substituídas da mesma forma. Por que é isso?
Aqui estão alguns exemplos, na página de manual para 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.
`...'
-o (mesmo nos comentários).Respostas:
A semântica e os glifos comuns para esses caracteres foram alterados (várias vezes) nos últimos 50 anos.
Os antecessores de seis bits do ASCII continham vários caracteres multiuso, incluindo um caractere de aspas simples, usado para qualquer coisa que tivesse alguma semelhança com uma cotação: cotação de abertura, cotação de fechamento, apóstrofo ou (por superimpressão) aguda ou acento grave.
O ASCII introduziu mais um caractere de aspas, de modo que agora tínhamos
'
, que era usado como apóstrofo, aspas de fechamento e sotaque agudo, e`
que era usado como aspas iniciais ou sotaque grave (os glifos de concreto diferiam em várias fontes).Por alguma razão bizarra, a ISO-8859-1 declarou
'
apóstrofo ou citação não direcionada, declarou`
sotaque grave, acrescentou mais um sotaque´
(sotaque agudo) e aboliu a superimposição (para que as marcas de sotaque isoladas agora fiquem completamente sem sentido) . Extensões posteriores (páginas de código do MS-Windows e Unicode) corrigiam isso introduzindo novos caracteres de cotação direcionada e combinando acentos.O que você vê aqui é essencialmente uma relíquia dos tempos ASCII, quando a maioria das fontes tinha emparelhado (inclinado e / ou encaracolado) glifos para
'
e`
.fonte
Uma saída como essa é gerada por fontes
makeinfo
do Texinfo . O Texinfo também pode renderizar para outros formatos, como PDF , por isso precisa ser mais expressivo que o ASCII. Talvez para evitar jogar fora a semântica,makeinfo
codifique aspas assim, para que você possa ver o que está abrindo e fechando aspas.Exemplo: se você não pudesse ver a diferença, posso imaginar que seria um pouco confuso se você escrevesse alguma fonte do Texinfo e confiasse na diferença de cotação visível, porque você a visualizaria como PDF. Como você nunca renderizou
makeinfo
, nunca descobriria que não é legível, renderizado assim.fonte