我使用的是语法类似于javascript的专有语言。在我的.vimrc中,我为文件集syntx=javascript设置了BufReadPost,它适用于除反引号之外的大部分部分。与.js中不同的是,反引号用于迭代矩阵而不关闭反引号。由于.vimrc将其视为js语法,因此它需要关闭`,否则后面的所有内容都是字符串。我如何告诉vim忽略反引号。
发布于 2020-05-08 17:11:10
通常,修改现有的语法脚本是困难的,因为有许多复杂的解析组和交互。然而,小的适应是可能的。
如果您使用Vim附带的默认JavaScript语法,它将使用this definition作为反引号:
syn region javaScriptStringT start=+`+ skip=+\\\\\|\\`+ end=+`+ contains=javaScriptSpecial,javaScriptEmbed,@htmlPreproc
要摆脱它,你可以用:help :syn-clear
命令:
:syntax clear javaScriptStringT
要自动应用这一点,命令必须在获取语法脚本之后运行。使用after-directory,例如作为~/.vim/after/syntax/javascript.vim
。
可选的语法
特别是在JavaScript领域,有几个相互竞争的语法脚本。例如,我使用this one;幸运的是,它有一个可以用同样的方式清除的similar syntax line。
https://stackoverflow.com/questions/61668330
复制相似问题