59 votes

Ouvrir le dernier fichier fermé dans un nouvel onglet dans Vim

Je sais que je peux ouvrir la dernière fermeture ( :q ) dans Vim en utilisant :e# . Cela ouvrira le fichier dans l'onglet actuel. Comment puis-je effectuer la même tâche mais en ouvrant le fichier dans un nouvel onglet Vim ? Je suis également intéressé par la façon d'ouvrir le fichier dans un nouvel onglet au lieu de l'onglet actuel.

76voto

pb2q Points 28514

# est simplement un caractère spécial Ex qui sera remplacé par le nom du fichier alternatif. Faites un :ls et le fichier de remplacement sera marqué d'un astérisque (*). # là aussi.

# peut être utilisé de la même manière avec :tabnew et split :

  • Pour ouvrir le fichier alternatif dans un nouvel onglet : :tabnew#
  • Pour ouvrir le fichier dans un nouvel espace : :split# ce qui peut être abrégé en :sp# et :vsp# pour une division verticale.

Utilisation d'un tampon numéro de :ls par exemple, le numéro du tampon 5 vous pouvez aussi :

  • ouvrir le tampon dans une division avec :sp#5 ; alternativement :sb5 si le switchbuf contient l'option newtab spécificateur - voir :help switchbuf
  • ouvrir le tampon dans une division verticale avec :vsp #5 (il n'y a pas de :vsb )
  • ouvrir le tampon dans un nouvel onglet avec :tabnew #5

6voto

glts Points 5761

Vous ne devez pas nécessairement quitter le mode normal pour ouvrir le tampon alternatif dans une nouvelle fenêtre :

CTRL - W ^ ouvre le tampon alternatif dans une division horizontale .

CTRL - W T ouvre le tampon actuel dans un nouvel onglet (Shift-T, donc).

Ainsi, une solution à votre question de titre est la combinaison suivante.

CTRL - W ^ , CTRL - W T : ouvre le tampon alternatif dans un nouvel onglet.

Notez que pour le signe d'insertion "^" dans la première commande, vous n'avez pas besoin de relâcher la touche Control et vous n'avez pas besoin d'appuyer sur Shift, il suffit de maintenir la touche CTRL puis frappe W et 6 (où le signe d'insertion est situé sur de nombreux claviers anglais).

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