LINUX.ORG.RU

Печать кирилицы из Vim

 , , ,


1

3

В Виме могу нормально редактировать файлы, содержащие русские буквы, но при попытке их напечатать (hardcopy) на бумаге появляются вопросительные знаки. Путем hardcopy > file с дальнейшим hexdump-ом полученного postscript-файла выяснил, что все русские буквы являются одним и тем же байтом (bf). Т.е. проблема не в драйверах принтера, а вим изначально неправильно генерирует PS-файл.

Как заставить Вим печатать кириллицу?

★★★★★

Наверное

set fileencoding=utf-8
set fileformat=unix

потом

vim doc.txt
:w 
:hardcopy

Dron ★★★★★
()
Последнее исправление: Dron (всего исправлений: 2)
Ответ на: комментарий от Dron

Нет, не помогает. Файл и так в utf-8, в редакторе все выглядит нормально.

Klymedy ★★★★★
() автор топика
Ответ на: комментарий от Dron

Еще обнаружил интересную вещь: если поставить printencoding=cp1251 и полученный файл открыть в этой кодировке, то там будут нужные русские буквы, но при печати тоже получаются перевернутые вопросительные знаки.

Klymedy ★★★★★
() автор топика
let s:pfn = 'шрифт с кириллицей' 

в vimrc

hohhalf
()
Ответ на: комментарий от Klymedy

из :help 'printencoding'

When 'encoding' is set to a multi-byte encoding, VIM will try to convert
characters to the printing encoding for printing (if 'printencoding' is empty
then the conversion will be to latin1).

salsa ★
()

Сначала найди способ печатать сгенерированный vim'ом PS файл из shell, а потом подставь этот способ в 'printexpr'. Я, например, могу печатать простым:

$ lp file.ps
и vim с такими настройками:
set printencoding=koi8-r
set pexpr=system('lp\ '\ .\ v:fname_in)\ .\ delete(v:fname_in)\ +\ v:shell_error
у меня нормально печатает на русском.

salsa ★
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.