如何关闭syntime(vim)中的特定消息?

时间:2015-02-02 16:32:34

标签: vim syntastic

我试图关闭合成中的一些消息。

例如,bash文件中的SC20148(它抱怨没有shebang)。

查看文档后,似乎可能通过以下方式完成:

let g:synstatic_quiet_messages = {
  \ 'type': 'syntax',
  \ 'regex': 'SC20148' }

然而,这似乎并不奏效。如何关闭特定消息?

3 个答案:

答案 0 :(得分:9)

魔鬼在细节中:

  1. 该变量实际上称为g:syntastic_quiet_messages
  2. 错误实际上是SC2148
  3. 您可能不想禁用语法邮件。
  4. 因此:

    let g:syntastic_quiet_messages = { 'regex': 'SC2148' }
    

    或者只是:

    let g:syntastic_sh_shellcheck_args = '-e SC2148'
    

答案 1 :(得分:3)

同意接受的答案,但希望增加一些额外的背景。

您可以运行:h syntastic_quiet_messages获取官方文档并解释命令。

您可以使用syntastic_quiet_messages,或者,如果您有特定的文件类型和检查器,则使用syntastic_<filetype>_<checker>_quiet_messages

以下是我.vimrc

的摘录
" keep some globals quiet
let g:syntastic_javascript_standard_quiet_messages = { 'regex': ['alert',
                                            \ 'localStorage',
                                            \ 'auth0js',
                                            \ 'auth0'] }

上面,我保持全局错误安静,并使用数组列出多个项目。只希望使用standard style lint checker将此文件应用于javascript个文件。

答案 2 :(得分:2)

在vim中关闭多种警告:

将此行添加到.vimrc

let g:syntastic_quiet_messages = { 'regex': 'SC2148\|SC1234\|SC6789' }

你也可以像这样反对消息本身:

let g:syntastic_quiet_messages = { "regex": 'superfluous-parens\|too-many-instance-attributes\|too-few-public-methods' }