it-swarm.asia

كيف تجعل قص / نسخ / لصق في أوبونتو تعمل مع Ctrl + X ، Ctrl + C ، Ctrl + V؟

بشكل افتراضي ، فإن الاختصارات المقطوعة/المنسوخة/المختصرة في GVim على أوبونتو هي:

 قص "+ x 
 نسخ" + ص 
 لصق "+ gP 

أرغب في استخدام مجموعات مفاتيح التحكم في GVim ، مثلما أستخدمه في تطبيقات Firefox و gnome. كيف يمكنني تكوين GVim للعمل مثل تطبيقات Gnome الأخرى؟

52
pcapademic

أضف الأسطر التالية إلى _vimrc أو .vimrc

source $VIMRUNTIME/mswin.vim
behave mswin

ولكن حذار ، الوضع المرئي هو CTRL-Q بدلاً من CTRL-V.

للحصول على نظرة عامة على ما mswin.vim لا ترى mswin.vim sourcode . يتم التعليق بشكل جيد للغاية ، وإذا كان هناك أمر ما غير واضح ، يمكنك بسهولة البحث عنه في مساعدة vim.

فيما يلي نظرة عامة سريعة تم تجميعها من المصدر:

  • التفاف مسافة للخلف ومفاتيح المؤشر إلى السطر السابق/التالي
  • يتم قطع CTRL-X و SHIFT-Del
  • CTRL-C و CTRL- إدراج نسخ
  • CTRL-V و SHIFT- إدراج هي لصق
  • استخدم CTRL-Q للقيام بما تستخدمه CTRL-V
  • استخدم CTRL-S للحفظ ، أيضًا في وضع الإدراج
  • CTRL-Z هو تراجع ؛ ليس في cmdline رغم ذلك
  • CTRL-Y هو الإعادة (على الرغم من عدم تكرار) ؛ ليس في cmdline رغم ذلك
  • البديل الفضاء هو قائمة النظام
  • CTRL-A هو تحديد الكل
  • CTRL-Tab هو الإطار التالي
  • CTRL-F4 هو إغلاق النافذة

بناءً على طلب Nippysaurus: أضع التالي في ملفي .gvimrc لعرض Ctrl-V إلى جانب لصق في القائمة:

unmenu! Edit.Paste
aunmenu Edit.Paste
nnoremenu 20.360 &Edit.&Paste<Tab>Ctrl-V        "+gP
cnoremenu    &Edit.&Paste<Tab>Ctrl-V        <C-R>+

لم أختبره جيدًا ، بل مجرد فحص سريع إذا كان ما فعلته متوقعًا. يعمل لي ، آمل أن يعمل من أجلك ؛-)

50
Ludwig Weinzierl

إذا كنت تريد أن يعمل Cut/Copy/Paste باستخدام مفاتيح الاختصار "القياسية" ، لكنك لا تريد تغيير أي من خيارات التكوين الأخرى في gvim ، فحاول إضافة ما يلي إلى ~/.vimrc.

vmap <C-c> "+yi
vmap <C-x> "+c
vmap <C-v> c<ESC>"+p
imap <C-v> <C-r><C-o>+

يعمل اللصق فقط في وضع Visual و insert ، لذلك لا داعي للقلق بشأن التعارض مع Ctrl-V والوضع المرئي block Block. هذه ليست مشكلة ، لأن Copy and Cut يضعك في وضع insert ، بحيث يمكنك لصقها على الفور بعد ذلك. إذا جربته ، ستجد أنه يبدو طبيعيًا تمامًا.

لقد توصلت إلى هذا التكوين بعد عدة تكرار من التغيير والتبديل ، وأعتقد أنه "مثالي" الآن. إذا كنت غير راضٍ قليلاً عن التكوين الحالي للنسخ/اللصق ، فجرب هذا وأراهن أنك ستحبه.

44
Cogan

إذا كنت ترغب في الحفاظ على سلوك vim العادي مع السماح أيضًا باستخدام أقل تعقيدًا لحافظة النظام ، فراجع الوصول إلى حافظة النظام . إذا كنت ترغب في أن يستخدم gvim حافظة النظام كمخزن مؤقت افتراضي (لذا فإن أي x ، y ، p ، إلخ ، يستخدم الأمر الحافظة) ، ثم أضف السطر التالي إلى vimrc:

set clipboard=unnamed

أنا شخصياً أستخدم المخازن المؤقتة داخل نظام vim أكثر من نظام vim والنظام ؛ لذلك أفضل اختصارًا مرهقًا بعض الشيء أكثر من حافظة النظام الخاصة بي باستمرار. لكن من الجيد أن الخيار متاح لأولئك الذين يفضلونه.

9
jtb

أعتقد أنه يمكنك إضافة هذا باستخدام: imap command (جربته فقط باستخدام Ctrl + X في Windows الذي نجح ، يبدو أن الضغط على ctrl + c يؤدي إلى إلغاء الأمر رغم أنك قد تضطر إلى القيام بذلك في vimrc).

:imap <C-X> "+x
:imap <C-C> "+y 
:imap <C-V> "+gP

إذا أضفته إلى ~/.vimrc ، فأنت بحاجة فقط إلى إزالة: أمام imap.

يضيف imap الروابط في وضع الإدراج فقط ، لذلك قد ترغب في تغييرها إلى خريطة فقط أو إلى شيء آخر. ابحث في :help mapmode لمعرفة المزيد حول إعادة تعيين الأشياء وتعيينها.

حظا سعيدا!

2
Peter Thorin