vim mémoire de ligne limitée
Question
im essayant de copier 300 lignes d'un fichier à un autre, dans le fichier source i type "300yy", il dit qu'il a yanked 300 lignes.
Aller au fichier de destination et appuyez sur p, il colle, mais seulement les 50 premières lignes.
une idée pourquoi il n'est pas coller 300?
La solution
Comme suggéré dans Conseils Wiki Vim, vous pouvez régler le viminfo
réglage:
:set viminfo?
:set viminfo='100,<1000,s100,h
Ce que les bits individuels signifient:
- Marques de
'100
se souviendra pour les 100 derniers fichiers modifiés. -
<1000
Limite le nombre de lignes enregistrées pour chaque registre à 1000 lignes; si un registre contient plus de 1000 lignes, seules les 1000 premières lignes sont enregistrées. -
s100
registres avec plus de 100 Ko de texte sont sautées. -
h
Désactive la mise en surbrillance Recherche des Vim commence.
Autres conseils
Eugene et Zyx dit l'ajustement de votre viminfo serait la solution la plus simple
:set viminfo-=<50,s10
Une solution alternative serait l'utilisation :read
et / ou :write
Pour lire un fichier-nom.txt dans le tampon courant
:read file-name.txt
pour ajouter l'intervalle de la ligne 1 à la ligne 300 de la mémoire tampon en cours de fichier à append.txt
:1,300write >> file-to-append.txt
Vous pouvez également utiliser des marques au lieu de numéros de ligne tels que les repères visuels
:'<,'>write >> file-to-append.txt
Bien sûr appending peut ne pas être en mesure de remplir votre cas d'utilisation dans laquelle les changements viminfo fonctionnera probablement mieux.
:help :write
:help :read
:help 'viminfo'
:help :set-=
Séjour à la même session (ouvrir le nouveau fichier faire: chemin e). Et vous n'avez aucune limitation
vim -p file1 file2
try. Il ouvre chaque fichier dans un nouvel onglet (qui est génial), et il résout le copier / coller limite