我做以下一些文本複製引號內,並粘貼在不同的地方(引號內爲好):如何用緩衝區中的字符串替換引號中的字符串?
di"
go-to-buffer-for-copy
copy-string (ex. yi")
then-go-to-prev-buffer
paste-to-string (p)
但我想這樣做的一個簡單的方法,如:
yi"
go-to-buffer-for-paste
replace-inner-quotes-to-yanked-text
我做以下一些文本複製引號內,並粘貼在不同的地方(引號內爲好):如何用緩衝區中的字符串替換引號中的字符串?
di"
go-to-buffer-for-copy
copy-string (ex. yi")
then-go-to-prev-buffer
paste-to-string (p)
但我想這樣做的一個簡單的方法,如:
yi"
go-to-buffer-for-paste
replace-inner-quotes-to-yanked-text
對於「replace-inner-quotes-to-yanked-text」,您可以使用vi"p
。
(拉我的評論到自己的答案)
假設你使用vim
與系統剪貼板,你可以做到以下幾點:
"+yi"
到引號內的文字複製到系統剪貼板ci"<Ctrl-V><Esc>
用剪貼板的內容替換引號內的內容一個好處是,如果要將原始文本放在多個位置,可以將光標置於下一個位置並按.
。
vi"p
,由Randy Morris提出,但它取代了默認寄存器的內容,並且選擇將不會在「do again」命令中捕獲,只會粘貼。
您仍然可以使用"0
寄存器來訪問您的原始文本,但我還沒有找到一個可以在引號內部更改並以重做方式粘貼的命令。
此方法,可以留出插入模式,並且不需要無名剪貼板映射到系統剪貼板:引號
?'
之後的前幾個字母裏面
yi"
(抽出目標引號(找回來)的當前內容p
(膏)dt"
(刪除預先存在的內容,這是在引號
它有複製和粘貼嗎? '\'' – 2010-12-19 18:53:32
的確,謝謝。 – 2010-12-19 19:45:55
你能想到一個允許用'.'重做的版本嗎?除了當我想在多個地方做同樣的事情時,我完全可以做到這一點。在上面的情況下,最後一個緩衝區將被刪除的文本替換,並且在重做時不會捕獲選擇內容。我現在的解決方案是''+ yi'''把文本放在我的系統剪貼板中,'ci「從剪貼板粘貼。只有幾個字符比我想要的更多:) – 2013-08-06 00:07:29