有没有办法做到这一点?我知道你可以做所有明显的,像,c和,cs
但我不认为注释掉整个函数是有约束的……
发布于 2011-02-26 08:26:41
从函数中的任何位置执行以下操作:
va{,c<space>当然,您可以将其映射到以下内容:
:map ,o va{,c<space>因此,在函数中按,o将对其进行注释(如果已注释,则取消注释)。
发布于 2017-11-22 07:12:08
这要看情况。
这取决于函数的功能,以及您所处的位置。
public function test()
{
$name = "whatever";
$data = array(
'name' => $name
);
return $data;
}场景1:public function test()上的光标行1
序列:
Vj%
V Start linewise visual mode
j Go down one line
% Go to matching closing bracket

场景2:$name = "whatever"上的光标行3
序列:
va{ok
v Start visual mode
a{ Arround bracket
o Exchange cursor from top to bottom of selection
k Go up one line

然后,根据您的Nerd注释映射,像往常一样对,,c进行注释。
发布于 2011-02-26 07:25:04
没有用于注释掉整个函数的绑定(据我所知)。我认为有几种方法可以实现这一点-例如,您可以将光标放在结束括号上,转到视觉行模式,按%键(如果您将开始括号放在新行中,则选择额外的行),然后使用\cc。
当我想要实现这一点时,我会使用textobj-user和textobj-rubyblock插件(我目前主要使用Ruby语言编程),它们允许我使用var轻松选择代码块,并使用ar扩展它。这非常好,因为我不需要转到end关键字(在C中是右括号),但我选择了整个函数,而不是将光标从函数体移动。我还没有试过这个,但是对你来说,this plugin应该可以工作。这不是一个只有一个绑定的解决方案,但它也很快。我希望这对你有用。:)
https://stackoverflow.com/questions/5123643
复制相似问题