FedoraでViをVimにグローバルに置き換えます


8

Debianベースのシステムでは、alternativesシステムはvivim実行可能ファイルの両方を処理します。あればvimインストールし、実行されてvi、あなたはまた、取得vim、私は絶対に古典憎むので、私は、非常に素晴らしい見つけるいます、vi

Fedora 17「Beefy Miracle」では、代替システムは明らかに2つのうちのいずれも処理しません。しかし/etc/profile.d/vim.shvi実行するためにシェルエイリアスを追加するプロファイルファイルがありますvim。何らかの理由で、rootを含むシステムユーザーに対してはそれを行いません。

ただし、すべてのユーザーのエイリアスを手動で設定した場合でも、電話sudo viをかけるとのvi代わりにクラシックを開始しvimます。これはおそらく、sudoがシェルを開始しないか、プロファイルファイルが対話型のシェルセッションでのみ実行されるためです。

私が今探しているのは、classicをvi完全にアンインストールして、システムアップデートでも存続するシンボリックリンクを作成する方法です。Fedora 17ではviなくクラシックを削除するにはどうすればよいvimですか?それとももっと良い方法がありますか?

更新:パッケージで提供されyum provides viていることviがわかりましたvim-minimal。ただし、パッケージsudoが自動的に削除されるため、単純に削除することはできません。削除してsudo後で再インストールしようvim-minimalとしても、依存関係として再インストールされます。

更新:要求に応じて、出力rpm -qf /usr/bin/vi

vim-minimal-7.3.444-1.fc17.x86_64

そしてls -l /usr/bin/vi

-rwxr-xr-x. 1 root root 782248 13. Feb 2012  /usr/bin/vi

rm /usr/bin/vi; ln -s /usr/bin/vim /usr/bin/vi。個人的にはより良い方法を見つけるので答えではありません(または、vimが必要な場合はvimと入力します)。
ヨルダン

@jordanm私は、シンボリックリンクを更新後も存続させるように依頼したとき、まさにこれを意味しました。vim-minimalパッケージが更新されたときにリンクが上書きされないようにするにはどうすればよいですか?
AEF

である/usr/bin/vi(何に)シンボリックリンクやFedoraの上の通常のファイルは?通常のファイルの場合、どのパッケージからですか?
Gilles「SO-悪をやめる」

@ギレス私はあなたの質問を理解していません。
AEF

ls -l /usr/bin/viおよびの出力をポストしますrpm -qf /usr/bin/vi
Gilles「SO-悪をやめなさい」

回答:


6

あなたviはVimですが、として呼び出されるviため、履歴互換モードに入ります。推奨処置は、あなたがVimを実行していないVI、実行したい場合ということでvimはありませんvi。ただし、viシステムのすべてのアカウントで常にVimを実行する場合は、次のようにオーバーライドします/usr/local/bin

cat >/usr/local/bin/vi <<\EOF
#!/bin/sh
exec /usr/bin/vim "$@"
EOF
chmod 755 /usr/local/bin/vi

それは実際には非常に素晴らしいアイデアです。
AEF

2
とシンボリックリンクを作成するだけでも機能しsudo ln -s /usr/bin/vim /usr/local/bin/viます。ただし/usr/local/bin、のDefaults secure_path="…"設定の左端に追加する必要がありますvisudo。そうしないと、シンボリックリンクが見つかりません。
19:33

ここの構文にはいくつかのタイプミスがあると思います。もしかしてcat >/usr/local/bin/vi(ありませんかcat >/usr/local/bin)?もしかしてchmod 755 /usr/local/bin/vi(ありませんか.../vim)?
DW

ルートのデフォルトのPATHでそれを取得するには、にシンボリックリンクを作成し/usr/local/sbin/viます。
hackel

5

# echo 'alias vi="vim"' >> /etc/bashrc' または # alternatives --install /usr/bin/vi vi /usr/bin/vim 900


そして、vim-minimalパッケージが更新されるとそれは消去されませんか?
AEF

エイリアスを作成すること.bashrcは良い実践です...私にとって@lluaは良い答えを出しました
maniat1k

0

FYI最近のfedora(少なくとも18以降)は、そのエイリアスを/etc/profile.d一度vim-enchancedにインストールします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.