【发布时间】:2010-10-27 08:58:57
【问题描述】:
在编辑 .scm 文件时,如果 Vim 会在我开始 ( 时自动放置结束大括号 ),那就太好了。我该怎么做?
【问题讨论】:
标签: vim autocomplete
在编辑 .scm 文件时,如果 Vim 会在我开始 ( 时自动放置结束大括号 ),那就太好了。我该怎么做?
【问题讨论】:
标签: vim autocomplete
您可以根据自己的喜好映射左大括号:
:imap ( ()<left>
【讨论】:
最简单的答案是包含地图。例如:
:inoremap ( ()<left>
问题是您需要为每个要自动关闭的符号添加一个条目('{'、'['、'"'等)。此外,插件通常更智能,提供诸如检测“关闭”字符而不是重复它。
上述解决方案和大多数插件的问题在于它们倾向于破坏撤消序列(gundo任何人?),如:help ins-special-special中所述。
这里是执行您所要求的插件列表(来自vimtips):
【讨论】:
我也需要一个,我已经尝试了一些插件:
自动关闭,http://www.vim.org/scripts/script.php?script_id=1849,有点激进。
简单对,http://www.vim.org/scripts/script.php?script_id=2339,依赖于 Python。如果您在 Linux 上,这不是问题,但在 Windows 上,将 Vim 版本与您拥有的 Python 解释器匹配可能会很麻烦。
我的建议是 ClosePairs,您可以在 http://www.vim.org/scripts/script.php?script_id=2373 找到它,这对我来说非常有效。简单实用。
【讨论】:
关于这个主题有很多提示和插件。查看 vimtips 站点中的relevant entry。
【讨论】:
我目前正在使用auto-pairs,效果非常好。
插件破坏撤消/重做/重复的问题似乎在上面列出的一些插件中仍然存在,但我认为这不是什么大问题(嗯,至少目前对我来说不是)。
不过,请注意,在撰写本文时,我无法使用 :helptags 生成带有此插件的帮助文件。
【讨论】:
查看这个新插件:vim-autoclose by Townk。前面提到的AutoClose 具有攻击性,有时表现得不受欢迎。
【讨论】:
使用这个有问题(通过 imap 或脚本之一)。您将无法使用. 命令重复完整的编辑。
e.g. (foo) with . only gets you foo, without the brackets.
如果你把括号作为两个字符正常插入就可以了。
【讨论】:
【讨论】:
https://github.com/vim-scripts/Auto-Pairs
测试了这个插件的undo redo。 2013 它只是工作。还有python-mode插件。
【讨论】:
【讨论】: