90 votes

VIM : Comment puis-je ouvrir un fichier à droite comme vsplit à partir d'un panneau NerdTree à gauche ?

J'ai installé le plugin NerdTree.

Comment puis-je ouvrir un fichier à droite comme vsplit à partir d'un panneau NerdTree à gauche ?

172voto

Prince Goulash Points 7365

Pour faire vsplit place le nouveau tampon à droite du tampon actuel :

set splitright

De même, pour faire split place le nouveau tampon sous le tampon actuel :

set splitbelow

Je n'ai pas essayé avec NerdTree, cependant.

3 votes

Ok, mais comment puis-je ouvrir un fichier vsplité qui remplace l'ancien ?

1 votes

@shibly Si vous avez splitright défini, vous pouvez alors quitter le fichier qui se trouve actuellement à droite, vsplit newfilename et cela mettra le nouveau fichier à la place de l'ancien. Vous pouvez aussi les faire en une seule ligne comme ceci : q | vsplit newfilename . Cela suppose que le fichier de droite est le fichier actif.

1 votes

Je viens de tester, splitright fonctionne bien avec nerdtree. Notez que cela rendra toutes les divisions ultérieures horizontales au lieu de verticales, à moins que l'on utilise vsplit

94voto

grimgav Points 591

Il y a un s mais elle ouvre un fichier divisé à gauche du tampon actuel. Bien que vous puissiez appuyer sur Ctrl + W r pour échanger Windows alors.

3 votes

C'est ok, mais si je veux ouvrir un autre fichier en tapant s, alors j'obtiens une autre fenêtre divisée, mais je veux remplacer l'ancienne fenêtre divisée par le fichier actuellement ouvert, comment puis-je faire cela ?

5 votes

Il semble qu'après avoir ajouté set splitright comme l'a suggéré @PrinceGoulash, s sur un fichier à l'intérieur de NerdTree ouvrira une division vers la droite sans avoir besoin de le faire. Ctrl-W r . Si je comprends bien, si vous voulez vous en tenir à deux fenêtres séparées verticalement, vous pouvez passer à l'ancienne fenêtre et ouvrir un nouveau fichier à l'intérieur via NerdTree en appuyant simplement sur Enter .

0 votes

Non, ce que j'essaie de dire, c'est qu'il y a deux fenêtres vsplit, la gauche est le menu nerdtree, si j'appuie sur "s" alors il viendra du côté droit. aucune autre fenêtre vsplit n'apparaîtra.

4voto

Ben Kushigian Points 256

C'est un peu un hack, mais voici comment je procède :

  1. Placez le curseur dans la fenêtre dans laquelle je veux ouvrir le fichier.
  2. Hit <leader>n<leader>n (ceci ferme NERDtree et l'ouvre à nouveau avec le curseur dans NERDtree)
  3. Sélectionnez le fichier

Sur mon système, cela l'ouvre sur la dernière fenêtre sur laquelle j'étais si le fichier n'est pas déjà ouvert sur mon écran. Start in the window you want to open your file in

Démarrez dans la fenêtre dans laquelle vous voulez ouvrir votre fichier.

After <code><leader>n<leader>n</code> you will be back in NERDTree

Hit <leader>n<leader>n pour fermer et rouvrir NERDTree

Select the file you want to open!

Sélectionnez le fichier que vous voulez !

Un rapide C-w = remettra votre Windows dans de bonnes proportions.

0 votes

Excellente solution. par <leader>n vous voulez dire <C-n> ?

4voto

S-eagle Points 49

Je ne sais pas si quelqu'un d'autre est encore aux prises avec ce problème, mais voici comment je l'ai géré.

Vous pouvez utiliser

:ls 

pour lister les tampons disponibles. Ce qui ressemblerait à quelque chose comme :

1 "foo.txt"
2 "blame_the_user.java"

:b1 pour sélectionner foo.txt

:b2 pour blame_the_user.java

Cette méthode peut être réalisée à partir de n'importe quelle configuration de fenêtre en utilisant :sp o :vs .

Ouvrez d'abord les tampons que vous voulez diviser.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X