O que se segue é da documentação sobre a lista de correções rápidas e a lista de locais. Mas não tenho certeza do que realmente é diferente. A imagem abaixo mostra as mesmas coisas da lista de locais e da lista de correção rápida. Quando devo usar um ou outro no vimgrep e lvimgrep.
In Vim the quickfix commands are used more generally to find a list of positions
in files.For example, |:vimgrep| finds pattern matches. You can use the positions
in a script with the |getqflist()| function. Thus you can do a lot more than the
edit/compile/fix cycle!
...
...
*location-list* *E776*
A location list is similar to a quickfix list and contains a list of positions
in files. A location list is associated with a window and each window can have
a separate location list. A location list can be associated with only one window.
The location list is independent of the quickfix list.
...
ATUALIZAR
Eu encontrei o seguinte a partir daqui .
These commands all fill a list with the results of their search. "grep" and
"vimgrep" fill the "quickfix list", which can be opened with :cw or :copen,
and is a list shared between ALL windows. "lgrep" and "lvimgrep" fill the
"location list," which is local to the current window, and can be opened
with :lw or :lopen. Both of these lists can be used to instantly jump to
the matching line in whatever file it occurs in.
Portanto, a diferença são todas as janelas para lista de correção rápida e janela local para lista de locais. No entanto, posso abrir a lista de locais de qualquer outra janela. Então, qual é a diferença então ??
-q errors.txt
, depois de colocar erros de compilação emerrors.txt
(ou sejagcc -Wall *.c >errors.txt 2>&1
), o vim irá preencher a lista de correções rápidas da lista de erros de compilação, o que é muito útil.foo1.txt
,foo2.txt
...) parafoo
na janela esquerda e vários arquivos (bar1.txt
,bar2.txt
...) parabar
na janela da direita. Você pode correr:lv foo foo*
na janela esquerda e depois:lv bar bar*
na janela direita. Então, na janela à esquerda,:lne
será exibida a próxima correspondência parafoo
, nãobar
. Isso ocorre porque:lv
usa a lista de locais da janela em que você a executa, de modo que cada pesquisa tem sua própria lista de locais.