私はa"
vimでかなり頻繁にモーションを使用しています。たとえばca"
、コードの一部をリファクタリングするときに使用して、ハードコードされた引数を変数名に置き換えます。このアプローチの問題a"
は、末尾に空白がない場合、先頭の空白が含まれることです。
末尾の空白は含まれますが、空白がない場合は先頭の空白が含まれます。
したがって、次のように関数呼び出しを編集すると、
aFunction(arg1, "toBeReplaced", arg3) #original
aFunction(arg1, replacedArg, arg3) #refactored
私は再挿入スペースの前に手動に持っているreplacedArg
としてca"
、それが削除されます。
この空白を含まない同様のモーションはありますか、それとも代わりに使用できる何か他のca"
スペースを入力する手間を省くことができますか?
ノート:
cf"
文字列にエスケープされた引用符が含まれていない限り、私がやりたいことを行いますが、文字列の先頭にカーソルを置く必要があります。文字列内のどこからでも使えるものを使いたいのですが、入力するのが少し?"<Enter>cf"
面倒です。- それは、単一の
<Space>
キーストロークではなく、最初にスペースを含めることを忘れがちで、少なくとも4回の追加のキーストローク(bi<Space><Esc>
)がかかり、フォーカスを失うという事実についての詳細です。したがって、置換コマンドの長さは、指定された文字の間のテキストのみを削除してから挿入モードに入る限り、それほど重要ではありません。
?"<Enter>
して行の後方の引用符を検索する代わりに、を使用できますF"
。F
と同じですf
が、左側を検索します。以下の回答はあなたの質問にF
はよく見えますが、それだけでも便利なコマンドです。