3

Vim でディレクトリ (「foo」など) を編集すると、Vim は常に「foo/~」という名前の空のディレクトリを作成します。私の vimrc では、'nobackup'、'nowritebackup'、'backupdir=$TEMP/vim//' を指定しています。backupdir 設定を使用して、バックアップ ファイルを有効にすると、期待どおりに一時ディレクトリに移動します。

それでも、OS X と Windows の両方で、Vim は空の '~' ディレクトリを作成します。これは、もちろん、非常に危険な地雷をマシンの周りに散らかしたままにするようなものです (少なくとも OS X では、'rm -rf ~' が悪い日の始まり)。

特に空の「~」ディレクトリに関する情報は見つかりませんでしたが、バックアップ全般についてはたくさんあります。

空の「~」ディレクトリの作成を無効にするにはどうすればよいですか?

4

1 に答える 1

1

理解した。私のvimrcファイルには、次の設定がありました。

let netrw_home = "~"

私は元々、netrw が私のホームディレクトリを ".netrwhist" や ".netrwbook" で混乱させないようにするためにそうしたのだと思います。問題は、チルダが私のホーム ディレクトリに展開されず、代わりに netrw が現在のディレクトリに "~" という名前のリテラル ディレクトリを作成して、これらの状態ファイルを格納することです。

私が使用した修正は、netrw_home 変数を未定義のままにして、'runtimepath' パス リストの最初のディレクトリのデフォルト値を使用させることでした。ランタイム パスの最初のディレクトリとしてホーム ディレクトリ ($HOME) を追加する必要がありましたが、今のところ問題なく動作しているようです。

なんらかの理由で、Windows で netrw_home に対して ~ または $HOME を機能させることができませんでしたが、これはおそらく Vim の詳細についての私の誤解です。これ以上調査する時間はありません。現在、この問題は過去のものなので、ここで終了します。

上記の Wayne Werner に、彼が同じ振る舞いをしているかどうかを確認するための簡単な実験を行ってくれたことに感謝します。それが私を正しい方向に蹴ったものです。

于 2016-04-11T21:11:54.957 に答える