Comment revenez-vous de 'gf' dans Vim
Question
J'utilise Vim pour Windows installé en mode Unix. Grâce à ce site, j’utilise maintenant la commande gf
pour accéder à un fichier sous le curseur.
Je cherche une commande pour soit:
- retourne au fichier précédent (similaire Ctrl + T pour les balises ctags) ou
- remappez
gf
lancer automatiquement le nouveau fichier dans une nouvelle fenêtre.
La solution
J'utilise Ctrl - O
Autres conseils
J'utilise fréquemment Ctrl - 6 pour cela.
C’est pratique, car cela me permet de naviguer rapidement entre les deux fichiers.
Vous pouvez utiliser CTRL-W gf
pour ouvrir le fichier dans un nouvel onglet.
Vous pouvez fermer le fichier nouvellement ouvert comme toujours avec : bd
ou utiliser CTRL-6
et d'autres méthodes habituelles de modification des tampons.
Utilisez gf pour descendre dans un fichier et utilisez: bf pour revenir
Utilisez simplement : e #
suivi de Entrée - cela signifie en gros d’éditer le dernier fichier (le plus récent).
Ctrl-Maj-6 est un.
: e # & # 8626;
en est un autre.
Je ne connais pas la réponse à la partie 2 de votre question, mais je peux vous aider avec la partie 1. Utilisez
:e#
Vim maintient une liste de fichiers (tampons) qu’il édite. Si vous tapez
:buffers
il listera tous les fichiers que vous êtes en train d’éditer. Le fichier dans cette liste avec un% à côté est le fichier actuel. Celui avec le # à côté est le fichier alternatif. : e # va basculer entre le fichier actuel et le fichier alternatif. Plutôt que de taper autant, je mappe F2 vers: e # afin que je puisse facilement basculer entre le fichier actuel et le fichier alternatif. Je mappe la commande à F2 en ajoutant ceci à .vimrc
nmap `<F2> :e#<CR>`
J'ai eu CTRL-W f au travail.
C’est assez déprimant d’avoir passé tant de temps à perfectionner les cartes de ces commandes pour découvrir qu’il existe des versions intégrées.
Voir : aide-fichier alternatif .
Lorsque vous ouvrez un nouveau fichier (avec gf ou : n ou une autre commande), l'ancien fichier reste dans une liste de tampons. Vous pouvez répertorier les fichiers ouverts avec : ls
Si vous souhaitez naviguer facilement entre les tampons dans vim, vous pouvez créer un mappage comme suit:
nmap <M-LEFT> :bN<cr>
nmap <M-RIGHT> :bn<cr>
Vous pouvez maintenant basculer entre les tampons avec Alt + flèche gauche ou Alt + flèche droite.
La documentation complète sur les mappages se trouve ici:
:help map.txt
Je n'ai pas consulté votre commande gf , mais j'imagine qu'il utilise la commande : e ou : rechercher .
En supposant que cela soit correct, remplacez simplement : e ou : recherchez par : nouveau (ou : vnew pour une division verticale) et le fichier s'ouvrira dans une nouvelle fenêtre au lieu de la même.
par exemple.
"Switch between header and cpp nmap ,s :find %:t:r.cpp<CR> nmap ,S :new %:t:r.cpp<CR> nmap ,h :find %:t:r.h<CR> nmap ,H :new %:t:r.h<CR> nmap ,F :new =expand("<cfile>:t")<CR><CR> nmap ,d :new =expand("<cfile>")<CR><CR>