net*_*ino 16
我有同样的问题,不是因为syntastic_auto_jump设置,而是由于我为尾随空格放置的命令:
autocmd FileType * autocmd BufWritePre <buffer> :%s/\s\+$//e
Run Code Online (Sandbox Code Playgroud)
这是将光标移动到替换空格的最后一行.实质上,任何类型的命令都会对文档进行更改并更改游标而不进行恢复,这可能会导致类似的行为.
PS:尾随空格可以通过使用恢复光标的函数来修复,如下所示(取自此处)
function! <SID>StripTrailingWhitespaces()
let l = line(".")
let c = col(".")
%s/\s\+$//e
call cursor(l, c)
endfun
autocmd BufWritePre * :call <SID>StripTrailingWhitespaces()
Run Code Online (Sandbox Code Playgroud)
或使用替换尾随空格的插件并为您恢复光标
来自 Syntastic 的文档:
设置为
0光标不会自动跳转。(let g:syntastic_auto_jump = 0)当设置为
1光标时,无论类型如何,光标将始终跳转到检测到的第一个问题。(let g:syntastic_auto_jump = 1)当设置为光标时
2,光标将跳转到检测到的第一个问题,但前提是该问题是错误。(let g:syntastic_auto_jump = 2)设置为
3光标时,将跳转到检测到的第一个错误(如果有)。如果检测到的所有问题都是警告,则光标不会跳转。(let g:syntastic_auto_jump = 3)
所以添加
let g:syntastic_auto_jump = 0
Run Code Online (Sandbox Code Playgroud)
已经解决了问题。不清楚为什么问题突然出现,但这里是为需要它的人提供的解决方案。
| 归档时间: |
|
| 查看次数: |
973 次 |
| 最近记录: |