我已经配置了 python-mode 来进行手动检查。所以我输入
:PyLint
,它会检查我的代码,在“QuickFix”窗口中显示一些标记。我可以在另一个窗口中输入:only
来关闭 QuickFix 窗口,但是如何清除旁边的标记呢?:PyLint
,它会检查我的代码,在“QuickFix”窗口中显示一些标记。我可以在另一个窗口中输入:only
来关闭 QuickFix 窗口,但是如何清除旁边的标记呢?let g:pymode_lint_signs = 0
禁用它们。
如果您想清除它们,据我所知插件中没有专门的界面可以做到这一点。(您可以提交增强请求。)但是应该起作用的方法是清除当前缓冲区的所有痕迹:
:sign unplace * buffer=<C-r>=bufnr('')<CR>
或者
:execute 'sign unplace * buffer=' . bufnr('')
:sign unplace *
才是我想要的。 - Antonis Christofides:sign unplace *
超出了你想要的效果;它会影响到所有缓冲区中的所有标记。但是如果你能接受后果,就只用这个也可以。 - Ingo Karkat:sign unplace *
可以完成任务,那么它就太复杂了,但你表明它有问题。)Vim 仍然会抱怨这些命令是错的。虽然 :sign unplace 1 buffer=1
可以工作,但 :sign unplace * buffer=1
会显示 "E474: Invalid argument"。 - Antonis ChristofidesPyLint的标记是用符号表示的。(:h :sign
)
您可以使用
:sign unplace *
如果您想要在所有缓冲区中删除所有标记,这可能会成为一个问题。这只有在您希望保留一些缓冲区的标记时才是一个问题。
如果您只想在当前缓冲区中删除标记,则可以使用Ingo Karkat的答案提供的映射。
nnoremap <leader>s :execute 'sign unplace * buffer=' . bufnr('')<CR>
:h :sign-unplace
:PyLint
就可以解决问题了,但我不确定这是否能完全解决你的问题。 - David CainPyLint
检查这些部分是否正确。但是,当我在文件的其他地方进行其他工作时,我需要关闭它们;它们会分散注意力。 - Antonis Christofides:sign unplace *
这个命令是否符合你的需求? - FDinoff