我在學習VI/VIM。我想知道如何將文本從我的光標刪除到文件中的其他位置。我知道如何刪除一行(dd)和多行(5dd)以及行尾(d $),但不是,例如從光標到下一行的中間或下一行的中間兩三行。VIM從光標移到文件中的另一個位置
感謝您的任何提示。 乾杯!
我在學習VI/VIM。我想知道如何將文本從我的光標刪除到文件中的其他位置。我知道如何刪除一行(dd)和多行(5dd)以及行尾(d $),但不是,例如從光標到下一行的中間或下一行的中間兩三行。VIM從光標移到文件中的另一個位置
感謝您的任何提示。 乾杯!
您可以在d
之後使用任何動作。例如,要刪除兩個單詞,您可以執行d2w
。或者要刪除左邊的10個字符,可以執行d10h
,或者刪除接下來的兩行,執行d2j
。對於像'刪除到下一行的中間部分'這樣的更復雜的事情,我通常只需要v
進入選擇模式,使用hjkl選擇我需要的,然後點擊d
刪除它。如果您執行塊選擇模式Ctrl+v
,則可以選擇需要刪除的塊並點擊d
。希望有所幫助。
你是什麼意思「中間」?
你跟d{motion}
刪除,其中包括像的東西:
d5w - delete the next 5 words
d/test - delete up to the word test
看到
:help d
:help motion
和motion.txt在幫助鏈接(也在線http://vimdoc.sourceforge.net/htmldoc/motion.html)
我用讓vi宏在標記之間刪除。例如使用ma
做標記的,然後把光標移到您想讓它和:
mb'a"ad'b
將使標記B,並從關口刪除對B插入緩衝「一」
mb'a"ay'b
將複製(不刪除)
"ap
將返回文本。
(從內存這是基於全行,而不是「在一條線上的位置」)
感謝所有答案的答案。我已經將v用於視覺模式,但沒有考慮使用這個(新手腦袋),我只是試了一下而且效果很好。謝謝,所有! –
答案答案=> GREAT答案。 –