在Sublime Text 2决定即使安装了某个模块后,我也不相信模块的安装,我最近应 friend 的要求转而使用Vim。
我已经设法设置了一些东西来简化Python(目前仅是我的语言)的编辑。但是,Sublime缺少一个功能。它会自动在需要它们的行尾添加一个冒号(函数定义的开始,如果是语句等)。这避免了无数烦人的错误,我很想念:P
我想知道是否可以在.vimrc中放入某种命令来执行此操作。
一个例子:
如果要键入def
,我希望vim自动插入一个冒号使其成为def :
,然后将光标放在冒号之前,让我可以键入我的函数名。
如果我无论如何都感到愚蠢,请加油并道歉。
最佳答案
我强烈建议您使用imap
代替这些类似的小补丁,而不要像@CG Mortion的答案所示那样使用iabbr
。
使用imap
,您将永远无法在插入模式下键入“define”,除非您在按“d”,“e”或“f”之间暂停一下,或者进行了许多其他骇人听闻的操作之一以防止映射发生。使用iabbr
时,仅在按下非关键字字符后才缩写。 iabbr def def:<left>
的工作原理与您期望的完全一样,并且没有imap
的缺点。
正如其他答案中提到的那样,一旦您决定要复杂一些,我也建议您继续使用摘要引擎。它们非常强大,可以节省您的时间。
关于python - 在 'def', 'if'等之后自动插入冒号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11507039/