2011-09-06 88 views

回答

8

它向上移動是因爲您已經刪除了包括換行/換行在內的所有字符。

Vim和往常一樣有多種解決方案。沒有「一個真正的方法」,但你可以嘗試下面的命令。

  • 您可以在正常模式下,這將刪除所有內容,直到行的末尾使用D(資本)。

    :help D

  • 使用其他運動

    你可以做的,而不是使用$移動到該行的到底是什麼,使用_。它將移動到該行的最後一個非空白字符,並且不會選擇行返回。

    :help g_

    所以v 克_d應該工作,只要你想。

  • 使用更換

    或者,你可以做的,而不是切割,您可以通過使用空格字符空白替換刪除字符。

    所以v$[RSPACE應努力抹去,但它會在寄存器(後來粘貼例如)不保存替換的字符。

1

爲了削減了從當前光標位置,直到結束,使用Ç

:he C將幫助您:

從光標位置刪除到 行的末尾和[統計] -1行[到register X],並 開始插入。 c $的同義詞(不是| linewise |)。

這樣做將導致當前行(假設你上線的開始打的時候Ç)成爲空和內容是(默認)抽出到寄存器"


編輯: 正如Xavier在他的評論(和他的answer)中指出的那樣,D也可以實現。它也切割從當前光標位置到行尾的所有內容,但在執行後不會進入插入模式。

+0

我不知道'C',但我不確定OP是否想要替換剪切文本。但是,'D'存在並且似乎正常工作。 –

+0

@ Xavier:謝謝你讓我想起'D'。除了插入模式之外,幾乎是一樣的。更新了答案。 – eckes

0

如果使用這些按鍵序列,則下一行不會向上移動。

v $ h d 

它動起來,因爲EOL字符$也越來越不移動光標1個字符處被刪除。

0

只是跳過視覺模式,並交換其他兩個命令,即。請按d$

這比你的初始短,並沒有打破你的傳統介紹你可能不熟悉的其他按鍵。