说我有以下几点:
text function(contents) text
Run Code Online (Sandbox Code Playgroud)
我希望它是
text function() text
Run Code Online (Sandbox Code Playgroud)
将光标放在左括号之后,我认为以下命令会起作用df)
;然而,我最终得到的是以下内容
text function( text
Run Code Online (Sandbox Code Playgroud)
所以我需要以某种方式在右括号之前指定我想要的字符,但我不知道该怎么做。也可能有更好的方法来做到这一点。
解决这个问题的最佳方法是什么?
你很接近!你需要dt)
像在d
eletet
生病)
该f
议案将光标上)
(记得好像f
IND)
至于“最好”的方法,至少有一种更通用的方法:如果光标位于(
和)
(或其中之一)中间的某个位置,您可以di)
(或等效地di(
)执行d
elete i
nside)
如果您这样做da)
(或等效地da(
)d
elete a
round )
,您将删除中间的内容并包括括号。
这同样适用于di[
,di{
,di<
,di'
,di"
等。使用这些所谓的文本对象,而不是在d{motion}
方式的优点是可以重复编辑的其他对括号/引号,而不需要光标将在完全相同地方 - 它只需要在它们之间或它们之间。
在下面,您可以将光标定位在例如第一行“initial”的“i”上,di)
删除单词“some initial text”,然后将光标移动到第二行“more”中的“e”行并.
删除“更多文本”字样):
(some initial text)
(some more text)
Run Code Online (Sandbox Code Playgroud)
当括号(或引号)在不同的行上时,这种方式也适用。例如,当光标位于 之间时{}
,doingdi}
会改变这一点:
function( args ) {
body of function
}
Run Code Online (Sandbox Code Playgroud)
对此:
function( args ) {
}
Run Code Online (Sandbox Code Playgroud)