Я использую ту же версию Vim, что и OP. Мое волшебное заклинание для печати этого материала:
:se fenc=cp1252
:w
:e ++enc=cp1252
:se enc=cp1252
:se fenc=cp1252
:se penc=cp1252
:hardcopy
Используйте кодовую страницу, которая подходит для вас.
Первые три строки (то есть сохранение и перезагрузка) могут не понадобиться, но они должны гарантировать, что текст на самом деле преобразуется (вместо того, чтобы просто интерпретировать буфер). AFAICT enc
и penc
должны быть установлены, fenc
это просто CYA. Затем используйте :hardcopy
в зависимости от того, что вы хотите.
Не забудьте изменить соответствующие кодировки (enc
, fenc
) обратно и повторно сохранить, если вы предпочитаете сохранять файл в какой-то другой кодовой странице (latin1, utf-8 и т. Д.). Процедура существует :se fenc
и :w
. Затем вы можете продолжить с :e
(возможно, с добавленными ++enc=xxx
) и :se enc=xxx
, чтобы проверить его и убедиться, что вы работаете с копией, используя предпочитаемую кодовую страницу, плюс еще один раунд :se fenc=xxx
и :w
когда вы закончите, просто чтобы быть в безопасности.
Все это немного избыточно, но это способ убедиться, что Vim на одной странице с вами. Как вы заметили, в обработке кодовых страниц в Windows есть что-то забавное (по крайней мере, печать WRT), поэтому я не обязательно доверяю тому, чтобы все правильно делалось чисто внутренне. Я просто заставляю его изменить фактическое представление байтов, а затем проверяю, использует ли он это.