Vim untuk menggantikan Vi

29

Guys, ada yang tahu cara mengubah editor konsol linux dari vi ke vim setiap kali kita menjalankan vi? Saya menggunakan Ubuntu dan Fedora Core

Funky81
sumber
2
Hanya ingin tahu: Apa dist Linux. Apakah itu? Saya tidak ingat pernah melihat sekolah tua Vi sebagai default.
Brian Rasmussen
2
Bahkan, sangat tidak mungkin menjadi vi, karena itu bukan kode FOSS.
Dari memori adalah bahwa beberapa distro (saya pikir itu RHEL), mereka mengkonfigurasi perintah vike mode klasik di VIM.
Seh Hui Leong
4
Mengapa menjalankan vi jika Anda lebih suka vim? ekspor EDITOR = vim?
Tadeusz A. Kadłubowski
Arch juga memiliki klon "vi" secara default, bukan vim.
WhyNotHugo

Jawaban:

34

Pertama, pastikan Anda memiliki paket Vim yang tepat diinstal. Default pada banyak sistem adalah menginstal paket Vim minimal yang lebih dekat dengan fungsionalitas Vi.

Pada sistem berbasis Red Hat (RHEL, CentOS, Fedora), Anda memerlukan paket yang ditingkatkan-vim, misalnya dari sistem CentOS yang telah saya instal:

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

'common' berisi perpustakaan umum yang digunakan oleh semua paket Vim. 'minimal' adalah executable editor vi polos yang diinstal secara default.

Pada sistem berbasis Debian (seperti Ubuntu), Anda memerlukan 'vim'. Sebagai contoh:

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

Ini harus diinstal secara default. Pada Debian / Ubuntu, Anda dapat memperbarui editor sistem default untuk semua pengguna:

sudo update-alternatives --config vi

Pilih versi yang Anda inginkan dari menu pilihan. Posting skrip instalasi untuk paket vim seharusnya sudah memperbarui ini. Gunakan --config editoruntuk mengubah editor default untuk semua pengguna pada sistem (Ubuntu 9.04 default aslinya adalah nano, misalnya).

Terakhir, berdasarkan per pengguna untuk distribusi apa pun, siapkan alias di profil pengguna. Sebagai contoh jika shellnya adalah bash, edit ~ username / .bashrc:

alias vi="vim"

Anda juga dapat memeriksa vimrc sistem (/ etc / vimrc, biasanya) untuk melihat apakah mode kompatibilitas diaktifkan.

set cp
set compatibility

Akan memberitahu Vim untuk berperilaku lebih seperti Vi sekolah tua, tidak peduli bagaimana Anda telah menggunakan Vim per di atas. Ubah ke 'nocp' atau 'nocompatibility' untuk membuat Vim lebih berguna.

jtimberman
sumber
2
Pada versi terbaru ubuntu, hanya vim-tiny yang terinstal secara default. Instal vim untuk mendapatkan versi lengkap.
Hamish Downer
28

Di .bashrc Anda:

alias vi=vim
Al.
sumber
2
Ini tidak akan memengaruhi apa pun yang tidak menggunakan bash, mis. Ketika Anda menekan "v" di dalam less (1) itu masih akan menjalankan "real" vi.
Kevin Panko
2
Lingkungan variabel EDITORdan VISUALakan diutamakan ketika Anda menekan perintah vdefault vi. Jadi, dalam .bashrcekspor Anda EDITORatau VISUALdengan vimnilainya; misalnya, export EDITOR=vimdan export VISUAL=vimdalam Anda.bashrc
Nitrodist
10

Jika ini adalah sistem Debian atau Ubuntu, dan Anda ingin menjadikan sistem perubahan ini luas, Anda harus menggunakan update-alternatives(tentukan dengan --config editoropsi, dan Anda harus emas)

mwalling
sumber
9

Jika Anda memerlukan perubahan hanya untuk id Anda, dan dalam sesi terminal: alias vi ke vim seperti yang disarankan oleh AI.

Jika Anda menginginkan perubahan di seluruh sistem pada mesin Anda, tautan lunak ke vim di / usr / local / bin :

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

Catatan: Program dapat mengabaikan alias di vi dengan menjalankan command viatau \vialih-alih hanya vi.

Nagul
sumber
3

Beberapa dists menggunakan mode old school vim: s di mana ia berperilaku seperti vi.

periksa apakah .vimrc Anda berisi

set nocompatible

Saya telah dibodohi oleh ini beberapa kali ....

Johan
sumber
1

Pada sistem Debian, ketika Anda menjalankan vim-tiny sebagai 'vi', file RC yang berbeda digunakan - /etc/vim/vimrc.tiny.

Untuk membuat 'vi' bertindak lebih seperti 'vim', edit /etc/vim/vimrc.tiny dan ubah baris:

set compatible

untuk membaca:

set nocompatible

sumber
0

Aku melakukannya seperti itu di .profileatas menggunakan :

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

export EDITOR=vim

Jadi, selalu apakah ada yang benar atau sebagai .


sumber
0

Jika Anda menggunakan ikan , masukkan baris di bawah ini di ~/.config/fish/config.fish:

alias vi="vim"
Zhang Buzz
sumber