web-dev-qa-db-ja.com

行の先頭からカーソルまで削除するvi

行の先頭からカーソルまでの文字を削除するには、vimをどのように使用できますか。たとえば、カーソルが「w」にあるときに「hello world」という文字列があります。どうすれば「h」から「w」まで削除できますか。

53
blue123

d00は行の始まりを示します。

93
Lars Kotthoff

私は以下がうまくいくと信じています(d^):

d^

これは、その前に空白がある場合でも、hのみを削除することを前提としています。空白が残ります。

35
Mark Wilkins

TLDR:最も簡単な方法は次のことです

  • ナビゲートモードを使用する
  • カーソルを任意の行に設定します
    • dggを押します-これにより、カーソルから先頭までのすべてが削除されます
    • dGを押します-これにより、ドキュメントの最後までカーソルからすべての行が削除されます。

しかし、なぜ?

gg - goes to the begin of the document
G - navigates at its very end
d - delete mode

また、dと行番号の表記法との組み合わせを探していましたが、サイズがGBのような巨大なファイルを編集しているときに、少し面倒なことがわかりました。最初の3行を削除したい場合は:0、dを実行する必要がありますが、docuが1mln行を超えると、この目でこのがらくたを読むのが難しくなります...

4
matson kepson

他の提案はうまくいきませんでしたが、視覚モードを使用してこれを実現しました。

カーソルを削除したい位置に移動し、ヒットしました v 視覚モードに入ります。それから私はヒット ^ 現在の行の先頭に戻るように選択してから、 d ハイライトされたテキストをすべて削除します。

3
gregcaporaso