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?

Molekül
quelle
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.

Herbert Sitz
quelle
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

RusAlex
quelle
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)

freeo
quelle
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 |
Phil
quelle
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

Ted Naleid
quelle
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>\| 
der Blechmann
quelle
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
Gajendra Jena
quelle
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>
meain
quelle
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)
imbichie
quelle