J'ai deux colonnes pleines de texte et je veux les mettre côte à côte. Par exemple, j'ai
abc
def
ghi
et
123
456
789
et je veux
123 abc
456 def
789 ghi
Tout ce que je peux trouver, c'est comment coller la ligne même à la fin de chaque ligne d'une colonne. Je n'arrive pas à comprendre comment coller un bloc de texte de plusieurs lignes à la fin d'une autre colonne.
Utilisez le bloc visuel (ctrl-v
) pour couper la colonne de lettres. Puis déplacez vers la première ligne de la colonne numéro. Aller à la fin et faire un espace. Ensuite, collez la colonne de lettres.
Je me demandais pourquoi le "mode bloc visuel" ne fonctionnait pas pour moi. La clé est de yank (ou supprimer) en mode visuel.
Je me trouve dans l'obligation de copier des éléments de colonnes Excel ayant des longueurs variables. Voici comment je le fais:
Names
Donald Knuth
Sebastian Thrun
Peter Norvig
Satoshi Nakamoto
Age
100
50
60
45
Disons que vous voulez mettre la deuxième colonne après la première.
Age
Ctrl + v
pour passer en mode visuel5
dans 45
y
pour tirer (ou d
pour supprimer)Vous avez maintenant tiré en mode visuel.
Coller (en mode normal)
Déplacez-vous à la fin de la première ligne et ajoutez plus d'espaces, car il est plus court que la deuxième ligne par exemple. Si vous collez un "bloc" sans ajouter d'espaces supplémentaires, le "run" sera écrasé dans Sebastian Thrun.
Maintenant que vous êtes sur la première ligne, insérez quelques espaces après le dernier caractère. Assurez-vous de ne pas être en mode insertion et appuyez sur p
pour coller le bloc. (Si vous voulez coller en mode insertion, utilisez ctrl+r "
)
Tu as:
abc
def
ghi
123
456
789
Déplacez votre curseur sur la a
. Puis CTRL+V
et déplacez votre curseur sur i
. Appuyez sur y
.
Ensuite, ajoutez un espace après le caractère 3
et appuyez sur p
.
Terminé.
Si vous êtes sur un Mac et que vous ne pouvez pas comprendre pourquoi la pâte insère le bloc dans de nouvelles lignes, c'est que vous utilisez le système de collage.
Pas de problème, il suffit de tirer/coller avec des tampons:
letter
letter
Assurez-vous que letter
n’est pas +
car c’est le tampon système de la carte graphique et il aura donc le même effet.
Cela peut sembler évident, mais si vous collez depuis un tampon copié de manière externe, cela ne fonctionnera pas uniquement avec le collage en mode visuel. Ce que vous pouvez faire est d’abord faire une pâte normale dans une zone vide et couper/coller verticalement en utilisant la méthode ci-dessus.
Si vous souhaitez définir manuellement le type de registre à dire en mode bloc, utilisez cette commande.
:call setreg(0, getreg(0), 'b')
ou
:call setreg('*', getreg('*'), 'b')
Utile pour coller une colonne à partir d'un éditeur de feuille de calcul.
Voir :help setreg
et vimtip pour plus de détails.