Дві відповіді:
Короткий: ви хочете використовувати скрипт vim AnsiEsc.vim . Він приховає фактичні послідовності відтворення ANSI у вашому файлі та використає підсвічування синтаксису для відповідного забарвлення тексту. Проблема з використанням цього в пейджері полягає в тому, що вам доведеться визначити vim, коли це використовувати. Я не впевнений, чи можете ви завжди завжди його завантажувати, чи це буде суперечити іншим синтаксичним файлам. Вам доведеться з цим експериментувати.
Довга відповідь: Найкраще, на що можна сподіватися, - це часткове непортативне рішення. Менше насправді не розуміє термінальних послідовностей виходу, оскільки вони значною мірою залежать від терміналу, але менше може розпізнати (підмножину) цих даних і буде знати, щоб передати їх терміналу, якщо ви використовуєте -r
(або-R
) варіант. Термінал буде інтерпретувати послідовності евакуації та змінювати атрибути тексту (колір, жирний, підкреслення ...). Vim, будучи редактором, а не пейджером, не просто передає необроблені символи управління терміналу. Потрібно їх відображати певним чином, щоб ви могли фактично їх редагувати. Ви можете використовувати інші функції vim, такі як приховування та виділення синтаксису, щоб приховати послідовності та використовувати їх для встановлення кольорів тексту, однак, він завжди буде обробляти лише підмножину термінальних послідовностей і, ймовірно, не працюватиме на деяких терміналах .
Це дійсно лише одна з багатьох проблем, з якими ви зіткнетесь, коли спробуєте використовувати текстовий редактор як пейджер.