我对Vim相当新,但现在已经使用了一两个月。我使用了几个不同的插件,但现在遇到了问题...
每当我使用Python进行编码时,我都希望:set autoindent
开启,因此每当我创建新行时,我都不必进行所有缩进。但! ...例如,如果我写下这段代码:
def foo(self):
pass
def __init__(self):
var = 42
点击“输入”#39;在Vim之后' 42',然后我的自动注册将自动制作两个标签缩进,我已经自动转换为6个空格(我不记得它是{{1}或者如果它是:set tabstop=3
那么做的话。但是,让我们说,我对这条新行感到后悔,并想删除它。我已经习惯了其他IDE(比如Eclipse或Dreamweaver,我可以只退一次,这将删除新行并将我带到上面一行的末尾。
我知道,我可以按下' dd',然后删除该行...但是当我这样做时,我会进入'插入模式'所以为了做到这一点,我必须退出插入模式,按“dd'”,然后再次进入插入模式,在我看来,对于这样一个简单的操作来说是非常麻烦的。
天啊,神圣的Vim-masters!听听我的祈祷,帮助我增强我的Vim力学!答案 0 :(得分:5)
我使用的以下选项:
尝试:help i_ctrl-d
/ :help i_0_ctrl-d
/ :help i_ctrl-u
答案 1 :(得分:1)
撤消过早输入按下是一项简单的任务,您不应该被迫退回到正常模式。假的建议有用,但我更喜欢做<c-w><c-w>
('ww'持有ctrl),它代表删除你输入的最后一个单词(光标左边的单词)。您可以将<c-w>
映射到在空行上执行<c-w><c-w>
的函数,但坦率地说,我不相信这样做只是为了避免简单的双击。
答案 2 :(得分:1)
您可以使用insert-normal模式,使一个命令进入正常模式,然后立即返回插入模式。
C-o
(insert-normal)如果你想重新使用这条线......
C-r
&#34; (从默认寄存器粘贴)您也可以将insert-normal用于许多其他事情。