vim 非可见字符(listchars)
原文链接: vim 非可见字符(listchars)
显示/隐藏
- 默认情况下,Vim是不会显示space,tabs,newlines,trailing space,wrapped lines等不可见字符的。我们可以使用以下命令打开list选项,来显示非可见字符:
:set list
如下图所示,制表符被显示为“^I”,而行尾则标识为“$”。
set_list_default
- 我们也可以使用以下命令,重新隐藏不可见字符:
:set nolist
- 通常我们会利用以下命令,切换显示或隐藏不可见字符:
:set list!
显示符号
使用:set listchars命令,可以配置使用何种符号来显示不可见字符。例如以下命令,将制表符(tab)显示为…;将尾部空格(trail)显示为·;将左则超出屏幕范围部分(precedes)标识为«;将右侧超出屏幕范围部分(extends)标识为»。
set listchars
其中,特殊符号是在插入状态下,点击快捷键Ctrl-k,然后键入编码来输入的。比如,中点是由.M输入;左书名号是由<<输入,右书名号是由>>输入。
- 可以使用以下命令,查看可以输入的特殊字符:
:digraphs
digraph
如下图所示,通过选择合适的符号和色彩,非可见符号被低调地显示出来––即没有影响实际的文本内容,又能展示容易被忽视的重要信息:
set listchars_result
显示颜色
非可见字符"eol"、"extends"、"precedes"是由NonText高亮组来控制显示颜色的,而"nbsp"、"tab"、"trail"则是由"SpecialKey"高亮组来定义的。
我们可以使用以下语法高亮 (Syntax Highlight)命令,来设置非可见字符的显示颜色和格式:
hi NonText SpecialKey
- 请使用以下命令,查看关于非可见字符的帮助信息:
- :help listchars
命令小结:set list 显示非可见字符
:set nolist 隐藏非可见字符
:set listchars 设置非可见字符的显示模式 - :help listchars