لماذا يتصرف vi بشكل مختلف في Ubuntu عنه في CentOS؟

StackOverflow https://stackoverflow.com/questions/1074614

  •  21-08-2019
  •  | 
  •  

سؤال

لقد أصبحت أكثر راحة في استخدام vi بشكل يومي، ولكن الشيء الوحيد الذي يزعجني هو أنه عندما أستخدمه على Ubuntu فإنه يتصرف بشكل مختلف عما عندما أستخدمه على CentOS (وربما في أماكن أخرى).أنا في الواقع أفضل الطريقة التي يعمل بها CentOS.

فيما يلي ثلاثة أشياء تزعجني حقًا على Ubuntu:

  1. في وضع إدراج CentOS، يوجد إشعار كبير وعريض في الأسفل بأنني في وضع INSERT، ولكن في Ubuntu لا يوجد إشعار لذا لا يمكنني أبدًا معرفة الوضع الذي أنا فيه.

  2. في وضع إدراج CentOS، يمكنني الضغط على المفاتيح لأعلى/لأسفل وسيتحرك المؤشر لأعلى ولأسفل.ولكن عندما أكون في Ubuntu، يؤدي الضغط لأعلى ولأسفل إلى إدراج الحرفين A وB على التوالي في أسطر جديدة.

  3. في وضع إدراج CentOS، يمكنني استخدام مفتاح مسافة للخلف وسيقوم بحذف الحرف الموجود قبل المؤشر، لكن في Ubuntu أسمع فقط صوت تنبيه ولا يحدث شيء.يمكنني الضغط على مفتاح الحذف في وضع الأوامر، لكني أفضل أن أتمكن من الضغط على مفتاح مسافة للخلف.

هل هذه الاختلافات شيء يجب أن أتعايش معه أم أنها حل سهل؟

هل كانت مفيدة؟

المحلول

في أوبونتو، يأتي تثبيت vim الافتراضي من الحزمة vim-tiny, ، وهذا ليس كل شيء.

ربما تريد:

apt-get install vim

أو

apt-get install vim-full

تبدو بعض مشكلاتك الأخرى وكأنها مشكلات تتعلق بمفتاح مسافة للخلف وأشياء أخرى.بمجرد حصولك على الإصدار الكامل من vim، حاول إضافة هذه إلى .vimrc الخاص بك:

set nocompatible

set t_kb=^H
fixdel

(ملاحظة مهمة:أن ^H هو حرف ctrl-H حرفيًا، والذي ستحصل عليه عن طريق الضغط على Ctrl-V Ctrl-H في وضع الإدراج)

نصائح أخرى

الإجابات المقدمة سابقًا لم تنجح معي.

أميل إلى تفضيل ترك عمليات تثبيت نظام التشغيل كمخزون قدر الإمكان والحفاظ على ملفات التكوين بسيطة قدر الإمكان.لإصلاح هذه المشكلات الثلاث في Ubuntu 12.04، قمت بما يلي:

في "~/.vimrc"، أدخل السطور -
تعيين nocp
تعيين ب س = 2

بالإضافة إلى تثبيت vim-full، إذا لم يكن لديك ملف ~/.vimrc:

$ cp /usr/share/vim/vimcurrent/vimrc_example.vim ~/.vimrc

هذا المثال .vimrc يقوم بالفعل بإجراء الإعدادات الأكثر أهمية ويعد بداية جيدة للتخصيص.

سأفترض أنك تقصد VIM عندما تقول VI؟وعلى الأقل، يبدو أن النقطة الثانية هي مشكلة في وحدة التحكم/المحطة الطرفية مع التحرير والسرد VIM/المصطلح.تقترح الصفحة أدناه بعض الإصلاحات، لكن لم أتمكن من تنفيذ أي منها (أستخدم vim بدلاً من المعجون في صندوق Ubuntu dev)

http://vim.wikia.com/wiki/Fix_broken_arrow_key_navigation_in_insert_mode

يمكن الكتابة فوق النقطة الثالثة باستخدام ما يلي في .vimrc الخاص بك

تعيين مسافة للخلف = مسافة بادئة، eol، بداية

(١) تحقق إذا showmode الإعداد مختلف على حد سواء.

(2) لا أعرف شيئًا عن هذا، أعتقد أن هذا له علاقة بالمحطة أكثر من Vi نفسها.

(3) ربما حاول استخدام :map <BS> :normal d ?

في CentOS، vi هو اسم مستعار لبرنامج مختلف، vim، ولكن في الإصدارات الأخيرة من Ubuntu، vi يعني vi فقط، وليس vim.الفرق الذي تراه هو الفرق بين برنامجين مختلفين، vi و vim.

إذا كنت تحب vim، فما عليك سوى تشغيل vim وليس vi.هذا يعمل في أوبونتو أيضًا

إعداد هذا في .vimrc الخاص بي كان مفيدًا بالنسبة لي ..

set term=builtin_ansi

لديّ WDMyCLoud مع Debian 7 بالداخل، وأنا أستخدم ما يلي:

cp /usr/share/vim/vimcurrent/debian.vim ~/.vimrc

في حالتي، يتم إنشاء ملف .vim على النحو التالي:

set nocompatible

fixdel

إذا أضفت set t_kb=^H, ، مفتاح مسافة للخلف موجود فقط كمفتاح حذف.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top