Z mojej strony rozwiązaniem było częstsze używanie silent
w łańcuchu poleceń .
W szczególności wcześniej .vimrc
:
nnoremap M :silent make\|redraw!\|cc<CR>
Zostało to zmienione na:
nnoremap M :silent make\|silent redraw!\|silent cc<CR>
Wcześniej „Press ENTER” nie zawsze pojawiał się, ale irytująco często. Dodatkowe silent
rozwiązania to naprawiły. (Wygląda na silent
to, że nie jest potrzebny, redraw!
ponieważ :cc
spowodował komunikat „Naciśnij klawisz ENTER”).
Ta zmiana ma tę wadę, że nie wyświetla już wyniku programu :cc
, więc musisz zgadnąć, na czym polega błąd. Trochę uszczypnąć rozwiązuje w ten sposób:
nnoremap M :silent make\|redraw!\|cw\|silent cc<CR>
To sprawia, że lista błędów QuickFix (wyjście make
) pojawia się automatycznie (i, przez vim-magic, znika, jeśli nie ma błędu).
FYI:
Motywacją do tego M
-mapowania jest po prostu naciśnięcie M
w trybie normalnym, aby:
- zapisz edycję (kiedy i tak
make
wszystko jest pod kontrolą git
)
- odwołać się
make
- i bezpośrednio przejdź do pierwszego błędu lub ostrzeżenia
Moje Makefile
są zwykle tak skonstruowane, że zajmuje to tylko ułamek sekundy.
Po drobnych poprawkach można to zastosować również do C
obciążeń innych niż typowe:
w .vimrc
dodatku
set efm+=#%t#%f#%l#%c#%m#
Pozwala to vim
na interpretację następujących komunikatów dla :cc
(błąd wyświetlania):
#E#file#line#column#message#
#W#file#line#column#message#
#I#file#line#column#message#
( E
Rrors, W
arnings, I
nfo, oparte na vim
magii)
Przykład użycia tego dla skryptów Pythona . (Przepraszamy, nie ma tu kopii, to inna historia).
set dir=$TEMP
pliku vimrc. Mówi to vimowi, aby używał właściwego folderu tymczasowego dla swoich plików tymczasowych. To z kolei naprawia błędy i usuwa monity „naciśnij klawisz Enter”.