58

viは、ダッシュ-とスペースをや などのコマンドの単語区切り文字として扱います。dwcw

アンダースコアを追加する方法_もありますか?

src_branchに変更するなど、アンダースコアを含む変数名の一部を変更したいことがよくありますdest_branch。文字を数えてs(のように)を使用することになりますが、 (のように)3sdest使用する方がはるかに簡単です。cwcwdest

4

6 に答える 6

43

アンダースコアも追加する方法はあり_ますか?

:set iskeyword-=_ 

キーワードの構成文字であるかどうかは、言語によって異なります。iskeyword のヘルプについては、 を使用して:help iskeywordください。

于 2009-06-23T18:13:53.600 に答える
25

vim を使用している場合は、iskeywordオプション ( :he iskeyword) を設定して変更できます。ct_それができない場合は、カウントの代わりにいつでも使用できます。

于 2008-10-22T11:31:15.743 に答える
6

このような場合のもう 1 つの良いオプションは、camelcasemotionプラグインを使用することです。

新しいモーション,b,e、およびが追加されました。これらは、 、、および と,w同様に機能しますが、CamelCase および snake_case の単語を認識する点が異なります。それを使用することができますbew

c,edest

カーソルが「src_branch」の最初の文字にある場合、これは「src_branch」を「dest_branch」に置き換えます。

于 2012-05-14T18:56:55.247 に答える
1

カウント部分を入力cf_dest_して保存できます。

編集:または提案どおり:ct_下線文字の直前までテキストを変更します。(私はfモーションをより使用しているので、より自然になりました)

または、再定義することもできます'iskeyword'(:help iskeyword詳細については)。

于 2008-10-22T11:27:37.183 に答える
0

私はこれを自分で見ていて、これを.vimrcに追加しました:

set iskeyword=!-~,^*,^45,^124,^34,192-255,^_

私の .vimrc には ^| に問題がありました。私のセットアップのデフォルトの iskeyword の一部だったので、それらの ascii 値に変更したところ、正常に動作しました。私の主な変更は、デフォルト設定の最後に「^_」を追加して、vim がアンダースコアを認識しないようにすることでした。単語の一部として。

于 2009-04-08T13:11:02.927 に答える
-1

次のアンダースコアまで削除するには、「df_」と入力します 次のアンダースコアに変更するには、「cf_」と入力します 注: 二重引用符は含めないでください。

于 2020-10-09T18:17:14.630 に答える