سؤال
أنا أحاول نسخ 300 سطر من ملف إلى آخر ، في الملف المصدر ، أكتب "300yy" ، يقول إنه يخرج من 300 سطر.
انتقل إلى ملف الوجهة واضغط على P ، يعجّب ، ولكن فقط أول 50 سطرًا.
أي فكرة لماذا لا لصق 300؟
المحلول
كما هو مقترح في نصائح VIM ويكي, ، يمكنك ضبط viminfo
ضبط:
:set viminfo?
:set viminfo='100,<1000,s100,h
ماذا تعني البتات الفردية:
'100
سيتم تذكر العلامات لآخر 100 ملف تم تحريره.<1000
يحد من عدد الخطوط المحفوظة لكل سجل إلى 1000 سطر ؛ إذا كان السجل يحتوي على أكثر من 1000 سطر ، يتم حفظ 1000 سطر فقط.s100
يتم تخطي سجلات بأكثر من 100 كيلو بايت من النص.h
تعطيل تسليط الضوء على البحث عندما يبدأ VIM.
نصائح أخرى
كما قال يوجين وزيكس إن ضبط Viminfo الخاص بك سيكون الحل الأسهل
:set viminfo-=<50,s10
سيكون استخدام حل بديل :read
و/أو :write
للقراءة من ملف name.txt في المخزن المؤقت الحالي
:read file-name.txt
لإلحاق نطاق السطر 1 إلى السطر 300 من المخزن المؤقت الحالي إلى ملف إلى ملف
:1,300write >> file-to-append.txt
يمكنك أيضًا استخدام علامات بدلاً من أرقام الأسطر مثل العلامات المرئية
:'<,'>write >> file-to-append.txt
بالطبع ، قد لا يكون بإمكان الإلغاء قادرًا على الوفاء بحالة الاستخدام الخاصة بك والتي من المحتمل أن تعمل فيها تغييرات Viminfo بشكل أفضل.
:help :write
:help :read
:help 'viminfo'
:help :set-=
ابق في نفس الجلسة (افتح الملف الجديد: مسار E) ولن يكون لديك أي قيود.
محاولة vim -p file1 file2
. يفتح كل ملف في علامة تبويب جديدة (وهو رائع) ، ويحل حد النسخ/لصق