2013-05-16 13 views
5

Mam odwzorowane dla wygody:vim okno dzielone: ​​Skoncentruj się nowe okno

" this is a ctrl + backslash binding to vsplit 
nmap <C-\> :vsplit<CR> 
" this is a ctrl + hyphen binding to hsplit 
nmap <C-_> :split<CR> 

To jest dobre, ale potrzebuje jeszcze jeden ostateczny szlif do zachowywania się tak, jak chcesz, który jest, że powinien skupić nowo utworzonego okna więc może natychmiast otworzyć dowolny plik, który chcę, używając tradycyjnej wtyczki :e lub CtrlP. Jak to jest teraz, robi to będzie nawigować z oryginalnego okna, które jest nieco dezorientujące.

Jak mogę uzyskać :split i :vsplit, aby automatycznie ustawić ostrość nowo utworzonego okna vim?

+0

możliwe duplikat [vim położenia kursora na nowe okno podzielonego] (http://stackoverflow.com/questions/15968880/vim-cursor-position-on-new-split-window) –

Odpowiedz

18

Gdy otwieram nowy podział mój kursor jest automatycznie koncentruje się w nowym oknie domyślnie. Prawdopodobnie nie zdajesz sobie sprawy, że nowy pionowy podział jest umieszczony po lewej stronie, a nowy poziomy podział jest umieszczony na górze.

Aby otworzyć nowe podziały z prawej lub dolnej części ekranu, dodaj następujące elementy do swojego vimrc.

set splitbelow 
set splitright 
+0

Fancy. Nie jest łatwo to zrozumieć, używając ': [v] split'. – timss

+0

Perfect ........ –

+0

Ale łatwe do wykrycia, gdy robisz ': vnew'. – romainl

1

Nie jestem pewien, czy jest to 100% elastyczny i działa w każdej sytuacji, ale można połączyć go z kursorem przejść do innego okna polecenia, takie jak ctrlw + wag.

nnoremap <C-\> <C-w>v<C-w>w 
  • <C-w>v - jak :vsplit
  • <C-w>w - przesunąć kursor do okna poniżej/prawo od bieżącej
+0

nie jest Zły pomysł, choć uważam, że nie zawsze będzie to właściwe okno. Dokument nie wydaje się wskazywać, że CTRL-W_W ma ekwiwalent polecenia ':', co jest dziwne. –

+0

@StevenLu Tak, może to być kłopotliwe w zależności od tego, jak chcesz robić podziały. W rzeczywistości mam bind dla czegoś podobnego, ale 'splitbelow' i' splitright' wydaje się lepszym rozwiązaniem. – timss

+0

@StevenLu, jeśli wpiszesz ': h split' dwie linie powyżej pokazują komendy trybu normalnego. – FDinoff

Powiązane problemy