マクロの再生速度を改善しますか?


12

簡単なマクロを記録して次の行で再生しましたが、再生速度が非常に遅いようです(1秒あたり数行しか処理しません)。これは予想されたものであり、そのような速度を改善する方法はありますか?


3
試してみる:set lazyredraw:h lazyredraw
VanLaser

確かにlazyredraw、おそらく最良のソリューションです。マクロとサンプルファイルを提供して、最適化できるかどうかを確認することもできます。
statox

回答:


12

lazyredrawwith :set lazyredrawを設定すると、マクロの実行中または入力した以外のコマンドが実行されている間は画面が再描画されないため、マクロの実行速度が大幅に向上し:help 'lazyredraw'ます。詳細については、を参照してください。

autocmdやマッピングを無駄にする時間がないことを確認する別の方法。実行後もマクロが遅い場合は、vimrcファイルで低速または不要なマッピングを確認し、不要なプラグインを削除してください。私の場合、実行するautocmdと、挿入モードを終了するときにCapsLockをオフにする外部プログラムがありましたが、これは便利で通常は気づかれませんが、挿入マクロの速度が大幅に低下しました。

マクロが多くのマッピングがある挿入モードに入る場合、貼り付けモードを設定して挿入マッピングを一時的に無効にするキーを用意すると役立つ場合が:help 'paste'あり:help 'pastetoggle'ます。とを参照してください。これにより、挿入がより困難になる可能性があることに注意してください。

最後に、動きやモードの切り替えなどを最小限に抑えることで、マクロをできるだけ単純にします。

幸運を。

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