使用Viper和Vimpulse的Emacs中缺少哪些Vim功能?

时间:2008-11-29 13:52:22

标签: vim emacs editor viper vimpulse

在Vim中缺少Emacs的重要功能,例如comint模式,并且没有可以替换它们的脚本/插件。

Vim相对于Emacs也有好处,例如模态编辑和通常更好的默认快捷方式。但是,Viper模式让我两个都有。 Vimpulse还支持可视模式。 不幸的是,没有任何模式可以使Emacs像Vim一样快速工作。

所以我主要学习了Vim-in-Emacs。我错过了哪些Vim功能?

8 个答案:

答案 0 :(得分:15)

我是普通的vim用户,但不是emacs用户,并且没有使用vimpulse来确认这一点。

但是浏览下面的vimpulse代码我没有提到文本对象。

http://www.emacswiki.org/cgi-bin/wiki/vimpulse.el

Vim介绍了一些非常有用的选择和动作习惯用法,这些习惯用法不是常规的vi

  • cat'在xml / html标签的标签周围切换
  • diw'删除字'
  • di( di"删除"" ()等内的文字。
在vim帮助中

查看:he文本对象了解更多信息。

答案 1 :(得分:8)

  

不幸的是,没有任何模式可以让Emacs像Vim一样快速地工作。

如果你的意思是emacs的启动时间很短,你可以通过永久打开emacs会话来大幅削减它,并在需要编辑文件时使用gnuclient / emacsclient。

http://www.emacswiki.org/emacs/GnuClient

答案 2 :(得分:4)

我在emacs中遗漏的一个vi功能是重复上次编辑的.(点)命令。有dot-mode.el实现C-.来模拟这个,但它并不总是对我有效(我不熟悉elisp来找出原因)。

即使v蛇也没有像vi那样完全执行这个命令(我上次检查过),即使它确实如此,我也不认为这对我开始使用毒蛇是不够的。

答案 3 :(得分:4)

要获得可能缺少vimpulse的完整列表,请输入

:helpgrep不在Vi

将列出帮助中与vi兼容的所有功能。

Theres大约700场比赛。

当然会有很多重复的功能

答案 4 :(得分:1)

Vi无处不在 - 无论您是在目录列表,帮助文件,只写文件还是允许编辑的内容中,您都可以使用相同的快捷方式进行导航。

纠正视觉和删除行为 - 非常类似于emacs标记,但在惯用方面不同,Vi用户难以重新训练。如果你已经习惯了emacs标记你并没有真正遗漏任何东西。

正确的转义行为 - 应取消所有其他模态活动并返回命令模式。再说一次,如果你对emacs感到满意,你可能习惯于使用模态输入等等。

关于Vi的明显栗子被部署在世界上的每个nix系统上(Gentoo纯粹主义者纠正了我?) - 无论如何我的眼中并不是一个非常强烈的争论。

这些是我在使用emacs +毒蛇时出现的那些。

答案 5 :(得分:0)

Vim宏似乎不适用于viper / vimpulse:

Vim macros don't work when using viper + vimpulse in Emacs

(顺便说一下,让我关心vim / vimpulse的杀手emacs功能是不同的帧可以编辑同一个文件。就像分开两个部分可以在不同的窗口中。如果有人知道如何实现这一点在vim中,你将成为我的英雄。)

答案 6 :(得分:0)

使用/和增量搜索?不见了。

答案 7 :(得分:0)

成为emacs 作为操作系统的爱好者和vi 作为输入模型,我自然想要爱毒蛇。但是在使用它的两秒钟内我不得不放弃它: viper不支持C- [作为转义键的替代 - 这是 的基本快捷方式vi中最常用的命令。