So erhöhen Sie die Größe des vertikalen geteilten Fensters in Vim


316

:vsplit(Kurzform :vs:) Teilen Sie das Vim-Ansichtsfenster vertikal. :30vsteilt das Ansichtsfenster und macht das neue Fenster 30 Zeichen breit. Wie würde man nach der Erstellung dieses 30-Zeichen-Fensters seine Größe auf 31 oder 29 ändern?

Bei horizontalen Fenstern Ctrl- W +erhöht die Anzahl der Zeilen um eins. Was ist der entsprechende Befehl, um die Spalten um eins zu erhöhen?


15
Sie können auch Strg-W 5+ ausführen, um die Fensterhöhe um 5 (oder eine beliebige Anzahl) zu erhöhen. Gleiches gilt für Strg-W 5-
AlexMA

1
:h ^wum die Liste der Fensterbefehle anzuzeigen. :h ^wwum die Hilfe eines normalen Befehls zu sehen Ctrl-w w.
Qeatzy

Antworten:


449

CTRL- -W >

und

CTRL- -W <

um das Fenster breiter oder schmaler zu machen.


115
oder :30winc > und :30winc <um 30 mehr / weniger Zeichen breit zu haben.
Benoit

85
oder 30CTRL-W >im Geiste der Antwort zu bleiben.
Xavier T.

50
:vertical resize 30um die Größe des aktuellen Fensters auf genau 30 Zeichen zu ändern.
Peter Rincker

20
auch STRG-W 30>
Dhblah

5
:res <N>um die aktuelle Fenstergröße auf genau N Zeilen
einzustellen

249

Und Ctr-W =

wird sie gleich machen


10
:winc =Dies wird sie auch gleich machen.
Nitin_cherian

1
Das ist für horizontale Teilungen, richtig? Was wäre das Äquivalent für vertikale Teilungen?
José Ramón

3
@ JoséRamón Dieser Befehl funktioniert sowohl für horizontale als auch für vertikale Teilungen.
Nathan

105

Falls Sie auch die Größe von HORIZONTAL SPLIT benötigen :
Der Befehl ist für alle Teilungen gleich, nur der Parameter ändert sich:

- + anstatt < >

Beispiele :
Verringern Sie die horizontale Größe um 10 Spalten

:10winc -

Erhöhen Sie die horizontale Größe um 30 Spalten

:30winc +

oder im normalen Modus:

Horizontale Teilungen

10 CTRL+w -

30 CTRL+w +

Vertikale Teilungen

10 CTRL+ w <(abnehmen)

30 CTRL+ w >(erhöhen)


3
+1. Nur ein kleiner Kommentar: laut :he winc ctrl+w [count] {arg}Werken auch ...
TrueY

45

Ein weiterer Tipp von meiner Seite:

Verwenden Sie, um die Fensterbreite auf genau 80 Spalten einzustellen

80 CTRL+W |

Um die maximale Breite einzustellen, lassen Sie einfach die vorhergehende Zahl weg:

CTRL+W |

6
HÖHE: Das Gegenstück dieses Parameters ist "_" (Umschalt + -) zum Einstellen der Höhe. Es ist eigentlich sehr einfach, sich visuell zu erinnern, da | ist buchstäblich die vertikale Teilung und _ ist buchstäblich die horizontale Teilungslinie. Beispiel: 15 STRG + W _ Legt die aktuelle Teilungshöhe auf 15 Zeilen fest. Eine andere Art, sich zu erinnern: Sie benötigen SHIFT für absolute Größen, da beide | und _ müssen die Schicht gedrückt werden
freeo

29

Ich habe diese in meiner .gvimrc zugeordnet, damit ich Befehlstaste [Pfeil] drücken kann, um die Höhe und Breite meines aktuellen Fensters zu verschieben:

" 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>

Für MacVim müssen Sie sie in Ihre .gvimrc (und nicht in Ihre .vimrc) einfügen, da sie sonst vom System .gvimrc überschrieben werden


1
Was bedeutet das am Ende? Ich habe das noch nie in nnoremap gesehen
Zen

2
Es ist die
Abkürzung

9

In diesem Sinne verwende ich Folgendes in meinem .vimrc, um mich durch die Teilungen bewegen zu lassen, diejenige, zu der ich mich bewege, automatisch auf ihre volle Größe zu erweitern und den Rest auf ihre minimale Höhe oder Breite zu verkleinern:

" 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

Ich verwende Zahlen, um die Größe zu ändern, indem ich Folgendes in .vimrc zuordne

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

Ich denke du meinst nmap 9 :vertical res +2<CR>statt -2fürvertical increase
Zach

Das ist wirklich eine schöne Bindung. Vielen Dank!
LeOn - Han Li

3

Folgendes verwende ich ab sofort:

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

Ich benutze dafür die folgenden Befehle:

set lines=50     " For increasing the height to 50 lines (vertical)
set columns=200  " For increasing the width to 200 columns (horizontal)
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.