Comment augmenter la taille de la fenêtre de séparation verticale dans Vim

316

:vsplit(forme courte:) :vsdivise la fenêtre Vim verticalement. :30vsdivise la fenêtre d'affichage, faisant de la nouvelle fenêtre 30 caractères de large. Une fois cette fenêtre de 30 caractères créée, comment changer sa taille en 31 ou 29?

Avec des fenêtres horizontales Ctrl- W +augmente le nombre de lignes d'une unité. Quelle est la commande équivalente pour augmenter les colonnes d'une unité?

molicule
la source
15
Vous pouvez également faire Ctrl-W 5+ pour augmenter la hauteur de la fenêtre de 5 (ou n'importe quel nombre). Il en va de même pour Ctrl-W 5-
AlexMA
1
:h ^wpour voir la liste des commandes de fenêtre. :h ^wwpour voir l'aide de la commande normale Ctrl-w w.
qeatzy

Réponses:

450

CTRL-W >

et

CTRL-W <

pour agrandir ou rétrécir la fenêtre.

Herbert Sitz
la source
115
ou :30winc > et :30winc <d'avoir 30 caractères plus / moins larges.
Benoit
85
ou 30CTRL-W >pour rester dans l'esprit de la réponse.
Xavier T.
50
:vertical resize 30pour redimensionner la fenêtre actuelle à exactement 30 caractères de large.
Peter Rincker
20
aussi CTRL-W 30>
dhblah
5
:res <N>définir la taille actuelle de la fenêtre sur exactement N lignes (pour la hauteur et non la largeur)
lukecampbell
249

Et Ctr-W =

les rendra égaux

RusAlex
la source
10
:winc =Cela les rendra également égaux.
nitin_cherian
1
C'est pour les divisions horizontales, non? Quel serait l'équivalent pour les divisions verticales?
José Ramón
3
@ JoséRamón Cette commande fonctionne pour les divisions horizontales et verticales.
Nathan
105

Si vous avez également besoin d'un redimensionnement HORIZONTAL SPLIT :
La commande est la même pour toutes les divisions, juste le paramètre change:

- + au lieu de < >

Exemples :
diminution de la taille horizontale de 10 colonnes

:10winc -

Augmentez la taille horizontale de 30 colonnes

:30winc +

ou en mode normal:

Divisions horizontales

10 CTRL+w -

30 CTRL+w +

Divisions verticales

10 CTRL+ w <(diminuer)

30 CTRL+ w >(augmenter)

freeo
la source
3
+1. Juste un petit commentaire: selon les :he winc ctrl+w [count] {arg}travaux aussi ...
TrueY
45

Un autre conseil de mon côté:

Afin de définir la largeur de la fenêtre pour disons exactement 80 colonnes, utilisez

80 CTRL+W |

Afin de le définir à la largeur maximale, omettez simplement le numéro précédent:

CTRL+W |
Phil
la source
6
HAUTEUR: La contrepartie de ces paramètres est "_" (shift + -) pour ajuster la hauteur. Il est en fait très facile de se souvenir visuellement, car | est littéralement la division verticale et _ est littéralement la ligne de division horizontale. Exemple: 15 CTRL + W _ Définit la hauteur de fractionnement actuelle à 15 lignes. Une autre façon de se souvenir: vous avez besoin de SHIFT pour les tailles absolues, car les deux | et _ exiger que la touche soit appuyée
freeo
29

Je les ai mappés dans mon .gvimrc pour me permettre d'appuyer sur la commande- [flèche] pour déplacer la hauteur et la largeur de ma fenêtre actuelle:

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

Pour MacVim, vous devez les mettre dans votre .gvimrc (et non dans votre .vimrc) car ils seront sinon écrasés par le système .gvimrc

Ted Naleid
la source
1
qu'est-ce que cela signifie <cr> à la fin? Je n'ai jamais vu cela dans nnoremap auparavant
Zen
2
c'est l'abréviation de "retour chariot", en gros, c'est l'équivalent du retour de l'utilisateur
Ted Naleid
9

Dans le même esprit, j'utilise ce qui suit dans mon .vimrcpour me permettre de parcourir les divisions, en agrandissant automatiquement celui vers lequel je passe à sa taille maximale et en réduisant tout le reste à leur hauteur ou largeur minimale:

" 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>\| 
l'homme d'étain
la source
4

J'utilise des nombres pour redimensionner en mappant les éléments suivants dans .vimrc

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
la source
Je pense que tu veux dire nmap 9 :vertical res +2<CR>au lieu de -2pourvertical increase
Zach
C'est vraiment une belle reliure. Je vous remercie!
LeOn - Han Li
3

Voici ce que j'utilise actuellement:

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
la source
1

J'utilise les commandes ci-dessous pour cela:

set lines=50     " For increasing the height to 50 lines (vertical)
set columns=200  " For increasing the width to 200 columns (horizontal)
imbichie
la source