`vi`からカーソルから行末までコンテンツを削除する

`vi`からカーソルから行末までコンテンツを削除する

私が読んだすべての文書で、おそらくこの内容を100万回以上見たことがあることを知っていますが、カーソルから行末viまで削除するコマンドを見つけることができないようです。

答え1

D(大文字D)

このコマンドは、dw現在のカーソル位置から次の単語文字の先頭まで削除します。このコマンドd$(注:「S」ではなくドル記号)は、現在のカーソル位置から現在の行末まで削除します。 (大文字D)Dは(小文字D +ドル記号)の同義語です。d$

答え2

他の人が述べたように、d$またはDshift- d)を使用してカーソル位置から行末まで削除できます。

私が一般的にもっと役に立つと思うのは、カーソル位置から行末まで削除されるので、c$またはCshift- )です。cそして[挿入]モードに入ります。

答え3

viの利点の1つは論理コマンド構造です。d移動コマンドが続きます。Deletesは運動の目標に達します。$行末に移動します(ニーモニック:正規表現と同じ)。したがって、d$行末まで削除してください。同様にe、次に進みます。金利現在の単語を見つけて、w次の単語の先頭に移動します。勝つorder;de現在の単語の終わりを削除し、dwさらに次のスペースを削除します。

答え4

挿入モードのショートカットが役に立つと思いました。

挿入モードでは、行の最後まで変更を開始する方が良い場合があります。 (これをあなたの行に入れてください~/.vimrc):

inoremap <C-l> <C-o>C

したがって、すでに述べたように、通常モードには+があり、挿入モードには+がDあります。ご覧のとおり、行末まで変更が始まります。CtrllC

<C-o> ......... insert normal keystroke in insert mode

私はそれを選びましたCtrl。それはあなたの指のすぐ下にあるlからです。l- 二重文字を挿入するために使用されましたCtrlk

私はいくつかの無料のキーバインディングを探していました:h i_Ctrl

関連情報