コンテキスト固有の再マップ

コンテキスト固有の再マップ

次のような便利な VIM マップがあります:

inoremap ( ()<Left>

ただし、次のように、挿入モードに入って変数の周りに関数呼び出しを追加することもあります。

Was: $sql = "SELECT * FROM " . $someTable;
 To: $sql = "SELECT * FROM " . mysql_real_escape_string($someTable);

マッピングにより、)の後に冗長な部分が作成されますmysql_real_escape_string(カーソルの後に文字が存在し、カーソルの後の文字が空白でない場合、)<left>が追加されないようにマッピングをリファクタリングする方法はありますか(?

ありがとう。

答え1

そうすると「関数領域」に入ることになります。そこから「プラグイン領域」に本格的に踏み込んで、次のような専用プラグインを使ってみてはいかがでしょうか。区切るまたは自動クローズあるいは同じアイデアのさまざまなバリエーションでしょうか?

関連情報