在 vim 中复制引号内的文本最有效的方法是什么,例如 "hello"
'hello'
'''hello'' 中的 hello '
还是 """你好"""
?我能做的最快的是:
v
(进入视觉模式)w
或e
(大约到达文本的末尾h
或l
以到达正确的位置y
拉出文本
这是一个例子:https://gyazo.com/a2bb432dc04de58ac628327740f6c033 .虽然我可能能够改进以获得它,也许在 3 秒内,但用鼠标执行此操作将花费 0.25 秒。进行上述复制粘贴的最有效方法是什么?
最佳答案
如果文本仅由一对引号包围,在本例中为双引号,复制该文本的最有效方法是 yi"
。这将复制 (y
) 引号内的文本 (i"
),无论光标最初位于何处。要使用单引号、方括号、圆括号或其他内容使其工作,只需将 "
替换为文本周围的字符即可。
但是,如果文本被多于一对引号包围,我们必须首先导航到最里面的引号,然后才能将文本复制到里面。上面的命令将不起作用,因为它会看到前两个引号之间没有任何内容 (""
)。
导航到第一个引号的最快方法是 f"
。然后,按 ;
直到光标位于最里面的引号上,我们现在可以使用 yib
(ib
命令 selects the inner block .)复制里面的文字!
也许可以创建一个映射,自动将光标移动到最里面的引号并复制里面的文本,但这对我来说有点太高级了。
关于Vim:在引号内复制文本的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61166259/