Varianta cu iconv pare destul de elegantă, doar că scuipă sânge când se
lovește de caractere nesuportate:

cat wiki_ro_full.txt | iconv  -f UTF-8 -t ISO8859-1//TRANSLIT
...
�nclinarea ecuatorului pe orbiticonv: illegal input sequence at position
15514

Dacă îl rulez cu -c trece mai departe, dar îmi sare multe diacritice.

Dacă îl rulez fără -f UTF-8:

cat wiki_ro_full.txt | iconv -c -t ISO8859-1//TRANSLIT
...
Vezi i    Asteroizi n ficiune  Asteroizi n astrologie (ocultaie)  Comet

Scopul meu e să convertesc diacriticele în primul rând, dar aș vrea o
soluție universală care să poată merge și pe limbi cu alte tipuri de
caractere.

Poate problema e că inputul nu e UTF8?
adrianp@frost:~/development/dictionaries$ file wiki_ro_full.txt
wiki_ro_full.txt: Non-ISO extended-ASCII text, with LF, NEL line terminators



2016-06-10 15:49 GMT+03:00 Mișu Moldovan <[email protected]>:

> On 10.06.2016 15:24, Adrian Popa wrote:
> > Salutare,
> >
> > Am de procesat ~9GB de text cu diacritice (un dump de wikipedia .ro)
> pentru
> > care vreau să înlocuiesc diacriticele cu caracterele echivalente ASCII.
> Cu
> > siguranță am și alte caractere UTF8 care nu sunt diacritice și care nu au
> > corespondent ASCII, așa că ele pot fi înlocuite cu "".
> >
> > Caut o variantă deja existentă și cât mai cuprinzătoate (de ex capabilă
> să
> > convertească și é în e, chiar dacă nu e diacritic), așa că un tradițional
> > "tr '/ăâșțî/aasti/'" presupun că nu o să meargă.
> >
> > Aveți ceva recomandări despre cum aș putea trata problema făra să
> > reinventez roata (de ex cu script
> http://www.perlmonks.org/?node_id=963341)
>
> Soluții ar fi, dar ești sigur că vrei o asemenea blasfemie?!?  Mă
> gândesc că poate o fi vreun sistem de operare vechi și/sau vreun
> hardware foarte limitat, dar nu văd asta într-un tablou general ce
> include 9 GB de fișiere text.  Nu mai bine rezolvi problema pe care o ai
> cu textele non-ASCII?  Și care e de fapt problema respectivă?
>
>
>
> _______________________________________________
> RLUG mailing list
> [email protected]
> http://lists.lug.ro/mailman/listinfo/rlug
>
>
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui