VIMで、入力したキーを確認できますか?


11

時々私はVIMを使用しますが、何かが起こりますが、それが何であったか、それが原因で何をタイプしたのかわかりません。入力された最近のキーの一部をリストし、さらに良いことに、それらがトリガーしたアクションを見つける方法はありますか?

回答:


7

Vim-W悪用する可能性のあるオプションがありますが、Vim実行中は機能しません。

-w {scriptout}

入力したすべての文字は、Vimを終了するまで、ファイル{scriptout}に記録されます。これは、「vim -s」または「:source!」で使用するスクリプトファイルを作成する場合に役立ちます。{scriptout}ファイルが存在する場合、文字が追加されます。

-W {scriptout}

-wと似ていますが、既存のファイルは上書きされます。

Vimエイリアスなどで呼び出す

vim -W /tmp/vimlog-$(id -un)

あなたが点検できるようになるless /tmp/vimlog-$(id -un)か、cat -v /tmp/vimlog-$(id -un)何を文字通りあなたが終了した後に型指定されましたVim


これは面白いアイデアです。これを試して、何かを学ぶかどうかを確認します。
オーウェン

3

最初に、vimがすべての履歴行を記憶していることを確認します。これにより、履歴が1000コマンドに設定され、検索されます。

:set history=1000

探しているものの先頭を 入力すると、キーを使用して履歴をスクロールできます-これはコマンドと検索に適用されます。

たとえば、中国キューバチャドキプロスの順に検索した場合:

入力/cして数回押すことができます。/cyprusその後/cuba、表示されます/chinacで/Chad始まっていないためスキップされます)。

その他のコマンド:

  • :history 履歴全体をリストします。
  • :his コマンド履歴をリストします。
  • :his / 検索履歴をリストします。

2
私は、これは(「:」、例:Eを::wはQで始まるコマンドである)のみEXモードコマンドにノーマルモードコマンドに適用されるとは思わない
kmkkmk

1
exコマンドの履歴を表示するには、q:通常モードで入力することもできます。検索履歴についても同じことがq/
ヤブ

2

これを.vimrcに追加できます:

set showcmd

入力中に作成しているコマンドがステータスバーに表示されます。これはあなたに歴史を与えませんが、これは私が知っている最も近い解決策です。

ただしex、コマンドについて話している場合は、Garethの子が最適です

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.