0

そこで、私sshは職場にあるこの古いボックスにアクセスしましたが、これまで Vi を使用しようとした人は誰もいなかったようです。viでファイルを開こうとすると、一度に1行のファイルしか表示されず、端末が(視覚的に)台無しになります。

フルターミナル

関連端末

sshそれが異なる場合、私はMacから入っています(ただしssh、仕事のために使用する他のサーバーは問題ありません)。

実行すると、次のようuname -aになりますLinux dev 2.6.32.27-grsec #5 SMP Thu Dec 30 01:24:01 PST 2010 i686 unknown unknown GNU/Linux。私は使用してbashいますが、何か他のものが機能する場合、私はすべての耳です.

これは他の誰かに起こったに違いありません。この問題を引き起こしているのは、どの設定が欠けているのですか?

ありがとう!

更新: コメントから調査した結果、これは vim ではなく vi のみの問題であることがわかりました。これは、vi (vim ではない) と現在の ssh/terminal/shells との非互換性にすぎないのでしょうか、それとも何か他のことが起こっているのでしょうか?

解決済み: これはキャリッジ リターン -> 古い vi が適切に処理しなかった改行の問題でした。キャリッジ リターンを新しい行に変換する引数を指定して実行sttyすると、vi が正しく動作するようになりました。vim にアップグレードできない人の助けになれば幸いです。

4

2 に答える 2

2

Elvis (または vi) は、おそらく端末のプロパティによって制御されています。私の推測では、あなたがstty onlcr. gnu画面でCR/LFを切り替える方法を参照してください。

于 2013-06-01T21:48:04.530 に答える
1

Elvisは古い vi クローン (2.2.0 は 2003 年にリリースされました) でありvi、UNIX 標準で必要なコマンドを提供するために一部のディストリビューションに同梱されていました。

私はそれを使用したことがなく、エルビスを直接経験した人でまだ使用している人はほとんどいないと思うので、ここで信頼できる回答を得られる可能性はかなり低い.

あなたができることの1つは、エルヴィスがvi互換にするための特定の引数で起動されているかどうかを読む$ man elvisか、おそらく確認することです。$ elvis --helpまたは、より実行しやすくする特定の引数で起動できるかどうかを確認してください。

いずれにせよ、vi も elvis (どちらも古いもので、完全に死んでいるか、積極的にメンテナンスされていない) は、Vim にキャンドルを保持することはできません。このマシンで本格的な作業を行うつもりなら、最新の Vim (最新の安定バージョンは 7.3) をインストールし、Elvis のことはすべて忘れることをお勧めします。

于 2013-06-02T06:23:46.663 に答える