Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Imprimer un fichier isolatin avec lpr depuis CUPS

3 réponses
Avatar
Patrice Karatchentzeff
Salut,

Je cherche à retrouver le comportement de la commande lpr du temps où
tout était en iso-latin (enfin, chez moi...) et que le daemon
d'impression était lpd...

Depuis, les environnements sont plus ou moins passés en UTF-8 et
surtout, c'est CUPS qui a pris le relais pour l'impression.

Le but : imprimer un fichier isolatin (1 ou 9) depuis lpr.

Si le fichier est en ASCII 7 bits, ça fonctionne. S'il est en UTF-8,
ça fonctionne (et ce quelque soit son extension).

Par contre, ça coince pour les accents en isolatin.

Il existe a2ps pour imprimer directement le fichier comme solution
ultime de contournement mais ça me plaît moyennement...

J'ai trouvé une ancienne option sur le lpr de True64 (flocale) pour
dire au daemon que la locale du fichier est différent. Mais ce n'est
pas implémenté sur mon linux  (machine de test : Lucid AMD-64):

% lpr -flocale=fr_FR fichier.txt.lat
lpr  : avertissement - modification de format « f » non prise en
charge - la sortie risque dêtre incorrecte.

Et la sortie est effectivement foireuse...

J'avoue que ça me turlupine un peu : impossible d'avoir une solution
propre depuis lpr. Et comme qui dirait, ça fonctionnait bien « avant » !

Est-ce que quelqu'un aurait une piste ?

Merci

PK

--
      |\      _,,,---,,_       Patrice KARATCHENTZEFF
ZZZzz /,`.-'`'    -.  ;-;;,_   mailto:p.karatchentzeff@free.fr
     |,4-  ) )-,_. ,\ (  `'-'  http://p.karatchentzeff.free.fr
    '---''(_/--'  `-'\_)       

3 réponses

Avatar
talon
Patrice Karatchentzeff wrote:
Salut,

Je cherche à retrouver le comportement de la commande lpr du temps où
tout était en iso-latin (enfin, chez moi...) et que le daemon
d'impression était lpd...

Depuis, les environnements sont plus ou moins passés en UTF-8 et
surtout, c'est CUPS qui a pris le relais pour l'impression.

Le but : imprimer un fichier isolatin (1 ou 9) depuis lpr.

Si le fichier est en ASCII 7 bits, ça fonctionne. S'il est en UTF-8,
ça fonctionne (et ce quelque soit son extension).

Par contre, ça coince pour les accents en isolatin.




Tu peux toujours le convertir de l'isolatin au utf8 avec iconv, avant de
l'imprimer. Dans mon souvenir cups utilise un gros script perl pour
touiller le fichier avant de l'imprimer. Il doit bien y avoir quelque
chose pour détecter la nature du fichier dans ce script, on doit pouvoir
intervenir à cet endroit. Il me semble qu'il s'agit de
"foomatic-filters".

--

Michel TALON
Avatar
Cyrille Lefevre
Le 18/06/2010 10:48, Patrice Karatchentzeff a écrit :
Salut,

Je cherche à retrouver le comportement de la commande lpr du temps où
tout était en iso-latin (enfin, chez moi...) et que le daemon
d'impression était lpd...



vive le modernisme...

Depuis, les environnements sont plus ou moins passés en UTF-8 et
surtout, c'est CUPS qui a pris le relais pour l'impression.



justement, l'os est configuré avec quelle langue (/etc/default/...) ?
et ton environnement (LANG_LC_*) ?
as-tu du samba ?
quelle est la version de cups ?

<snip>
J'ai trouvé une ancienne option sur le lpr de True64 (flocale) pour
dire au daemon que la locale du fichier est différent. Mais ce n'est
pas implémenté sur mon linux (machine de test : Lucid AMD-64):



true64 != linux != hp != solaris, etc.
même si la commande et le démon de base sont les mêmes, les fistres ne
le sont pas du tout.

et sans options, as-tu des messages d'erreurs ?
quid de /var/log/messages ?


essaye google cups iso-8859-1

par ex. :
https://bugs.launchpad.net/ubuntu/+source/cupsys/+bug/203944
http://www.linux-solved.com/post/SOLVED-CUPS-Unsupported-character-set-is o-8859-1-15098.html

une piste :
http://www.cups.org/documentation.php/doc-1.4/man-mime.convs.html
que dit "file <fichier à imprimer>" ?

Cordialement,

Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%
supprimer "%nospam% et ".invalid" pour me repondre.
Avatar
Patrice Karatchentzeff
Cyrille Lefevre <cyrille.lefevre-news% a
écrit :

Le 18/06/2010 10:48, Patrice Karatchentzeff a écrit :
Salut,

Je cherche à retrouver le comportement de la commande lpr du temps
où tout était en iso-latin (enfin, chez moi...) et que le daemon
d'impression était lpd...



vive le modernisme...



Tout le monde n'a pas 14 ans ;-)

Depuis, les environnements sont plus ou moins passés en UTF-8 et
surtout, c'est CUPS qui a pris le relais pour l'impression.



justement, l'os est configuré avec quelle langue (/etc/default/...)
? et ton environnement (LANG_LC_*) ?



J'ai le même bogue quelque soit l'environnement de l'utilisateur
(latin ou UTF)

as-tu du samba ?



non.

quelle est la version de cups ?



Testé et reproductible avec celle de Ubuntu Lucid (1.4.3) et Debian
Lenny (1.3.8).


<snip>
J'ai trouvé une ancienne option sur le lpr de True64 (flocale) pour
dire au daemon que la locale du fichier est différent. Mais ce
n'est pas implémenté sur mon linux (machine de test : Lucid
AMD-64):



true64 != linux != hp != solaris, etc. même si la commande et le
démon de base sont les mêmes, les fistres ne le sont pas du tout.



Je sais : c'est juste pour montrer que d'autres se sont penchés sur le
problème et ont trouvé une solution.

et sans options, as-tu des messages d'erreurs ? quid de
/var/log/messages ?



Rien. Ni dans tous les autres log, y compris ceux de cups.

essaye google cups iso-8859-1

par ex. :
https://bugs.launchpad.net/ubuntu/+source/cupsys/+bug/203944
http://www.linux-solved.com/post/SOLVED-CUPS-Unsupported-character-set-iso-8859-1-15098.html

une piste :
http://www.cups.org/documentation.php/doc-1.4/man-mime.convs.html



oui : ça rejoint la réponse de Michel et c'est ce que j'avais fini par
trouver : par contre, ça ne répond pas à « comment le faire » en
l'occurrence...

que dit "file <fichier à imprimer>" ?



% file texst.txt.lat
texst.txt.lat: ISO-8859 text

Merci

PK>

--
      |      _,,,---,,_       Patrice KARATCHENTZEFF
ZZZzz /,`.-'`'    -.  ;-;;,_   mailto:
     |,4-  ) )-,_. , (  `'-'  http://p.karatchentzeff.free.fr
    '---''(_/--'  `-'_)