En invoquant :help
dans Vim, j'ai obtenu la page de manuel d'aide avec une fenêtre fractionnée. Je souhaite agrandir la fenêtre du manuel d'aide et fermer l'autre fenêtre.
Comment puis-je faire ceci? Quelle est la commande Vim pour faire cela?
En invoquant :help
dans Vim, j'ai obtenu la page de manuel d'aide avec une fenêtre fractionnée. Je souhaite agrandir la fenêtre du manuel d'aide et fermer l'autre fenêtre.
Comment puis-je faire ceci? Quelle est la commande Vim pour faire cela?
Réponses:
Avec : help [topic] vous ouvrez un sujet qui vous intéresse.
Ctrl-Wo minimisera les autres fenêtres (ne laissant que la fenêtre d'aide ouverte / maximisée).
(Ctrl-Wo signifie maintenir Ctrl, appuyez sur W, puis sur o)
C-w
, ^
, :buf OtherFile.txt
, :sbuf Otherfile.txt
etc. (voir l' aide pour wincmd
, switchbuf
pour plus de détails). La chose funy est que mon ( à mon humble avis) correcte réponse n'a pas encore été donné ...
gvim --remote
. J'utilise toujours se guioptions=agim
parce que je préfère le rendu des onglets de type console.
Vous pouvez utiliser Ctrl+WT( c'est une majusculeT
) pour déplacer n'importe quelle fenêtre ouverte vers son propre onglet.
Comme mentionné par d'autres Ctrl+W_/ Ctrl+W|pour maximiser la disposition actuelle de l'onglet / de la fenêtre (tout en respectant les paramètres de hauteur / largeur min pour diverses autres fenêtres).
( Ctrl+W=redimensionne toutes les fenêtres à la même taille, en respectant les paramètres de hauteur / largeur minimum)
Éditer vers le commentaire
gvim /tmp/test.cpp
):help various-motions
- ouvre une fenêtre fractionnéereplacez l'aide dans l'onglet d'origine:
mAZZ<C-w>S`A
Vous pouvez éviter d'utiliser une marque pour les tampons normaux (sans aide). Faites-moi savoir si vous êtes intéressé.
Ctrl-PgUp
, Ctrl-PgDown
ou :tabnext
, :tabprev
). Pour fermer la nouvelle (aide) onglet, l' utilisation ZZ
, Ctrl-W, C
, :q
, :clo
, :tabclose
ou de toute autre manière que vous habituellement les fenêtres se referment / onglets
"No, that was not the question"
Peut paraître comme une réprimande , je suis sûr que vous ne veux pas dire mal. )
:sbuf
comme je le préfère normalement). Hope this helps
Vous pouvez agrandir une fenêtre à sa taille maximale en utilisant Ctrl+W_(trait de soulignement). La taille finale de la fenêtre développée sera limitée par la valeur de l' winminheight
option. Lorsque vous fermez la fenêtre d'aide, vos fenêtres précédentes seront restaurées à leurs anciennes tailles.
Ctrl+W o
ferme les autres fenêtres, donc elles sont parties. C'est pourquoi j'utilise Ctrl+W _
.
Ctrl+W =
commande redimensionne les fenêtres afin qu'elles aient toutes à peu près la même taille.
Ctrl+W |
.
ctrl+w =
// cela rend toutes les fenêtres de la même taille
Je préfère utiliser des onglets pour cela. Utilisation
:tabedit %
pour ouvrir un fichier agrandi dans un nouvel onglet, une fois que vous avez terminé, revenez à l'ancienne configuration avec toutes les fenêtres en utilisant
:tabclose
Je trouve que c'est la solution idéale car cela fonctionne avec :cw
et le plugin Tagbar. Tiré de: vim.wikia
J'aime utiliser «M» pour maximiser et «m» pour minimiser.
Cela n'aura pas l'air génial car cela réduira toutes les autres fenêtres ouvertes qui se trouvent dans le même tampon, mais je l'ai trouvé plus utile lorsqu'il s'agit d'onglets. Ainsi, par exemple, au lieu d'ouvrir un nouvel onglet pour ce fichier, vous devez le fermer une fois que vous avez terminé ou que vous souhaitez le minimiser.
nnoremap <C-W>M <C-W>\| <C-W>_
nnoremap <C-W>m <C-W>=
La raison de nnoremap est que je ne me soucie pas du mappage récursif, mais juste la carte devrait également fonctionner.
nnoremap <C-W>M <C-W>\|<C-W>_
(sans l'espace après |
), le curseur ne se déplacera pas de 1 à chaque maximisation.
nnoremap <C-W>\ <C-W>\|<C-W>_
). Il semble naturel avec les liaisons par défaut |
, _
et =
.
Vous pouvez obtenir la fenêtre d'aide en taille réelle sans fermer / redimensionner les autres fenêtres en utilisant
tab help {topic}
Cela ouvrira la fenêtre d'aide dans un nouvel onglet, les autres fenêtres seront laissées telles quelles (vraiment redimensionnées pour que la tabline puisse être affichée, mais ce n'est qu'une ligne supplémentaire au-dessus). Vous pouvez fermer l'aide comme d'habitude: au moins :bw<CR>
et <C-w>c
travailler pour moi en fermant également un nouvel onglet.
Installez le plugin vim-maximizer , puis vous pouvez maximiser la fenêtre actuelle et restaurer avecF3
par Charles Campbell
Ce plugin remappe
Ctrl-w o
pour faire les deux: maximiser et restaurer la mise en page précédente.
Ce plugin peut être téléchargé à partir de deux emplacements
Pour obtenir l'aide que vous, puis fermez l'autre fenêtre, faites ceci: :help
CTRL-WCTRL-W:close
. Ensuite, vous aurez juste l'aide.
dans votre .vimrc, placez simplement
nmap - :res<CR>:vertical res<CR>$
Lorsque vous souhaitez agrandir la fenêtre actuelle, appuyez simplement sur - en mode commande. Appuyez sur = lorsque vous souhaitez restaurer le dernier état de plusieurs fenêtres
D'une manière ou d'une autre, le plugin ZoomWin ne fonctionnait pas du tout pour moi, je vois maintenant qu'il y a d'autres plugins mais j'ai déjà écrit ceci et me donne l'effet exact que je voulais (avec une petite bizarrerie détaillée ci-dessous) :
function! ToggleZoom(zoom)
if exists("t:restore_zoom") && (a:zoom == v:true || t:restore_zoom.win != winnr())
exec t:restore_zoom.cmd
unlet t:restore_zoom
elseif a:zoom
let t:restore_zoom = { 'win': winnr(), 'cmd': winrestcmd() }
exec "normal \<C-W>\|\<C-W>_"
endif
endfunction
augroup restorezoom
au WinEnter * silent! :call ToggleZoom(v:false)
augroup END
nnoremap <silent> <Leader>+ :call ToggleZoom(v:true)<CR>
Utilisez la touche mappée (Leader et + dans mon cas) pour basculer entre la mise en page maximisée / précédente. Si vous passez à un autre fractionnement dans le même onglet, la maximisation est désactivée.
Si vous changez d'onglet, la division reste maximisée, même si d'une manière ou d'une autre, elle ne couvrira plus toute la largeur totale, les fenêtres minimisées en largeur récupérant environ 4 colonnes ou quelque chose du genre. Quoi qu'il en soit, cela fonctionne de manière acceptable pour moi, même avec cette petite bizarrerie.
edit: d'une manière ou d'une autre, cela fonctionne bien maintenant, doit avoir gâché d'une manière ou d'une autre avant.