Vim замінити Vi


29

Хлопці, хтось знає, як змінити редактор консолі Linux з vi на vim кожного разу, коли ми виконуємо vi? Я використовую Ubuntu та Fedora Core


2
Просто цікаво: що Linux дистрибуцію. чи це? Я не можу згадати, як коли-небудь бачив стару шкільну Vi як за замовчуванням.
Брайан Расмуссен

2
Насправді це вкрай малоймовірно, що це vi, оскільки це не був би FOSS-код.

З пам'яті випливає, що деякі дистрибутиви (я думаю, це був RHEL), вони налаштували команду viна класичний режим у VIM.
Seh Hui Leong

4
Навіщо виконувати vi, якщо ви віддаєте перевагу vim? експортувати EDITOR = vim?
Tadeusz A. Kadłubowski

Арки також мають клон "vi" за замовчуванням замість vim.
WhyNotHugo

Відповіді:


34

Спочатку переконайтеся, що у вас встановлені відповідні пакети Vim. За замовчуванням у багатьох системах встановлюється мінімальний пакет Vim, який за функціональністю ближче до Vi.

У системах, заснованих на Red Hat (RHEL, CentOS, Fedora), вам потрібен пакунок із покращеною vim, наприклад, із встановленої мною системи CentOS:

vim-common-7.0.109-4.el5_2.4z
vim-enhanced-7.0.109-4.el5_2.4z
vim-minimal-7.0.109-4.el5_2.4z

"загальний" містить загальні бібліотеки, які використовуються всіма пакетами Vim. "мінімальний" - це звичайні виконувані файли редактора vi, встановлені за замовчуванням.

У системах на базі Debian (наприклад, Ubuntu) вам потрібен 'vim'. Наприклад:

ii  vim                  2:7.2.079-1ubuntu5  Vi IMproved - enhanced vi editor
ii  vim-common           2:7.2.079-1ubuntu5  Vi IMproved - Common files
ii  vim-runtime          2:7.2.079-1ubuntu5  Vi IMproved - Runtime files
ii  vim-tiny             2:7.2.079-1ubuntu5  Vi IMproved - enhanced vi editor - compact version

Вони повинні бути встановлені за замовчуванням. У Debian / Ubuntu ви можете оновити системний редактор за замовчуванням для всіх користувачів:

sudo update-alternatives --config vi

Виберіть потрібну версію в меню вибору. Сценарії встановлення для пакету vim повинні були це вже оновити. Використовуйте --config editorдля зміни редактора за замовчуванням для всіх користувачів системи (наприклад, оригінал за замовчуванням Ubuntu 9.04 - нано).

Нарешті, на основі кожного користувача для будь-якого розповсюдження, встановіть псевдонім у профілі користувача. Наприклад, якщо оболонка є bash, відредагуйте ~ username / .bashrc:

alias vi="vim"

Також ви можете перевірити системний vimrc (/ etc / vimrc, як правило), щоб побачити, чи включений режим сумісності.

set cp
set compatibility

Скаже Віму, що він поводиться більше, як старенька школа Vi, незалежно від того, як ти впорався з використанням Vim на вище. Перейдіть на "nocp" або "несумісність", щоб зробити Vim кориснішим.


2
На останніх версіях ubuntu за замовчуванням встановлено лише vim-tiny. Встановіть vim, щоб отримати повну версію.
Хаміш Даунер

28

У вашому .bashrc:

alias vi=vim

2
Це не вплине на те, що не використовує bash, наприклад, якщо натиснути "v" всередині менше (1), воно все одно запустить "справжнє" vi.
Кевін Панько

2
Змінні середовища EDITORі VISUALматимуть перевагу при натисканні vна viкоманду за замовчуванням . Так, у вашому .bashrcекспорті EDITORабо VISUALз vimйого значенням; наприклад, export EDITOR=vimі export VISUAL=vimу вашому.bashrc
Nitrodist

10

Якщо це система Debian або Ubuntu, і ви хочете зробити цю систему змін широкою, вам слід скористатися update-alternatives(вкажіть --config editorпараметри, і ви повинні бути золотими)


9

Якщо вам потрібні зміни лише для вашого ідентифікатора та в межах термінального сеансу: alias vi to vim, як запропонував AI.

Якщо ви хочете змінити систему на вашій машині, перейдіть на Soft-посилання до vim в / usr / local / bin :

sudo ln -s `which vim` /usr/local/bin/vi

Примітка. Програми можуть ігнорувати будь-які псевдоніми vi за допомогою запуску command viабо \viзамість просто vi.


3

Деякі списки використовують режим vim: s old school, коли він поводиться як vi.

перевірте, чи містить ваш .vimrc

set nocompatible

Мене це обдурило кілька разів….


1

У системах Debian при виконанні за замовчуванням vim-tiny як 'vi' використовується інший RC-файл - /etc/vim/vimrc.tiny.

Щоб "vi" діяв більше як "vim", відредагуйте /etc/vim/vimrc.tiny та змініть рядок:

set compatible

читати:

set nocompatible

0

Я зробив це , як що .profileна з допомогою :

if [ -f "/usr/bin/vim" ];
 alias vi="vim"
else
 alias vim="vi"
fi

export EDITOR=vim

Отже, завжди є це правильно чи як .


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.