在vim中的“视觉选择”下,从光标删除到行尾
我有如下代码段在vim中的“视觉选择”下,从光标删除到行尾,vim,Vim,我有如下代码段 type Account struct { Id int
type Account struct {
Id int
UserId int
Name string
Address string
City string
State string
CountryId string
}
我想删除所有的数据类型。这有一个关键的组合吗
我尝试了
并在垂直线中选择所有数据类型的第一个字母,希望d+$
能够工作,但是vim只接受第一个输入d
,并删除第一个字母。使用
进入可视块模式,选择要更改的行,然后选择要删除的行,直到这些行结束
从:h v_D
:
{Visual}["x]X or *v_X* *v_D* *v_b_D*
{Visual}["x]D Delete the highlighted lines [into register x] (for
{Visual} see |Visual-mode|). In Visual block mode,
"D" deletes the highlighted text plus all text until
the end of the line. {not in Vi}
请注意,如帮助中所述,
X
和D
在视觉块模式下并不等效(X
仅删除当前选择,直到行尾为止)。您可以移动到左大括号,按%
键并发出:
s/ \+[^ ]* *$/
要获得:
type Account struct
Id
UserId
Name
Address
City
State
CountryId
}
替换将删除行尾的所有非空白字符
v6j
目视选择所有这些行删除多余的内容:“你可以使用C-V
并选择所有数据类型的第一列,然后执行$
选择直到行尾,然后执行x
或d
删除。不是最短的顺序,但对我来说,以下操作更自然
vi{
-目视选择内部段落
'将光标放在第一个int
,然后使用
选择所有数据类型,然后简单地选择x
Woah从未想到过。太好了!您能编辑您的答案以包括
选择吗?我会让它成为可接受的选项。使用\s和\s,这个解决方案会更清晰、更完整考虑其他类型的空白,如Tabs:<代码> S/\V\s+s+\s*$/< /COD>