Bonsoir Patrick,
Le 09/01/2012 11:43, Patrice Karatchentzeff a écrit :
> Salut,
>
> J'ai des fichiers codés en cp850 à imprimer (pour les p'tits jeunes,
> c'est l'encodage latin de MS-DOS...).
>
> cups ne gère que l'UTF-8 et a donc une routine interne pour
> transformer ce qu'on lui envoie en UTF-8 (pour les textes bien sûr) et
> imprimer...
>
> Ça, c'est la théorie : dans la pratique, ça ne marche pas ou mal, ce
> qui revient au même...
>
> L'impression bloque sur les caractères de contrôle (saut de page,
> etc.) qui manifestement, sont très mal gérés par cups... un bête
> document sans caractère de contrôle s'imprime vite et bien et le même
> document peut mettre 20 mn à s'imprimer (mal...) avec simplement
> quelques caractères de contrôle..
>
> Je n'arrive pas à trouver une solution sur le net...
>
> Mon idée initialement était de faire le boulot de cups moi-même :
> convertir en ps ou pdf le fichier texte mais je bute sur ces fameux
> caractères... si quelqu'un a une routine pour le faire, je suis
> preneur...
>
> Sinon, si quelqu'un sait comment configurer cups pour qu'il le fasse
> correctement, je suis preneur aussi : ce serait d'ailleurs plus
> simple...
>
> Merci d'avance,
>
> PK
Pour ce qui est des bons vieux retour chariot CR+LF de MSDOS, tu peux
utiliser le programme "dos2unix"
Ou si tu veux le faire avec sed (
http://sed.sourceforge.net/sed1line.txt ) :
# IN UNIX ENVIRONMENT: convert DOS newlines (CR/LF) to Unix format.
sed 's/.$//' # assumes that all lines end with CR/LF
sed 's/^M$//' # in bash/tcsh, press Ctrl-V then Ctrl-M
sed 's/\x0D$//' # works on ssed, gsed 3.02.80 or higher
Je ne connais pas le caractère utilisé par le saut de page, mais en
lisant ton texte tu dois pouvoir le trouver facilement. A supposer alors
que c'est 0xXX en hexa, tu peux utiliser ceci pour le transformer en
double-RC :
sed 's/\xXX/\n\n/'
Cordialement,
Olivier
--
~~~~~~~ _____/\_____ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phoenix / _ \/ _ \ Olivier Allard-Jacquin
/ / \ / \ \ Web: http://olivieraj.free.fr/
/___/ / \ \___\ Mail: olivieraj@???
~~~~ ///// ///\\\ \\\\\ ~~~~~~~~~~~~~~~~~~~~~~~ Linux Powered !!