如何修改Vim中Python文件多行注释的语法高亮?
Vim中Python多行注释语法高亮调整方案
默认情况下,Vim的/usr/share/vim/vim82/syntax/python.vim里的hi def link pythonComment Comment仅对#开头的单行注释生效,而Python中用"""或'''包裹的文档字符串(常被用作多行注释)会被识别为字符串而非注释,因此需要单独配置:
推荐方案:自定义用户语法规则(不修改系统文件)
直接修改系统文件会在Vim升级后丢失配置,建议在用户目录下创建自定义语法文件:
- 创建目录(如果不存在):
mkdir -p ~/.vim/after/syntax/ - 新建
~/.vim/after/syntax/python.vim文件,添加以下内容:
若想给多行注释单独设置颜色,可替换最后一行为:" 识别"""或'''包裹的文档字符串(多行注释) syn region pythonDocstring start=+"""+ end=+"""+ contains=pythonTodo,@Spell syn region pythonDocstring start=+'''+ end=+'''+ contains=pythonTodo,@Spell " 将文档字符串链接到注释高亮组,和单行注释同色 hi def link pythonDocstring Commenthi pythonDocstring guifg=#888888 ctermfg=gray
简化方案:修改字符串高亮组
如果不需要区分正常字符串和多行注释,可直接把所有字符串高亮改成注释样式:
hi def link pythonString Comment
此方法会将Python中所有字符串(包括变量值)都显示为注释颜色,适合仅关注注释高亮的场景。
说明
Python中的"""/'''本质是文档字符串,属于字符串类型,并非严格意义上的注释,因此Vim默认按字符串高亮。上述配置是将其强制映射为注释高亮,适配用作多行注释的场景。
内容的提问来源于stack exchange,提问作者linux_beginner
相关产品推荐
相关产品推荐

