Я хотел бы, чтобы vim сделал это, чтобы выделить синтаксис, настроенный в vim (или без необходимости в дополнительных инструментах). Поэтому вместо того, чтобы использовать, cat file | <some_sh_tool>
я бы использовал vim +"some_opts" +"..." +q file
. Проблема в том, что vim восстанавливает предыдущий экран при выходе, но с помощью некоторых инструментов удаленного доступа этого не произошло, поэтому он работал в основном как cat с подсветкой синтаксиса.
Так возможно ли это?
РЕДАКТИРОВАТЬ
Думая об этом больше, я думаю, что это здорово. Помимо подсветки синтаксиса, при отображении содержимого файла могут использоваться и другие функции vim, такие как номера строк, пробелы, переносы и т. Д., Особенно в скрипте, а также потому, что vim вездесущ.
Ответы:
Вы можете отключить альтернативный экран, сказав, что код для его включения для этого терминала является пустой строкой, например:
Но вы обнаружите, что вам нужно больше. Пытаться:
как начало.
источник
alias catx='vim --cmd "set t_ti= t_te=" +redraw +q'
тогда просто бегиcatx infile
+"colo colorscheme"
до+redraw
.Возможно, вы захотите взглянуть
enscript
- он имеет стили подсветки синтаксиса для нескольких языков и предназначен для использования в качестве фильтра, а вывод не ограничен только последовательностями escape-форматирования ANSI - он также может выводить PostScript, HTML или RTF.источник
Я нашел именно то, что мне нужно, в пакете под названием vimpager .
Он поставляется с утилитой vimcat.
источник