语法错误符号正在抵消我的代码

Syntastic error symbols are offsetting my code

somecode();
somecode();
somecode();

但是如果 syntastic 发现错误,它将在该行显示错误标志,如下所示

      somecode();
   >> somecode()
      somecode();

问题是所有内容都会缩进一点,因为没有 space 作为错误符号。

我该如何解决这个问题?是否可以为sign保留更多space?

您的意思是您对标志栏显示的重复交换感到不安,每次出现错误,然后消失?

我之前也尝试过解决这个问题,但是没有很好的解决办法;在我看来,sign 功能缺乏更好的灵活性。

我发现避免持续代码移动的解决方法是在文件的第一行添加一个自定义透明符号,这样列符号就永远不会消失,并将这个技巧添加到自动命令中以使其自动执行:

sign define transparent_sign
augroup SignColFixAu
    au!
    au BufReadPost *.c,*.cc,*.h,*.cpp,*.hh,*.py,*.js,*.php exe "sign place 1111 name=transparent_sign line=1 file=".@%
augroup end

当然,在上面的代码中,您必须根据自己的喜好自定义文件模式。