私はvimを使用していくつかのソースコードを美化している最中です。{1}
個々の手順を実行するvimマクロをいくつか作成しました。末尾のwhilespaceを削除し{
、その後に空行を削除し、前{
に空行を削除します。
次に、すべての個々のマクロを順番に実行するマクロを作成します。ただし、最初の再帰マクロが終了すると(一致するものが見つからないため->一致するエラーが発生するため)、「ラッパー」マクロも終了します。
サブマクロがエラーを生成した後、vimマクロを継続させる方法はありますか?
{1}私が知っている自動reformattersに関する。現在の問題でそれらを使用することもあります。例のためにソースの再フォーマットについて言及しただけです。このソースの美人またはそれについての答えを投稿しないでください。問題は、コード自体の再フォーマットではなく、vimマクロに関するものです。
例:
- マクロ1-末尾の空白のトリミング-
qw/\s\+$d$@wq
- マクロ2-}の前の空行を削除する-
qe/\n\n *}dd@eq
- ラッパーマクロ-再タブ、マクロ1、マクロ2-
qr:retab@w@eq
ラッパーを実行すると、ラッパー@r
が再タブ化され、末尾の空白がなくなるまでマクロ1が実行され、その後(マクロ2が実行されずに)終了します。
明確化:
私が探しているのは、サブマクロが終了したときに呼び出しマクロが継続するようにサブマクロを呼び出す方法ですか?