vim-codefmt
vim-codefmt copied to clipboard
gofmt formatter doesn't clear quickfix list when all errors are fixed
(Forwarding a report from someone else)
I am using the codefmt plugin for Go, by including:
Glug codefmt gofmt_executable="goimports"
Glug codefmt-google
autocmd FileType go AutoFormatBuffer gofmt
And it looks like it doesn't clear the quick fix list when all errors are fixed. E.g.: I have 3 errors, and if I save, the quick fix window shows the three of them. If I fix 1, and save, the quick fix window correctly shows only two of them. If now I fix the 2 remaining ones, and save, the quick fix window doesn't update at all.
It looks like we only call "setqflist" in the case of errors: https://github.com/google/vim-codefmt/blob/master/autoload/codefmt.vim#L320 but never clear it if there are no errors.
Interesting… I wonder if it's normal to clear setqflist. For instance, should it be cleared for any formatter, even formatters that don't support populating the quickfix list? I definitely think we should close it if we're not doing that.
I ran into this again today, while working on #103.
We now have several occurrences of the "if found errors, setqflist()
, else leave alone" pattern in various formatters. Even if we can't make a decision on #60, does it seem reasonable for the individual formatters that do call setqflist()
on error to clear it on success?
Yeah, SGTM.