回答:
一般に、d <motion>は、現在の位置から<motion>の後の終了位置まで削除します。この意味は:
これを読んで、「d」コマンドと組み合わせることができるすべてのことを学んでください。
d<leftArrow>
do」と入力するのではdh
なく、h
左に移動するためのキーです
私はこのシナリオに何度も出会いました。行10のすべてのスペースを削除して、コンマの後に行9と結合するようにします。
これは基本的にVIMの単純なライン結合です。
kJ
トリックを行います(以下をご覧ください)
k
=上、J
=下の行を現在の行に結合し、間にスペースを1つ入れます。kgJ
スペースなしで参加することもできます。gJ
=間にスペースを入れずに下の行を結合します。チートシート経由:vim.rtorr.com
ポイント3に答えるdiw
とdaw
、優れています。
db
の文字の前の文字を削除しますが、最後の文字は残します。
i
てa
いるかを説明できますか?先頭d
が「削除」であることはわかっていw
ます。末尾は「単語」であると思います。
:help text-objects
ます。最初の段落は非常に簡潔であり、非常によく説明していると思います。
挿入モードの場合:
さもないと:
db
(カーソルが単語の後にある場合)または bdw
d0
(またはd^
最初の非空白文字まで削除したい場合)dE
またはdtSpace、最初のスペースd/\sEnterまで削除するか、次の空白文字まで削除します。編集する
質問が変更され、3が左側の最初の空白文字に削除されるようになっているので、私の答えは次のように変更されます。
dB
またはdShiftTSpace、最初のスペースd?\sEnterまで削除するか、前の空白文字まで削除します。見る:
:help motion.txt
:help WORD
bdw
。の残りのキャラクター(元々はカーソルの下にあったキャラクター)がdb
私を困らせ続けました。
私は答えがどれも完全ではないと感じています:
一般に、削除操作は通常、を使用して開始しd<motion>
、まれにを使用して開始しx
ます。
注:
N
指定しない場合、あたかも動作しますN=1
(単一の文字を削除します)
離散文字:
<N>x
-右側のN文字を削除
d<N><left-arrow>
-左側のN文字を削除
d<N><right-arrow>
-右側のN文字を削除
単語の境界:
注:1番目の前/後の単語はカーソルの下の単語です
d<N>b
-直前のN番目の単語の先頭から現在の位置まで削除
d<N>e
-現在の位置から次のN番目の単語の終わりまで削除
d<N>w
-同じですd<N>e
が、末尾の空白を含みます
diw
-カーソルの下の単語全体を削除
daw
-同じですdiw
が、末尾の空白を含みます
ライン境界:
d0
-行頭から現在位置まで削除
d^
-最初の空白以外の文字から現在の位置まで削除
d$
-現在の位置から行末まで削除
/ <CR>x
(前方にスペースを検索し、Enterキーを押してそこに移動し、xで削除します)
それを行うためのより魔法の方法があるかもしれませんが、私はそれを知りません。
db
覚えにくい場合のもう1つの便利なショートカット:5. dw or d<ctrl+rightarrow>
and6. db or d<ctrl+leftarrow>