我想搜索$maximumTotalAllowedAfterFinish
並將其替換爲$minimumTotalAllowedAfterFinish
。而不是輸入長文本:在Vim中,有沒有辦法在搜索行中粘貼文本?
:%s/$maximumTotalAllowedAfterFinish/$minimumTotalAllowedAfterFinish/g
有沒有一種方法來複制下來,這些長變量名在搜索行,因爲,在命令行中我不能鍵入「p
」粘貼?
我想搜索$maximumTotalAllowedAfterFinish
並將其替換爲$minimumTotalAllowedAfterFinish
。而不是輸入長文本:在Vim中,有沒有辦法在搜索行中粘貼文本?
:%s/$maximumTotalAllowedAfterFinish/$minimumTotalAllowedAfterFinish/g
有沒有一種方法來複制下來,這些長變量名在搜索行,因爲,在命令行中我不能鍵入「p
」粘貼?
您可以通過鍵入CTRL[R{0-9a-z"%#:-=.}
插入寄存器裏的內容。通過鍵入CTRL-RCTRL-W您可以將當前單詞粘貼到光標下。參見:
:he cmdline-editing
瞭解更多信息。
感謝您的回答,對我來說最常見的一個是:`CTRL` +`R`` +`(因爲它代表剪貼板內容) – 2013-10-09 10:27:49
通常,可以做到這一點與鼠標選擇(也許Ctrl鍵宏或Ctrl鍵Ç選擇之後),然後,當在命令/搜索線,中間鍵(或移位Ins或CtrlV)。
另一種方式,是寫在文本緩衝區的命令/搜索符合在文本緩衝區提供所有的編輯,從:
和所有的話,就行了,這樣做:
"[email protected]
這將整個命令行存儲在緩衝區a
中,然後執行它。不過,它不會存儲在命令歷史記錄中。
嘗試在文本中創建緩衝區以下行如對上述按鍵的例子:
:%s/$maximumTotalAllowedAfterFinish/$minimumTotalAllowedAfterFinish/g
最後,您可以輸入q:
在文本緩衝區進入歷史編輯。
+1爲提及鼠標 – 2008-11-10 12:48:14
複製它作爲正常的,然後做按Ctrl[R「貼。還有很多其他按Ctrl的R快捷方式(例如,計算器,當前文件名,剪貼板中的內容)。輸入:help c_<C-R>
要查看完整列表
或者在Vim緩衝區創建命令,如在緩衝區鍵入:
s/foo/bar/gci
然後將其複製到一個已命名的寄存器中,其中"ayy
(如果光標在該行上!)。
:[OPTIONAL_RANGE]@a
我用它所有的時間:現在
您可以執行的「a
」的內容從Vim的Ex命令符合註冊。
複製:
1)v
(或高亮與小鼠,在視覺模式)
2)y
(抽出)
粘貼:
1)/
(搜索模式)
2)Ctrl + R + 0
(從抽取的寄存器粘貼)
您可以將光標置於要添加到模式的單詞上,然後按/或:進入任一搜索或命令模式,然後按Ctrl鍵- [RCtrl鍵W¯¯複製的字。 Source
我想,tou還需要轉義第一個`$`,因爲這個caracter意味着行結束。 – 2011-09-19 20:28:10
@LucM OP還可以在搜索模式中的任意位置使用'\ V`來禁用「魔術」字符。 – 2012-11-06 01:37:14