Faça o hunspell ignorar os caracteres de aspas simples iniciais e finais (apóstrofos)

2

O Hunspell sempre trata caracteres de aspas simples (apóstrofos) como parte do palavra. Isso significa que quando o texto usa aspas simples para citar, hunspell sinaliza esses como erros. Mesmo uma simples citação por si só é considerada uma palavra (com erros ortográficos).

% echo "He asked, 'Why can't I quote?'" | hunspell
Hunspell 1.3.2
*
*
& 'Why 3 10: why, whey, whiny
*
*
*
& ' 15 29: 's, e, s, i, a, n, r, t, o, l, c, d, u, g, m

O Aspell acerta assim:

% echo "He asked, 'Why can't I quote?'" | aspell -a
@(#) International Ispell Version 3.1.20 (but really Aspell 0.60.7-20110707)
*
*
*
*
*
*

Eu preferiria usar hunspell, mas direcioná-lo para ignorar liderar e caracteres de aspas simples à direita, mantendo os caracteres de aspas incorporados tal como em "não pode".

Como posso fazer isso?

    
por mernst 27.04.2013 / 21:50

2 respostas

1

Exclua todos os ' que são seguidos por um não alfanumérico, ou precedidos por um não alfanumérico, ou no início ou no final de uma linha:

echo "He asked, 'Why can't I quote?'" | perl -pe 's/'"'"'(\W)/$1/g;s/(\W)'"'"'/$1/g;s/^'"'"'//;s/'"'"'$//;' | hunspell
    
por 27.04.2013 / 22:12
1

Você precisa adicionar a seguinte linha ao seu arquivo de afixação de dicionário (por exemplo, /usr/share/hunspell/en_US.aff )

IGNORE '

Infelizmente, não descobri uma maneira de especificar um arquivo de afixo pessoal, como você pode fazer com um arquivo de dicionário pessoal.

    
por 19.09.2014 / 07:05