Comment puis-je ouvrir plusieurs fichiers à la fois dans Vim?
Est-il un moyen d'ouvrir tous les fichiers dans un répertoire à partir de Vim? Ainsi, un :command
que dirais-en effet "Ouvrir tous les fichiers sous /some/path
dans des tampons".
Idéalement, il serait bon d'ouvrir tous les fichiers dans un dir de manière récursive.
Vous devez vous connecter pour publier un commentaire.
La commande que vous cherchez est args:
Par exemple:
permettra d'ouvrir tous les fichiers dans le répertoire
**
de faire correspondre les fichiers de manière récursive. E. g.:args /path_to_dir/**
:tab all
de les mettre dans des onglets distincts."/path_to_dir/subdir/" Illegal file name
). Solution rapide est à la deuxième manche de commandeargd */
pour les supprimer de la liste:argdo source my_commands_batch.vim
Pourquoi ça ne marche pas si je veux ouvrir tous les fichiers se terminant avec une certaine extension?
J'ai essayé
et ouvre uniquement les fichiers dans le currenty répertoire.
J'ai trouvé la réponse.Le code correct est
:n **/*.cs
Pour plus d'informations
:h find
Avez-vous essayé
Il permettra d'ouvrir tous les fichiers de /certains/chemin
Je ne pense pas qu'il va ouvrir le fichier de manière récursive si.
MODIFIER
Peut-être l'aide d' ** va s'ouvrir de manière récursive comme daf mentionné
Une méthode qui ne nécessite pas de déconner avec
args
est de mettre la liste des fichiers dans un fichier texte, puis utilisez la:so
de commande pour exécuter les commandes dans le fichier.Par exemple, si vous voulez ouvrir tous les fichiers qui se terminent par
.php
dans un répertoire donné, d'abord créerfiles.txt
contenant la liste des fichiers, précédées de la commande que vous souhaitez utiliser pour l'ouvrir.Puis, dans vim:
Si la liste de fichiers est grande, elle est relativement trivial pour générer le
files.txt
fichier rapidement, en redirigeant la sortie dels
à un fichier, et ensuite à l'aide d'un vim macro à ajoutersp
avant chaque nom de fichier.Ce n'est évidemment pas aussi élégante qu'à l'aide de la
args
etargdo
commandes, mais ces commandes sont également beaucoup plus compliqué.Il y a aussi peut-être un moyen de le faire avec une seule commande sur la ligne de commande, mais même après 16 ans, je trouve toujours vim de programmation pour être étrange et impénétrable.
Un autre moyen d'ouvrir les fichiers récursivement
kate **/*(^/)
(à l'aide de zsh d'expansion de la syntaxe) fait ce qui est nécessaire: ouvre les fichiers du répertoire de façon récursive. Il n'est pas “de l'intérieur” et il n'est pas à l'aide de vim, mais “pourtant fait ce qui est nécessaire”. Ou mêmekate ~/.vimrc ~/.bashrc
. L'omission “de l'intérieur”, “à partir d'un répertoire donné” et “récursivement” tout à fait, mais il est encore fait ce qui est nécessaire”: ouvre les fichiers.Si vous souhaitez ajouter à la liste d'arguments;
voir
à partir de/dans vim pour plus d'informations.