:command
挿入モードを終了するときにvimで実行したいと思います。特に、:GoFmt
挿入モードを終了するときにコードをフォーマットするために実行したいと思います。現在はファイルを保存するときに実行されますが、時には構文チェック(ファイルを保存するときに発生)を実行する前にフォーマットしたい場合があります。
現在の解決策は<esc>
にマッピングすることですが、<esc>:GoFmt<enter>
矢印キーはエスケープシーケンスで始まるため、矢印キーの動作が中断されます。より良い解決策はありますか?
autocmd FileType go imap <esc> <esc>:GoFmt<enter>
答え1
まず、私はワイルドカードの提案を強く支持します。ビームホームページ...:)
しかし、第二に、より良い解決策が必要です。InsertLeave
自動コマンドを使用できます。これを行う:
autocommand InsertLeave go GoFmt
利点は、マッピングがまったく必要なく、GoFmt
すでにexコマンドなので、コマンドを実行する方が簡単なので:...<cr>
。