1

undodirvimセッションを閉じた後でも行った変更を追跡するために、を有効にしました。

ファイルを編集し、変更を加えて保存してから、そのセッションの元のファイルに戻したい場合があります。(これは考えられるユースケースの1つである可能性があります)

無効にした場合は、メッセージが表示されるまでundodir叩き続けることができました。u

undodirそのため、デフォルトで元に戻る/やり直しを無効にしたいので、必要に応じて有効にするコマンドが必要です。

ファイルへのすべての変更は、常にいずれかの状態で追跡する必要があります。

これは可能ですか?

4

1 に答える 1

2

私がドキュメントを理解している限り、がに設定されてundodirいない限り、設定だけでは何もしません。undofiletrue

したがって、特定のファイルに対してアクティブ化する必要があると思いundofileます。

最初に頭に浮かぶのは、特定のファイルに設定するためのモードラインです。しかし残念ながら、これはうまくいきません。undofiletrue

ただし、この問題は vim 開発者のメーリング リストに存在し、1 月に修正プログラムが提供されました: http://comments.gmane.org/gmane.editors.vim.devel/32896。この修正は現在のソースに存在する可能性があります。試してみたい場合は、最新のvimソースを入手してビルドし、設定にモードラインを使用できるかどうかを確認してくださいudf

その修正を含む公式バージョンが出るまでは、 を使用して問題を回避できますundofile.vim。その説明の抜粋:

特定のファイルに対してのみ 'undofile' が必要な場合は、'undofile' を modeline で設定できないか、またはバッファーがロードされると (既存の undo ファイルがロードされないため) 設定できないことに気付くでしょう。Bram は、バッファがロードされる前に「undofile」を設定する BufReadPre autocmd を使用することを提案しています。このスクリプトが手順を実行します。

于 2012-08-10T08:33:42.173 に答える