私はコマンド出力が1行を超えると表示されるこのメッセージに精通しています。
しかし、私が作業しているシステムの1つでは、:w
メッセージを収めることができる十分な水平スペースにもかかわらず、書き込みを使用するたびにメッセージが表示されます。たとえば、
これはtmuxセッションでvimを使用したときにのみ発生するようですが、なぜこれが起こるのか理解していません。 vimとtmuxの他のすべての側面は正常に動作しているようです。 tmuxとは何の関係もないことがわかりました。
修正する:vimrcで次の行を見つけました。
set backupdir=/tmp
この行だけを含むvimrcを使用すると、ファイルを作成するときにメッセージをトリガーするのに十分です。面白いのは、私が文章を書くときだけ、そのようなことが起こるということです。既存のファイルに。
なぜこれが起こるのですか?このコンピュータでのみ発生しますか?
答え1
正確な環境を見ることなく、/ tmpが犯罪者のコンピュータに存在しないこと(またはいっぱいまたはいくつかの権限の問題がある)だけを推測できます。既存のファイルに書き込むたびに、vimはバックアップを保存できないため、文句を言ってメッセージを表示します。
次のいずれかの方法を試して、これらのケースであることを確認できます。
- メッセージを表示せずにファイルを保存するために使用できることを確認してください
:w!
。 以下を追加して、プロンプトの前にエラーメッセージが表示されることを確認してください
.vimrc
。set cmdheight=N
環境に合ったN = 2、3、4を試してください。
答え2
権限のあるファイルを開いてみてくださいsudo
。たとえば、ファイル名がある場合、MyFile
問題sudo vim MyFile
は発生しません。ファイルが読み取り専用の場合に発生します。次の方法を使用して問題を永久に処理できます。
sudo chmod a+w MyFile
今sudo
。vim MyFile