Zmień rozmiar paneli po zmianie rozmiaru okna hosta

16

Lubię używać vimdiff jako narzędzia git diff / merge. Problem polega na tym, że zmieniam rozmiar okna terminala hosta na nowy rozmiar: z dwóch podzielonych paneli skrajnie lewe pozostają tej samej szerokości, natomiast skrajne prawe są rozszerzone do pełnego rozmiaru okna.

Czy istnieje polecenie wyrównania szerokości podzielonych okien po zmianie rozmiaru okien? A może ustawienie, które sprawia, że ​​szyby zawsze mają ten sam rozmiar? Zajrzałem, :set equalalwaysale wydaje się, że nie robi tego, o co proszę.

guido
źródło

Odpowiedzi:

22

Aby postępować zgodnie z odpowiedzią @ janos, możesz ustawić, autocmdaby automatycznie naciskał te klawisze po zmianie rozmiaru okna (włóż to do swojego .vimrcbez wiodącego dwukropka, jeśli chcesz, aby było stosowane przy każdym otwarciu Vima):

:autocmd VimResized * wincmd =

Oto dokumenty dla VimResizedautocmd .

Klamka
źródło
2
nie mogłem zmusić go do pracy <C-v> <C-w>; autocmd VimResized * wincmd =Zamiast tego użyłem w .vimrc
guido
Miałem ten sam problem, co zrobił z Guido ^Wi <C-w>nie działa. Jeśli nie masz nic przeciwko, zredagowałem twoją odpowiedź, aby pokazać inną metodę. Zapoznaj się z tą zmianą lub wycofaj się, jeśli się nie zgadzasz.
DJMcMayhem
13

Ctrlw=zmieni rozmiar podzielonych paneli, aby były równe. Ale nie wiem, jak je automatycznie wyrównać, uruchamiane przy zmianie rozmiaru okna.

janos
źródło