2012-02-24 34 views

回答

2

当然可以。你可以使用像这样的宏:

Yank: <Esc>`<"ayf(f)"by`> 
Paste: B"aPE"bp 

让我们解开它们。该猛拉宏假定你有功能选择并执行以下操作:

  1. <Esc> - 取消当前的选择
  2. `< - 移动到最后选择的开始
  3. "ayf( - 抽出文字达和包括右括号中的开括号“a”
  4. f) - 移至右括号
  5. "by'> - 抽出一切都交给最后选择结束到寄存器“B”

粘贴宏是简单得多:

  1. B - 移动到当前单词的开头
  2. "aP - 在当前位置前面粘贴寄存器“a”的内容
  3. E - 移动到当前单词的末尾
  4. "bp在当前位置后粘贴寄存器“b”的内容
+0

我实际上可以把我的头包裹在里面。谢谢! – puk 2012-02-24 03:28:07

0

如果是一次性的事情,你可以只使用一个宏:

:map q 0ifoo(^vESCA)^vESC 

只需在您想要更改的每一行上点击“q”即可。 如果单词不在一行上,你必须要更聪明一点。

+0

vim的问题是,在解开其真正潜能之前,您必须知道所有事情http://www.ende-der-vernunft.org/files /joern/20090110-lernkurveng.jpg – puk 2012-02-24 03:07:05

+3

你无法了解有关vim的所有信息。这是一个永无止境的学习过程。 :) – 2012-02-24 03:16:09

+1

':s/true/complete' – romainl 2012-02-24 08:29:03

相关问题