Hot exitは、Sublime Textエディターのキラー機能の1つです。開いているファイルの変更を気にすることなく、いつでもエディターを閉じることができます。問題なく閉じるだけです。もう一度STを起動すると、開いて編集したすべてのファイルは、閉じる前と同じ状態になります
vimで同じことをする方法はありますか?
Hot exitは、Sublime Textエディターのキラー機能の1つです。開いているファイルの変更を気にすることなく、いつでもエディターを閉じることができます。問題なく閉じるだけです。もう一度STを起動すると、開いて編集したすべてのファイルは、閉じる前と同じ状態になります
vimで同じことをする方法はありますか?
回答:
Vimはこれを行うことができますが、少し不格好でいくつかの設定が必要になる場合があります。
romainlは、途中であなたを取得しますsession。不足しているビットは、スワップファイル、、:preserveおよびの&フラグですcpoptions。
スワップファイルは、Vimまたはシステムがクラッシュした場合の回復を目的としています。保存されていない変更を復元できます(いくつかの制限があります:he swap-file。を参照)。ただし、Vimが正常に終了すると、バッファーに変更が保存されていなくても、使用していたすべてのスワップファイルが削除されます。
ここが:preserveand cpoptionsの&出番です:preserve。Vimはすべてのバッファをスワップファイルにすぐに書き込むように強制します(4秒後や200文字後の標準、またはオプションで設定されているものとは異なります)。こうすることで:set cpoptions+=&、Vimが正常に終了したときに保存されたスワップファイルを削除しないように指示し:preserveます。
残念ながら、Vimはスワップファイルからの回復時にスワップファイルを自動的にクリーンアップしないため、すぐに次のようなディレクトリができます。
.foo.txt.swn
.foo.txt.swo
.foo.txt.swp
foo.txt
古い*.swpファイルは手動で削除できますが、Vimは新しいスワップファイルを配置するファイルがある場合にのみ、自動的に回復を提案します。この:recoverコマンドにより、Vimは回復するスワップファイルを検索します。
自動コマンドを使用すると、保存(おそらくQuitPreイベントを使用)と回復(おそらくBufReadまたはを使用BufReadPost)を自動化できます。Recover.vimは、回復を管理するためのより使いやすい代替手段として機能するプラグインです。スワップファイルのクリーンアップも処理するようです。私はそれがファイルの.swoないディレクトリをどのように処理するのかわかりません.swp。:recoverその場合はまだ使用する必要があるかもしれません。
vim-obsessionは、セッションの処理をはるかに容易にすることを主張する別のプラグインです。
はい。これは「セッション」と呼ばれ、次の場所ですべてについて読むことができます。
:help session