有没有办法设置VIM,使其在不更改底层文件的情况下替换显示文本中的字符?
具体而言,我想将SOH字符(默认情况下显示为^A)替换为制表符,以使FIX协议日志文件更易读。
我部分地接受解决方法。
具体而言,我想将SOH字符(默认情况下显示为^A)替换为制表符,以使FIX协议日志文件更易读。
我部分地接受解决方法。
:highlight SpecialKey guifg=#ffffff
为什么^A在白色背景下不可见,而制表符的替换会更好。
更新:
我几乎找到了解决方案:
:syntax match SOH /^A/ conceal cchar=_
:set conceallevel=2
:hi conceal guibg=NONE
很遗憾,我还没有找到如何将制表符转义为cchar参数(而不是下划线)的方法。
:set list
怎么样? - mouviciel字符不能是控制字符,例如Tab。
请参见:h syn-cchar
。 - dNitro:set list
怎么有用。请提供一个例子。 - Jan Červák:set list
,即可激活列表模式,它将会显示不可打印的字符。在此模式下,你可以隐藏有限数量的字符,包括:tab,eol,空格,trail等(:h listchars
)。不幸的是,SOH字符不是其中之一。实际上,:set list
和:set listchars=eol:<
相互关联,就像在这里使用^A
时所做的那样 ;) - dNitro