Aspas curvas e travessões quebram código: como corrigi-los
Aspas curvas, apóstrofos curvos, travessões (meia e cheia) e espaços sem quebra parecem iguais às versões comuns, mas o computador os trata como caracteres diferentes. Código, arquivos CSV, fórmulas de planilha e linhas de comando esperam os comuns. Uma citação colada deixa de funcionar como string, um hífen duplo em uma opção vira travessão, e um espaço sem quebra pode impedir o programa de ler uma linha. Deixe os caracteres retos antes de colar no código e teste o resultado onde ele vai rodar.
Corrigir texto coladoTexto colado tem linhas quebradasUse de graçaDe onde vêm os caracteres
Editores de texto e muitos programas de e-mail trocam as aspas retas por curvas enquanto você digita. Isso se chama aspas inteligentes. O Word também pode transformar dois hífens em um travessão. Páginas da web e alguns editores inserem espaços sem quebra, U+00A0, que mantêm duas palavras na mesma linha. Esses caracteres estão corretos para a tipografia, por isso aparecem. Estão errados para qualquer coisa que um programa lê.
O que quebra, e onde
| Onde | O que dá errado |
|---|---|
| Código-fonte | Aspas curvas não delimitam strings, e muitas linguagens rejeitam uma aspa curva ou um espaço sem quebra fora de uma string |
| Comandos de shell | Um travessão digitado no lugar de hífen não é o marcador de opção, então o programa vê um argumento desconhecido |
| Arquivos CSV | Os parsers envolvem os campos em aspas duplas retas, então aspas curvas não protegem uma vírgula dentro de um campo |
| Fórmulas de planilha | As aspas curvas viram parte do texto, ou a fórmula retorna erro |
| JSON | Aspas curvas não são delimitadores de string válidos, então o parser falha |
Para as regras de aspas que os arquivos CSV seguem, veja o guia de CSV para JSON.
Deixe-os retos no fixmint
Três ferramentas cobrem os casos mais comuns, e cada uma trata um conjunto diferente de caracteres.
- Aspas curvas. Abra corrigir texto colado e marque Endireitar aspas curvas. Ela troca aspas simples e apóstrofos curvos por aspas simples retas, e aspas duplas curvas por aspas duplas retas. Deixa os travessões como estão. Suas outras opções, como remover espaços no início e no fim das linhas e reduzir espaços repetidos, já vêm marcadas por padrão.
- Travessões, reticências e espaços estranhos. Abra remover caracteres ocultos e marque Também converter aspas curvas, travessões (meia e cheia) e … para ASCII simples. Os travessões viram hífen e as reticências viram três pontos. Os espaços sem quebra viram espaços normais por padrão. A visualização marcada mostra onde cada alteração foi feita.
- Um caractere ou uma frase. Abra localizar e substituir, deixe Regex desmarcado e digite o caractere em Localizar e a versão comum em Substituir. Com Regex desmarcado, a caixa Localizar é literal, então uma aspa curva só corresponde a si mesma.
Veja a segunda ferramenta aplicada a uma colagem típica:
| Antes | Depois |
|---|---|
| “Olá”, ela disse. | "Olá", ela disse. |
| It’s done. | It's done. |
| —verbose | -verbose |
A última linha mostra um limite. Cada travessão vira um hífen, então um hífen duplo que o editor de texto uniu em um travessão cheio volta como um único hífen. Corrija opções como --verbose manualmente depois da conversão.
Cole o resultado onde ele vai rodar e teste ali. Endireitar as aspas não muda o sentido do texto, então uma execução bem-sucedida é a verificação real.
Confira o resultado
Passe o texto já reto por remover caracteres ocultos mais uma vez e leia a visualização marcada. Qualquer marca restante é um caractere que a primeira passada não cobriu, como um espaço de largura zero ou um espaço incomum. A visualização marcada mostra onde cada um está, para que você corrija no lugar.
Os caracteres parecem quase idênticos na tela, então uma verificação visual não os percebe. Uma aspa reta e uma curva diferem só um pouco no formato, e um travessão meio costuma parecer um hífen em muitas fontes. Teste o texto, não os seus olhos.
Quando não endireitar
Mantenha aspas curvas e travessões em textos que as pessoas leem impressos ou em uma página da web. Ali é a tipografia correta. Endireite apenas o conteúdo que vai para código, um CSV, uma fórmula ou um comando. Para textos que você escreve em um editor de texto, desative a opção de aspas inteligentes se for colar o conteúdo em código depois.
Casos especiais
- Aspas misturadas. Um documento pode misturar aspas curvas e retas. Execute a etapa de endireitar uma vez e depois procure no resultado as que sobraram, porque as fontes são diferentes.
- Apóstrofos em palavras. Um apóstrofo curvo em uma contração vira reto, que é o que a maioria dos códigos espera. Confira as contrações que aparecem dentro de uma string.
- Guarde o original. Endireitar é de mão única: uma aspa reta não diz de qual aspa curva ela veio. Guarde o documento original e faça a alteração em uma cópia.
- Travessões em frases. Um travessão usado como pausa em uma frase vira hífen, então "espera — para" vira "espera - para". Redigite à mão se o texto for para leitura e não para código.
- Caracteres invisíveis. O texto colado também pode conter espaços de largura zero. Eles não são aspas, mas quebram o código de forma parecida. O guia de caracteres ocultos trata deles.
Traduzido do Original em inglês com auxílio de IA.
Comentários
Ainda não há comentários. Seja o primeiro.


