Vim は、現在の実行に対して : を使用して適用したコマンドのリストを保存します。しかし、vim を閉じて再起動すると、vim コマンドの履歴が失われます。.vimrc ファイルで試してみset history = 1000
ましたが、役に立ちませんでした。
Vim はローカル コマンド履歴をどこに保持していますか?
コマンド履歴を保持するコマンドは何ですか?
6 に答える
先日私を捕らえた問題で、あなたの問題かもしれないし、そうでないかもしれません:
一部のLinuxシステム(Ubuntuなど)では、VIMを初めて実行するときにスーパーユーザーとして実行すると、$ HOME / .viminfoファイルがroot所有者で作成され、ローカルユーザーには書き込み権限がありません。それに。これは、すべてが正しく構成されているときにVIMがコマンド履歴を保存しなかった理由を説明しています。
結論:* nixシステムで、.viminfoファイルを見つけて、読み取り/書き込み権限があることを確認します。
Vim が'viminfo'
ファイル (履歴を保存するファイル) をサポートしているかどうかを確認するには、:echo has('viminfo')
. 対応する設定を空にすることはできません: :set viminfo?
、:set history?
1 より大きい必要があります。
viminfo ファイルの書き込みに問題がある場合 (その場合、Vim は文句を言うはずですが)、次の方法で別の場所を渡してみてください。vim -i /tmp/viminfo
ファイルのパーミッションを確認する必要があり.viminfo
ます。chown
またはを使用して、ファイルの所有者を現在のユーザーに変更する必要がある場合がありますsudo chown
。
Baint氏が答えを出しました。
- ディレクトリに移動し
$HOME
ます。 ls -l .viminfo
許可を確認するために与えます。グループと所有者にも書き込み権限があるように権限を変更します。使用する:
sudo chown yourUserId $HOME/.viminfo
問題を修正する必要があります。
viminfoオプションを設定する必要があります。$MYVIMRCに設定します
更新オプションが最後に設定/変更された場所を見つけるには:
:verbose set viminfo?
http://vimdoc.sourceforge.net/htmldoc/starting.html#viminfo-fileを参照してください
Vimを終了して後で再開すると、通常、多くの情報が失われます。viminfoファイルを使用して、その情報を記憶することができます。これにより、中断したところから続行できます。
これはセクション|21.3|で紹介されています ユーザーマニュアルの。
viminfoファイルは以下を保存するために使用されます。
- コマンドライン履歴。
- 検索文字列の履歴。
- 入力行の履歴。
- 空でないレジスタの内容。
- いくつかのファイルのマーク。
- ファイル内の場所を指すファイルマーク。
- 最後の検索/置換パターン(「n」および「&」の場合)。
- バッファリスト。
- グローバル変数。
| + viminfo |の場合、viminfoファイルはサポートされません。この機能はコンパイル時に無効になっています。
ファイルを使用することもできSession
ます。