我想在Vim中包含一個單詞並附上標記,例如從word
到'word'
或從word
到(word)
。Vim:將單詞包含在標記中
回答
使用蒂姆教皇的vim-surround,你可以使用:ysw'
附上一個字與「`」,ysw(
包圍與「(」字。如果你想圍繞一個實際的標籤的話,如HTML標籤<code>
。 ,您可以使用yswt
,然後在提示中鍵入您的標籤,如果您想要更改現有的環繞聲元素,請使用csw
,輸入您要替換的環繞聲元素,然後按<CR> (enter)
,然後鍵入新的環繞元素。
請注意,對於上述命令的工作,您必須將光標放在要包圍的單詞的開頭。
從它的官方網頁:
按
cs"'
(這是C,S,雙引號,單引號)內將其更改爲
「 」世界,你好!「你好世界!'
現在按
cs'<q>
將其更改爲Hello world!
爲了走了一圈,按
cat"
得到「世界,你好!」
要完全刪除分隔符,按
ds"
。Hello world!
現在隨着光標移動到「你好」,按
ysiw]
(iw
是一個文本對象)。[你好]世界!
讓我們大括號,並添加一些空間(用「}」而不是「{」爲無空格):
cs]{
{}你好世界!
現在包裹在括號中的整條生產線與
yssb
或yes)
。({}你好世界!)
恢復到原來的文字:
ds{ds)
世界,你好!
強調你好:
ysiw<em>
你好世界!
最後,讓我們嘗試視覺模式。按下大寫字母
你好世界!V
(對於linewise可視模式) ,然後按S<p class="important">
。
有關更詳細的使用信息,安裝vim-surround
,然後用:help surround
調用文檔。
看看蒂姆教皇的surround.vim。
<c-r>
是這些非常方便,讓你插入一個寄存器,剪貼板,字的內容光標下(<c-r><c-a>
),等等。例如:
nmap <space>' ciw'<c-r>"'<esc>
vmap <space>' c'<c-r>"'<esc>
nmap <space>(ciw(<c-r>")<esc>
vmap <space>(c(<c-r>")<esc>
哪款地圖space+'
包住當前單詞或視覺選擇用單引號或space+(
將當前單詞或視覺選擇用雙引號括起來。
映射的內容是指「更改內部字|選擇文本,插入引號,插入字符,插入引號,退出插入模式」。
我用這個片段給宏記錄到字母M的第一次: qmcw」 <CR>「'<ESC> q 然後用@m
解釋重做,在第一個10個打擊是必要的:
- QM開始錄製宏在字母m
- CW變化只有一個詞,把你帶入插入模式
- 「寫的第一次報價
- <CR>「粘貼,我們在體育場2擦除,同時保持到 插入模式
- 字」是周圍的其他報價
- <ESC>回到編輯字
- q結束宏。
與@m回憶起來:現在我們只用了兩個好球包圍......
- 1. 如果文本字符串包含某些單詞,請將這些單詞包裹在span標記中
- 2. 在Vim中刪除包含字符串的整個單詞
- 3. 如何在vim中選擇單詞時包含句點?
- 4. 如何查找從Html標記中包含的單詞?
- 5. 試圖獲取包含特定單詞的src標記
- 6. 獲取<script>標記,不包含多個單詞
- 7. 在vim中包含搜索
- 8. VIM複製包含a的整個單詞。 (點)
- 9. 包含標記中的HttpResponseRedirect
- 10. 在R中爲單個單詞/標記創建POS標記
- 11. 包含數字的單詞
- 12. stringr:包含特定單詞
- 13. 如何標記單詞單詞
- 14. 將不包含在單詞中的字符換行
- 15. 包含在struts2中迭代器標記
- 16. 在tm中包含短標記DocumentTermMatrix
- 17. 在javascript中包含樣式標記
- 18. AngularJS不能在ID中包含標記?
- 19. 正則表達式獲得字符串中的單詞出現,但不包含包含該單詞的單詞
- 20. 的grep或sed中包含單詞串
- 21. 從包含特定單詞在VB6
- 22. NLTK中單個單詞的標記器
- 23. 替換光標下的單詞 - Vim
- 24. Vim單詞評論
- 25. 包含標記和embed標記在expressionengine中有什麼區別?
- 26. 單擊包含聲音的單詞 - javascript
- 27. WHERE列包含單個單詞
- 28. 在Microsoft LUIS中將單詞標記爲預構建實體
- 29. 將含標記含汞
- 30. 如何在包含Unicode字符的表中包裝單詞'\ u00A0'
作爲一個側面說明,非資本V會讓你選擇任意數量的字符(像1.10的數字有用其中「iw」將選擇1或10)。 – htatche 2016-12-14 00:19:30