Vim'de dikey bölünmüş pencere boyutu nasıl artırılır


316

:vsplit(kısa form :vs:) Vim görünüm penceresini dikey olarak ayırın. :30vsgörünüm penceresini böler ve yeni pencereyi 30 karakter genişliğinde yapar. Bu 30 karakterlik pencere oluşturulduktan sonra, boyutu nasıl 31 veya 29 olarak değiştirilir?

Yatay pencerelerle Ctrl- W +satır sayısını bir arttırır. Sütunları bir arttırmak için eşdeğer komut nedir?


15
Pencere yüksekliğini 5 (veya herhangi bir sayı) artırmak için Ctrl-W 5+ tuşlarını da kullanabilirsiniz. Aynı şey Ctrl-W 5- için de geçerli
AlexMA

1
:h ^wpencere komutlarının listesini görmek için. :h ^wwnormal komutun yardımını görmek için Ctrl-w w.
qeatzy

Yanıtlar:


450

CTRL-W >

ve

CTRL-W <

pencereyi daha geniş veya daha dar yapmak için.


115
ya :30winc > ve :30winc <geniş 30 daha / daha az karakter var.
Benoit

85
ya 30CTRL-W >da cevap ruhu içinde kalmak.
Xavier T.

50
:vertical resize 30geçerli pencereyi tam olarak 30 karakter genişliğinde yeniden boyutlandırmak için.
Peter Rincker

20
ayrıca CTRL-W 30>
dhblah

5
:res <N>pencere boyutunu tam olarak N satır olarak ayarlamak için (genişlik değil yükseklik için)
lukecampbell

249

Ve Ctr-W =

onları eşit yapacak


10
:winc =Bu aynı zamanda onları eşit kılacaktır.
nitin_cherian

1
Bu yatay bölünmeler için, değil mi? Dikey yarıklara eşdeğer ne olur?
José Ramón

3
@ JoséRamón Bu komut hem yatay hem de dikey bölünmeler için çalışır.
Nathan

105

YATAY SPLIT yeniden boyutlandırmaya da ihtiyacınız varsa :
Komut tüm bölünmeler için aynıdır , sadece parametre değişir:

- + onun yerine < >

Örnekler :
azaltın 10 sütun yatay boyutu

:10winc -

Artış 30 sütunların yatay boyutu

:30winc +

veya normal modda:

Yatay böler

10 CTRL+w -

30 CTRL+w +

Dikey böler

10 CTRL+ w <(azalt)

30 CTRL+ w >(artış)


3
+1. Sadece küçük bir yorum: :he winc ctrl+w [count] {arg}
İşlere

45

Yanımda başka bir ipucu:

Pencerenin genişliğini tam olarak 80 sütun söyleyecek şekilde ayarlamak için şunu kullanın:

80 CTRL+W |

Maksimum genişliğe ayarlamak için, önceki sayıyı atlamanız yeterlidir:

CTRL+W |

6
YÜKSEKLİK: Bu parametrelerin karşılığı, yüksekliği ayarlamak için "_" (shift + -) şeklindedir. Görsel olarak hatırlamak aslında çok kolay, çünkü | kelimenin tam anlamıyla dikey bölünmüş ve _ kelimenin tam anlamıyla yatay bölünmüş çizgidir. Örnek: 15 CTRL + W _ Geçerli bölme yüksekliğini 15 satıra ayarlar. Hatırlamanın başka bir yolu: Mutlak boyutlar için SHIFT'e ihtiyacınız var, çünkü her ikisi de | ve _ basılacak vardiya gerektiriyor
freeo

29

Bunlar benim geçerli penceremin yüksekliğini ve genişliğini hareket ettirmek için command- [ok] tuşuna basmama izin vermek için benim .gvimrc içinde eşlenmiş var:

" resize current buffer by +/- 5 
nnoremap <D-left> :vertical resize -5<cr>
nnoremap <D-down> :resize +5<cr>
nnoremap <D-up> :resize -5<cr>
nnoremap <D-right> :vertical resize +5<cr>

MacVim için, .gvimrc'nize koymanız gerekir (ve .vimrc'nize değil) aksi takdirde sistem .gvimrc tarafından üzerine yazılır.


1
sonunda bu <cr> ne anlama geliyor? Bunu daha önce nnoremap'te görmedim
Zen

2
"satırbaşı" kısa, temelde kullanıcı dönüş isabet eşdeğer
Ted Naleid

9

Aynı çizgiler .vimrcboyunca, bölmelerde hareket etmeme izin vermek için aşağıdakileri kullanıyorum, hareket ettirdiğimi otomatik olarak tam boyutuna genişletiyorum ve kalanları minimum yüksekliklerine veya genişliklerine çekiyorum:

" Switch between window splits using big J or K and expand the split to its 
" full size. 
" 
" Move vertically in the window through the horizontal splits... 
map <C-J> <C-w>j<C-w>_ 
map <C-K> <C-w>k<C-w>_ 

" Move horizontally in the window through the vertical splits... 
map <C-H> <C-w>h<C-w>\| 
map <C-L> <C-w>l<C-w>\| 

4

Aşağıdaki .vimrc içinde eşleyerek yeniden boyutlandırmak için sayılar kullanıyorum

nmap 7 :res +2<CR> " increase pane by 2 
nmap 8 :res -2<CR> " decrease pane by 2
nmap 9 :vertical res +2<CR> " vertical increase pane by 2
nmap 0 :vertical res -2<CR> " vertical decrease pane by 2

Demek istediniz nmap 9 :vertical res +2<CR>yerine -2içinvertical increase
Zach

Bu gerçekten hoş bir bağ. Teşekkür ederim!
LeOn - Han Li

3

Şimdilik kullandığım şey bu:

nnoremap <silent> <Leader>= :exe "resize " . (winheight(0) * 3/2)<CR>
nnoremap <silent> <Leader>- :exe "resize " . (winheight(0) * 2/3)<CR>
nnoremap <silent> <Leader>0 :exe "vertical resize " . (winwidth(0) * 3/2)<CR>
nnoremap <silent> <Leader>9 :exe "vertical resize " . (winwidth(0) * 2/3)<CR>

1

Bunun için aşağıdaki komutları kullanıyorum:

set lines=50     " For increasing the height to 50 lines (vertical)
set columns=200  " For increasing the width to 200 columns (horizontal)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.