前の行の最後まで削除する方法は?


8

例(^カーソル位置です):

前:

a bc def ghi
j k l mn o p q rs
      ^

後:

a bc def ghimn o p q rs
            ^

または少なくとも:

a bc def ghimn o p q rs
           ^

を使用できることはわかっていますがd0i<BS>、これを行うためのより高速な方法が必要で、コマンドモードを維持したいと思っています。私はvimの初心者であり、おそらく答えはの修正だと思いますkA

どうもありがとうございました! :-)


1
これが頻繁に行うことである場合は、独自のマッピングを作成することを検討してください<Leader>dk
カイルストランド

回答:


9

やってみる d0kJx

行の先頭まで後方に削除し、上に移動して、2つの行を結合し、結合された2つの行の間のスペースを削除します。

これで通常モードを終了する必要はありません。


2
これがこれまでの唯一の回答であり、(1)検索履歴を変更したり、現在の強調表示を変更したりせず、(2)を削除しませんm
カイルストランド

12

さて、「後方検索」モーションとdelete演算子を組み合わせることができます:

d?$<Enter>

.vimrcにはこれがあります:set hlsearchそしてd?$<Enter>私が尋ねたことを行いますが、ファイル内のすべての行末を強調表示するので、:nohその後に入力して強調表示を削除する必要があります。これを回避する方法はありますか?ありがとうございました!:-)
silviubogan

1
おそらく、おそらく、私が<C-l>通常モードで単に「オーバーロード」nnoremap <silent><C-l> :nohlsearch<cr>:set nolist<cr>:redraw!<cr>することです。それから、必要なときに(つまり、上記のような場合に)使用します。
VanLaser 2015年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.