печать в Postscript из vim - PullRequest
5 голосов
/ 31 марта 2010

У меня проблема с печатью в postscript из Vim.

Я использую кодировку utf-8 с чешскими символами, такими как 'ščřž', но в выводе вместо правильных символов я вижу вопросительный знак "вверх"

vim --version

VIM - Vi IMproved 7.2

+ Iconv + multi_byte + Приписка

настройки принтера:

набор printoptions = бумага: A4, дуплекс: выкл., Сопоставление: n, синтаксис: n

шрифт принтера: курьер

Ответы [ 3 ]

1 голос
/ 28 июня 2010

Rkulla, это неправильно. Что касается вашего сообщения, я понял, что если мы не установим vim 'printencoding' преобразует наше сообщение (utf-8) в 'latin1' , и поэтому мы Есть проблемы. Я думаю, что это не так.

Я распечатал файл (с кириллическими символами) в vim с printencoding = utf-8 от: hardcopy Я также получаю обратный знак вопроса вместо правильных символов. Мои настройки: 1) printfont = utf-8 2) кодировка = utf-8 3) fileencoding = utf-8. Мне кажется, проблема в PostScript . Если вы попытаетесь что-то напечатать (например, кириллическими символами) в консоли / терминале (не в графическом интерфейсе) с помощью lp / lpr, вы получите неправильные символы (вместо кириллицы). Это проблемы с преобразованием не-ASCII-текста в PostScript в терминале. Vim использует printexpr и имеет значение по умолчанию: printexpr = system (' lpr '. (& printdevice == ''? '': '-P'. & printdevice). ''. v: fname_in). удалить (v: fname_in) + v: shell_error. Я не знаю, как это исправить. Я читал, что это общие проблемы Unix / Linux. Но вы должны попробовать переписать printexpr для использования a2ps, enscript или аналогичного.

0 голосов
/ 28 августа 2018

Отправьте буфер в браузер, преобразовав его в HTML, затем напечатайте оттуда:

:TOhtml | w | !open -a Safari %

Например, у меня есть это в vim: enter image description here

Если я наберу

:ha

Я понял это: enter image description here

Но когда я отправляю это в браузер, я получаю это (с цветовой схемой!):

enter image description here

У меня есть это в моем .vimrc, который удаляет новый HTML-буфер и сохраненный файл:

nnoremap <F2> <ESC> :TOhtml <bar> w <bar> !open -a Safari % <CR> <bar> ZQ <CR> <bar> execute '!rm %:p.html' <CR>
0 голосов
/ 03 апреля 2010

Убедитесь, что ваш принтер поддерживает печать символов Юникода. Попробуйте обновить драйверы, зайдите в настройки и включите шрифты TrueType для печати или аналогичную опцию. Насколько я знаю, Курьер использует ASCII.

Набор текста: h printencoding увеличивается:

Если 'printencoding' пуст или VIM не может найти файл, он будет использовать 'кодировка' (если VIM скомпилирован с | + multi_byte | и установлен 8-битным кодировка), чтобы найти файл печати кодировки символов. Если VIM не может найти файл кодировки символов, тогда он будет использовать печатный символ "latin1" файл кодировки. Когда для 'encoding' задано многобайтовое кодирование, VIM попытается преобразовать символы в кодировке печати для печати (если 'printencoding' пусто тогда преобразование будет в latin1). Преобразование в кодировку печати кроме latin1 потребуется VIM для компиляции с помощью | + iconv | особенность. Если преобразование невозможно, печать не будет выполнена. Любые персонажи, которые не может быть преобразован будет заменен с перевернутыми вопросительными знаками Для поддержки Mac, VMS по умолчанию предусмотрены четыре файла кодировки символов. Кодировки символов HPUX и EBCDIC, используемые по умолчанию в этих платформ. Кодовая страница 1252 для печати используется кодировка символов по умолчанию Платформы Windows и OS / 2.

...