vimで最初の大文字の前後にジャンプするには?vimでCamelCaseの単語を使って移動する
また、(たとえば)camelCaseから最初の単語を削除または選択したい場合は、私がm-characterであれば、私はFcdtCを行うことができますが、それを行うもっと一般的な方法がありますか?
vimで最初の大文字の前後にジャンプするには?vimでCamelCaseの単語を使って移動する
また、(たとえば)camelCaseから最初の単語を削除または選択したい場合は、私がm-characterであれば、私はFcdtCを行うことができますが、それを行うもっと一般的な方法がありますか?
何も内蔵されていないと思います。
。 @ibとして。正規表現の動きを使うことができますが、特に入力するのは簡単ではありません。しかし、必要なモーションを追加するpluginがあります。これには、分離された識別子のアンダースコアも含まれます。
** IBの貢献を使用して回答、更新:あなたがしたい場合は、それをマッピングすることができます最初の大文字 前と後
"select from first char up to First uppercase letter (after first char)
map ,b bv/[A-Z]<cr>h
**オリジナル回答
ジャンプについてを。
"Before next uppercase letter
map ,A /[A-Z]<cr>l
"After next uppercase letter
map ,B /[A-Z]<cr>h
:D。お役に立てれば。私はあなたの2番目の質問を今読んでいます。
[OK]を読んでください。 D
次の検索コマンドを使用します。今、あなたはこの
bv,A
を行うことができます。次の大文字 character-
/\u/s+
または
/\u\zs
の右にカーソルを1つの文字を移動するための次の大文字 character-
/\u
にジャンプするために私は思うIそれを行うにはおそらく "ヴィムの方法"を考えた:
Vimは私たち自身の演算子を定義できます!
" movement mapping {
" Delete yank or change until next UpperCase
" o waits for you to enter a movement command : http://learnvimscriptthehardway.stevelosh.com/chapters/15.html
" M is for Maj (as in french)
" :<c-u>execute -> special way to run multiple normal commande in a map : learnvimscriptthehardway.stevelosh.com/chapters/16.html
onoremap M :<c-u>execute "normal! /[A-Z]\r:nohlsearch\r"<cr>
そのように私のカーソルが(DailyMesureから)a
上にある場合
DailyAverage.new(FooBarBaz)
を与え、私はそれが待機しているすべてのコマンドで動作Aに削除し
Average.new(FooBarBaz)
を与えるdM
を押してください動きのために(c
y
........)
このスニペットは、ハイライトが悪いために改善する必要があります。
プラグインはそれに付随する他のすべてのもののため理想的ですが、正規表現モーションタイピングに関しては、一度マッピングに隠れてしまえば、何も失われず、少しの知識しか学ばれません。実際には、キックのために、プラグインを開けて、自分のコマンドをどのようにマップするかを見てください:) – kikuchiyo