2010-03-31 5 views
3

J'ai un problème avec l'impression au postscript de Vim. Je suis, en utilisant l'encodage utf-8 avec des caractères tchèques comme 'ščřž' mais dans la sortie je reçois un point d'interrogation à la place des caractères corrects.impression à Postscript de vim

vim --version

VIM - Vi Improved 7.2

+ iconv + multi_byte + postscript

paramètres de l'imprimante:

set printoptions = papier: A4, recto-verso: off , assembler: n, syntaxe: n

police d'imprimante: coursier

Répondre

0

Assurez-vous que votre imprimante prend en charge l'impression de caractères Unicode. Essayez de mettre à jour vos pilotes et d'entrer dans les paramètres et d'activer les polices TrueType pour l'impression ou une option similaire. Pour autant que je sache, Courier utilise ASCII.

frappe: h printencoding se présente:

Si « printencoding » est vide ou VIM ne peut pas trouver le fichier, il utilisera alors « encoding » (si VIM est compilé avec | + multi_byte | et il est défini un codage à 8 bits) pour trouver le fichier de codage de caractères d'impression. Si VIM est incapable de trouver un fichier de codage de caractères, il utilisera le fichier d'encodage "latin1" . Lorsque 'encoding' est défini sur un codage multi-octets, VIM tente de convertir les caractères en codage d'impression pour l'impression (si 'printencoding' est vide, , la conversion se fera en latin1). La conversion à un codage d'impression autre que latin1 nécessitera que VIM soit compilé avec le | + iconv | fonctionnalité. Si aucune conversion n'est possible, l'impression échouera. Tous les caractères qui ne peuvent pas être convertis seront remplacés par des points d'interrogation à l'envers. Quatre fichiers d'encodage de caractères d'impression sont fournis pour prendre en charge les codages de caractères par défaut Mac, VMS, HPUX et EBCDIC et sont utilisés par défaut sur ces plates-formes . L'encodage des caractères d'impression de la page de codes 1252 est utilisé par défaut sur les plates-formes Windows et OS/2 sous .

1

Rkulla, c'est faux. En ce qui concerne votre message, j'ai compris que si nous ne définissons pas 'printencoding' vim convertira notre message (utf-8) en 'latin1' et à cause de cela nous ont des problèmes. Je pense que ce n'est pas vrai.

J'ai imprimé fichier (avec des symboles cyrilliques) dans vim avec printencoding = utf-8: Je copie papier reçois aussi marque inverse question au lieu des symboles corrects. Mes paramètres: 1) printfont = utf-8 2) encoding = utf-8 3) fileencoding = utf-8. Je pense problème dans PostScript. Si vous essayez d'imprimer quelque chose (par exemple avec des symboles cyrilliques) dans la console/terminal (pas GUI) par lp/lpr vous obtiendrez des symboles incorrects (à la place où cyrillique). Ce sont des problèmes de conversion du texte non-ASCII au PostScript dans le terminal. utiliser Vim printexpr et a défaut: printexpr = system ('lpr '(& printdevice == ''.'?:' -P' & de printdevice) '' v... Fname_in). delete (v: fname_in) + v: shell_error. Je ne sais pas comment résoudre ce problème. J'ai lu que c'est des problèmes généraux Unix/Linux. Mais vous devriez essayer de réécrire printexpr pour utiliser a2ps, enscript ou similaire.