我们能否在评论部分转义类型、代码等,以便拼写检查不会将它们视为拼写错误
Can we escape types, codes, etc. in comments section so that spell check does not consider them as typo
Vim 已经支持仅在评论部分进行拼写检查,但是,如果我有一个类型名称或一些不规则的单词,它会认为它是错字。例如,在下面的示例中,std::endl
将突出显示为拼写错误。
// Don't use std::endl, it will flush unnecessarily
我希望我们可以像下面那样使用 ``
来逃避它们。
// Don't use `std::endl`, it will flush unnecessarily
除了将所有内容都添加到字典中之外,是否有任何提示或解决方案?
我真的不想因此而禁用拼写检查,所以非常感谢您的帮助。
谢谢!
您可以使用此语法规则创建一个匹配 `...`
块的新组并在这些块内禁用拼写:
syntax region cCommentNoSpell start=+`+ end=+`+
\ contained containedin=cComment,cCommentL transparent
\ contains=@NoSpell
要为 cpp
和 c
文件加载此行,请将此行(单独)添加到文件 ~/.vim/after/syntax/c.vim
,以便在 C++ 和 c
的系统语法文件之后加载它C.(cpp
语法规则包括 c
的所有语法,所以你也会在 cpp
上得到它。)
语法规则使用 `
作为开始和结束分隔符。
它使用 contained
和 containedin
只匹配内部评论。 cComment
规则匹配传统的 multi-line /* ... */
评论,cCommentL
匹配 single-line // ...
评论。 (两者都在 Vim 附带的 C 和 C++ 语法文件中定义。)
transparent
属性指示不使用此句法规则作为高亮组,因此在符合此规则的部分保留注释的正常高亮。
最后,contains=@NoSpell
是禁用匹配此规则的区域的拼写。有关拼写如何与语法突出显示一起使用的更多详细信息,请参阅 :help spell-syntax
。
Vim 已经支持仅在评论部分进行拼写检查,但是,如果我有一个类型名称或一些不规则的单词,它会认为它是错字。例如,在下面的示例中,std::endl
将突出显示为拼写错误。
// Don't use std::endl, it will flush unnecessarily
我希望我们可以像下面那样使用 ``
来逃避它们。
// Don't use `std::endl`, it will flush unnecessarily
除了将所有内容都添加到字典中之外,是否有任何提示或解决方案?
我真的不想因此而禁用拼写检查,所以非常感谢您的帮助。
谢谢!
您可以使用此语法规则创建一个匹配 `...`
块的新组并在这些块内禁用拼写:
syntax region cCommentNoSpell start=+`+ end=+`+
\ contained containedin=cComment,cCommentL transparent
\ contains=@NoSpell
要为 cpp
和 c
文件加载此行,请将此行(单独)添加到文件 ~/.vim/after/syntax/c.vim
,以便在 C++ 和 c
的系统语法文件之后加载它C.(cpp
语法规则包括 c
的所有语法,所以你也会在 cpp
上得到它。)
语法规则使用 `
作为开始和结束分隔符。
它使用 contained
和 containedin
只匹配内部评论。 cComment
规则匹配传统的 multi-line /* ... */
评论,cCommentL
匹配 single-line // ...
评论。 (两者都在 Vim 附带的 C 和 C++ 语法文件中定义。)
transparent
属性指示不使用此句法规则作为高亮组,因此在符合此规则的部分保留注释的正常高亮。
最后,contains=@NoSpell
是禁用匹配此规则的区域的拼写。有关拼写如何与语法突出显示一起使用的更多详细信息,请参阅 :help spell-syntax
。