web-dev-qa-db-ja.com

MacVim / Vimは、すべてのバッファー(Sublime Textなど)のコンテンツを保持します。スワップを保持しますか?

TL; DR:Vimはスワップファイルを保存し、毎回ロード時に同じスワップファイルとバッファのセットをロードできますか?

私はMac(OS:Maverick)を使用しており、多くのアプリケーションがデータをある種のローカル/邪魔にならない場所ストレージに保持して復元しますマシンの再起動/アプリケーションのクラッシュの間。

'storage'の例として、 Sublime Text を例にとると、新しいタブを開くとすぐにコンテンツが保存されます。タブを永続ストレージ用のファイルとして明示的に保存していなくても、タブのしたがって、STを閉じて再度開くと(またはST /マシンがクラッシュすると)、閉じる前に持っていたすべてのタブとコンテンツが復元されます。

この種の絶対確実なコンテンツ保持(TM)は、多くのMacアプリケーションで見られます。 (iMovie、QuickTime Player、TextEditなど)。これは、明示的に何も保存しなくても、ユーザーが中断したところから続行できるようにするというMacの設計哲学に沿ったものです。

その事実を考えると:
1。 Vimはスワップファイルを保持し、200ストローク/ 4秒の非アクティブごとにrecoverに更新します
2。 Vimにはファイル/スワップを開くことができるスタートアップオプションがあります

vim/MacVimにこれがないかどうか疑問に思うのに十分な基盤がここにありますコンテンツの保持( TM)機能はすでに数百の構成オプションの中にありますか?

p.s。私は現在vim-sessionsを使用していますが、純粋に「ファイルのグループ化のようなプロジェクト」のためですが、保存されていないバッファの内容は保持されません

p.p.s。。vimrcの:preserveオプションとcpoptions+=&で遊んでいます。影響はないようです。スワップファイルはMacVimを閉じても削除され、MacVimを再起動しても何も開かれません。

2
snowbound

あなたが言及したセッション機能はあなたが望むものですが、それをバッファを保存し、ファイルと位置を開くようにするオプションを渡す必要があります。これには:mksessionを使用できます。

ただし、:mksessionは引き続き手動で制御されます。ホットキーにバインドしてすばやく保存/復元することはできますが、コマンドの実行を忘れると、セッションが失われます。

このため、 Session.vim vimプラグインをお勧めします。これは(.vimrcのいくつかの追加オプションとともに)自動セッション保存と復元を行います。オプションの完全なリストはページにあります。具体的には、 このページ のように、buffersオプションをsessionoptionsに渡すように指示します。

2
Aaron D