如何使用Vim/Emacs提高工作效率

xan*_*oss 6 ruby python linux vim emacs

在过去3年或更长时间里,我一直是Eclipse用户.我在其中进行Java EE(和Spring)开发,到目前为止,我完成了90%的任务而无需触摸鼠标.通常我的Eclipse设置如下:

  • Subclipse(或者我使用命令行)
  • m2clipse(Maven Eclipse插件)
  • Data Source Explorer(处理SQL)

我做的典型Eclipse活动(并希望将其传输到Vim/Emacs)是(这适用于多模块/多项目/多文件夹源代码):

  • 重构(在整个"开放项目"中重命名方法)
  • 跳转到类实现
  • 搜索特定类或方法的所有用法
  • 通过maven pom.xml更新依赖项(第三方JAR)
  • 跳转到第三方库实现(如果本地存储库没有它,maven可以下载source.jar,eclipse将带我到实际的Java代码,比如Hibernate实体管理器实现).
  • 编写并运行单元测试

以上所有活动都不需要我使用鼠标.有一些活动,我需要使用一点点鼠标,如全局搜索文件

最近我一直想尝试使用VM进行开发.这里的想法是创建一个准系统虚拟机(假设使用Ubuntu服务器)并在那里开始编码或使用Putty/SSH.

我有一台MacBook Pro 13",这将有利于使用VIM/Emacs或任何轻量级编辑器.

有两个主要目标:

  • 流动性(如旅行和编码)
  • VM作为开发环境

我想使用的工具如下:

  • Linux的
  • Ruby,Python,PHP(有时甚至可能是Java,但绝对不是Microsoft .NET)
  • 任何RDBMS
  • 任何构建/依赖系统
  • 单元测试框架

你会推荐什么:VIM?Emacs的?其他?其他工具怎么样?Gnu Screen,ctags等

帮助我建立我的梦想环境:轻量级,高效,易于复制:)

谢谢!

Ach*_*him 5

如果你问一个涉及"vim OR emacs"的问题,你将永远得不到有用的答案.这是一个宗教问题,没有正确的答案!那就是说,你应该清楚地使用Vim!;-)但严重的是:Vim更轻量级,因此它可能更适合您描述的场景.Vim可以用不同的语言编写脚本,您可以在www.vim.org找到许多有用的脚本.Emacs"更重",但Lisp是一种非常强大的脚本语言.因此,Emacs不仅仅是一个文本编辑器,它更像是一个通用工具.IDE功能(如项目管理)是我在Vim中不时缺少的.有一些脚本可以做到这一点,但我不喜欢它们.如果你需要,我会选择Emacs.