viは、ダッシュ-
とスペースをや
などのコマンドの単語区切り文字として扱います。dw
cw
アンダースコアを追加する方法_
もありますか?
src_branch
に変更するなど、アンダースコアを含む変数名の一部を変更したいことがよくありますdest_branch
。文字を数えてs
(のように)を使用することになりますが、 (のように)3sdest
使用する方がはるかに簡単です。cw
cwdest
アンダースコアも追加する方法はあり
_
ますか?
:set iskeyword-=_
キーワードの構成文字であるかどうかは、言語によって異なります。iskeyword のヘルプについては、 を使用して:help iskeyword
ください。
vim を使用している場合は、iskeyword
オプション ( :he iskeyword
) を設定して変更できます。ct_
それができない場合は、カウントの代わりにいつでも使用できます。
このような場合のもう 1 つの良いオプションは、camelcasemotionプラグインを使用することです。
新しいモーション,b
、,e
、およびが追加されました。これらは、 、、および と,w
同様に機能しますが、CamelCase および snake_case の単語を認識する点が異なります。それを使用することができますb
e
w
c,edest
カーソルが「src_branch」の最初の文字にある場合、これは「src_branch」を「dest_branch」に置き換えます。
カウント部分を入力cf_dest_
して保存できます。
編集:または提案どおり:ct_
下線文字の直前までテキストを変更します。(私はf
モーションをより使用しているので、より自然になりました)
または、再定義することもできます'iskeyword'
(:help iskeyword
詳細については)。
私はこれを自分で見ていて、これを.vimrcに追加しました:
set iskeyword=!-~,^*,^45,^124,^34,192-255,^_
私の .vimrc には ^| に問題がありました。私のセットアップのデフォルトの iskeyword の一部だったので、それらの ascii 値に変更したところ、正常に動作しました。私の主な変更は、デフォルト設定の最後に「^_」を追加して、vim がアンダースコアを認識しないようにすることでした。単語の一部として。
次のアンダースコアまで削除するには、「df_」と入力します 次のアンダースコアに変更するには、「cf_」と入力します 注: 二重引用符は含めないでください。