是否有一些程序可以解析 vim 语法高亮脚本并为导出到 shell 的代码着色?基本上,我正在寻找具有 shell 高亮功能的 cat/less,它从 vimscript 定义中提取语法,这样我就可以定义自己的语法。
附录:一个首选的解决方案是直接输出到 stdout 的程序,比如cat
,这样我就可以通过管道传输到 less 或者任何我想用它做的事情
答案1
为了用作分页器,Vim 附带了$VIMRUNTIME/macros/less.sh
。请参阅Vim Tips Wiki 上的这里还有一个插件选项,维姆帕杰,您或许还会在网上找到更多。
答案2
我回答了一个StackOverflow 上的类似问题:
Matthew Wozniski 编写了一个名为 vimcat.sh 的脚本,可以使用 Vim 实现此目的。他的版本位于https://github.com/godlygeek/vim-files/blob/master/macros/vimcat.sh。我对它做了一些修改(如果我没记错的话,这些修改使它能够在我的 Mac OS X 系统上运行;我知道替换为/dev/fd/9
就是/proc/self/fd/9
这个目的);请参阅我的要点https://gist.github.com/4090959。
我相信如果 Vim 的突出显示改变了背景,则这两个版本的脚本都无法恢复默认背景颜色。