`
yangzhihuan
  • 浏览: 167516 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Rails开发工具之Vim

阅读更多

学习和开发Ruby & Rails已经一年多了.但是正式全职Rails项目的开发只有可怜的4个月经验.这期间我一直使用Netbeans 6.x作为开发工具,到目前为止我依然认为它是开发Ruby & Rails程序的最佳开发工具(我没用过最新出来的RubyMine,另外这是一个付费产品,我也不会付费用它,但也不会用D版).

 

在网上可以看到很到开发Rails的同学使用Vim这个神器来开发的(就在JaveEye也有不少).但是由于我的vim水平只局限于只会使用有限的几个命令( i, :w, :x, dd ).所以我一直都觉得用Vim来开发有点儿不可思议,另一个原来是我是从Java转到Ruby的,习惯使用IDE.

 

这种情况一直到某天夜晚, Arbow 同学出于某不可知的原因发了一个Vim for rails的图片链接给我看( 这里 ),于是发生了我一夜折腾Vim for Rails的惨剧.

 

试用了两天Vim for Rails,发现用起来并没有我想象中的那么难,相比于Netbeans的最大优点就是快!什么都快! 打开/查找文件,搜索等等,什么都快,什么操作基本上都是按下Enter之后,立马就出来了.启动速度更加不用说了.但是这个前提就是你得安装好你要用到的插件,另外还有一些vim的常用配置(以前我一听到配置,心里就开始打退堂鼓了,其实没那么恐怖的,只要你认真在网上学习一下,不得不说的是vim的配置在网上真是多到不得了).

 

安装VIM

 

我的开发机器用的操作系统是Ubuntu 9.04,所以下面的安装配置都是针对Linux系统的.我除了安装命令行界面的VIM外,还装了一个GUI界面的,为了可以独立启动它.

sudo apt-get install vim 
sudo apt-get install vim-gtk //很明示这个是gtk gui支持的vim,在命令行下面的启动命令是: gvim

 提醒一下,Ubuntu系统默认安装的vim是一个简化版本,很多东西都不支持的,比如语法高亮.

 

如果要配置你的VIM,你还要两个配置文件(一个专门用于gvim的.),都是放在你的用户根目录下:

~/.vimrc 这个是vim的配置

set guifont=Monaco\ 11
 " set guifontwide=WenQuanYi\ Zen\ Hei:h12:cGBK
 " 设定文件浏览器目录为当前目录
 set bsdir=buffer
 " 设置编码
 set enc=utf-8
 " 设置文件编码
 set fenc=utf-8
 " 设置文件编码检测类型及支持格式
 set fencs=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
 " 设置开启语法高亮
 syntax on
 "显示行号
 set number
 " 查找结果高亮度显示
 set hlsearch
 " tab宽度
 set tabstop=4
 set cindent shiftwidth=4
 set autoindent shiftwidth=4
 filetype plugin indent on
" 把 F8 映射到 启动NERDTree插件
 map <F8> :NERDTree<CR>
" 把 CTRL-S 映射为 保存,因为这个操作做得太习惯了
 imap <C-S> <C-C>:w<CR>
 

~/.gvimrc 这个是针对GUI界面的配置

"把gvim的菜单和工具栏隐藏掉,按F2可调出,再按隐藏
 set guioptions-=m
 set guioptions-=T
 map <silent> <F2> :if &guioptions =~# 'T' <Bar>
         \set guioptions-=T <Bar>
         \set guioptions-=m <bar>
     \else <Bar>
         \set guioptions =T <Bar>
         \set guioptions =m <Bar>
     \endif<CR>

" 启动gvim时窗口的大小
 set lines=33 columns=113

 插件

可以自己到 VIM网站 下载,一般来说zip,tar.gz打包的文件,直接解压放到 ~/.vim目录下就可以了,如果是 plugin_name.vim 文件就更加简单了,直接放到 ~/.vim/plugin下面,省心又省事. 在下载页面上一般都有一个 install Detail的说明,那就是安装说明,多看一眼,你会少走很多弯路的.

 

我安装的VIM插件,我是参考 http://linuxtoy.org/archives/ruby-rails-on-linux.html :

  1. rails.vim 这个是rails的插件,必不可少的.
  2. snipMate 这个就是号称让VIM跟MAC下的神器TextMate有同样表现的插件,也是必装的.
  3. NERD_tree 显示目录树,我觉得比那个Project.vim要好用多了,所以我没有装Project.vim
  4. supertab.vim
  5. NERD_commenter.vim 快捷来加删comment的,不过我好像还没用过.
  6. lookupfile.vim 找文件,如果你只是用来开发rails的话,可以不用.
  7. bufexplorer.vim buffer切换
  8. genutils.vim
  9. javascript.vim
  10. blackboard.vim 这个就是模仿TextMate的配色,很重要.
  11. Monaco字体 这个不是插件,不过这个字体很漂亮 下载地址: http://www.webdevkungfu.com/textmate-envy-aka-monaco-font-for-windows/

基本上vim for rails 已经可以用了.放上我的效果图:

 

 

使用

  1. 不是所有的vim插件都会自动启用的.一般的vim插件都是要使用命令来启动的,我刚用的时候不知道这个,抓狂了一阵子.比如你要使用NERDTree插件,要先输入如下命令:
    :NERDTree
    //我把这个命令映射到 F8 了,请看上面的配置文件.
     
  2. rails.vim插件只有一个全局的命令Rails,这个会新建一个Rails项目.
  3. 其它的rails.vim的命令都是要找开了Rails项目的文件才能使用的,这个我很是郁闷.比如你想查找一个user.rb文件打开,本来是应该使用 Rfind user.rb ,但是由于你的VIM没有打开任何Rails项目中的文件,这个命令不可用!!
  4. 下面说说我一般的使用方法:
    • 打开vim,先cd ~/my_project_path
    • 按一下F8,启动NERDTree插件,把我的项目目录树显示出来.
    • 一般rails使用命令:
      #如果你要找一个文件
      :Rfind routes.rb
      
      #如果你想打开一个model
      :Rmodel user
      
      #如果你想打开一个conotroller
      :Rcontroller users
      :Rcont users
      
      #如果你想打开一个view
      :Rview users/index
      :Rview users/_user
      #如果你的当前窗口的文件是在app/views/users/下的话
      :Rview show #相当于 :Rview users/show
      
      #如果你当前光标是controller的index方法中,直接按 R 可以中转到视图文件 index.html.erb中
      
      #其它的方法如
      :Rserver #启动服务器
      :Rserver! #停止服务器
      :Rjavascript js_name #打开js文件
      
      #还有很多,输入帮助命令自己看吧
      :help rails
       
    • 不要使用 :Rlog 在vim上看日志文件,因为我用的时候,发现它更新时很慢,要等一下才会输出.还是老实地在终端上用 tail吧.

试用了两天,觉得还可以,效率很高,弄好那个配色之后,看着非常舒服,还有就是vim的速度,真的是非常快,什么都快.

Netbeans的长处在于文件,方法之间的跳转非常的方法,但是就是启动慢,查找的时候也比较慢,有时会有些不耐烦.

我还未决定是否会使用vim作为主力开发工具,毕竟Netbeans有很多我无法舍弃的优点,还有就是对快捷键的习惯(我以前用Java的时候,使用的是Eclipse,到现在使用netbeans还是使用Eclipse的快捷键,由此可见习惯是多么难改变).

 

 

分享到:
评论
3 楼 saberma 2009-10-19  
机器人 写道
一个无法离开ide的原因是svn啊,虽然用编辑器那些小家伙,配合命令行的svn,在项目大的时候还是感觉文件改动标示不直观。

ide中在项目tree文件列表标记svn各种状态还是非常实用的功能。

不知道有支持svn的vim plugin没有


试试git,非常好用
项目放在github.com上可以更方便的开源,fork出来后,随便折腾都没关系
2 楼 saberma 2009-10-19  
刚用vim有这水平也不错了,而且还总结得那么详细

不知你用fuzzyfinder_textmate.vim没有,用上了,那些:Rmodel user等命令就不需要了
直接CTRL+T打文件名模糊查询更快

我之前也总结了一点vim常用命令
http://saberma.github.com/2009/10/10/vim.html

我的vim配置
git://github.com/saberma/vimfiles.git
1 楼 机器人 2009-10-19  
一个无法离开ide的原因是svn啊,虽然用编辑器那些小家伙,配合命令行的svn,在项目大的时候还是感觉文件改动标示不直观。

ide中在项目tree文件列表标记svn各种状态还是非常实用的功能。

不知道有支持svn的vim plugin没有

相关推荐

    dotvim:用于 Ruby on Rails 开发的 Vim

    My Vim for Ruby on Rails 开发 MacVim 用户警告 我已经停止使用 MacVim(主要是)并开始在 Tmux 中使用控制台 Vim。 提取到分支的最新 MacVim 配置不再受支持。 但仍包含此处描述的大部分功能。 特征 Ruby on Rails...

    ubuntu 10.10系统安装及vim(ROR)开发环境完整配置

    现在,你已经在Ubuntu 10.10上成功构建了一个包含Vim和Ruby on Rails开发环境的系统。通过持续学习和实践,你将能够更高效地利用这个环境进行Web应用开发。记住,定期更新系统和依赖,以确保安全性和兼容性。

    ruby on rails 101

    ”这句话生动地描述了Ruby on Rails的独特之处以及它在Web开发领域的影响力。 #### 二、安装 安装Ruby on Rails的方法多样,具体包括: - **InstantRails**:适用于Windows用户的单击安装包。 - **Locomotive**:...

    vim-rubymotion:Vim 插件以帮助开发 RubyMotion

    `vim-rubymotion` 是一个专为 RubyMotion 开发者设计的 Vim 插件,它的目标是为 Vim 提供与 `vim-rails` 相似的强大支持,使得在 Vim 编辑器中进行 RubyMotion 项目的开发变得更加高效和便捷。尽管当前该插件可能还...

    vagrant-rails:为 Ruby on Rails 准备的开发环境

    这个 vagrant 配置文件旨在构建一个随时可用的 Rails开发环境。 什么是流浪者? Vagrant 是一个创建虚拟机的工具。 你可以在 Mac、Windows 或 Linux 上安装 Vagrant 创造环境 $ git clone ...

    开发者必备的8个最佳云端集成开发环境.pdf

    在当今数字化时代,越来越多的开发工具和环境正逐渐转向云端,以适应全球化、协作和高效开发的需求。本文将详细介绍8个最佳的云端集成开发环境(IDE),它们为开发者提供了便捷、灵活且功能丰富的编码体验。 1. **...

    rails6_alp

    Rails 6 是 Ruby on Rails 框架的一个主要版本,带来了许多新特性和改进,旨在提升开发效率和应用性能。本文将深入探讨 Rails 6 的关键特性,以及如何利用 Shell 命令来管理和操作 Rails 项目。 首先,Rails 6 引入...

    初学web开发需要掌握哪些知识.docx

    此外,了解并掌握一些开发工具,例如Visio、Dreamweaver、Visual Studio、Eclipse、Vim、EditPlus或Notepad++,以及数据库管理工具如phpMyAdmin,浏览器及其开发者工具如Firebug和Web Development Helper,这些都是...

    dotfiles:各种配置文件和VIM插件

    4. **Ruby**:Ruby是一种动态、面向对象的脚本语言,常用于Web开发(如搭配Rails框架)和自动化脚本。 5. **MacVim**:MacVim是在macOS上运行的Vim文本编辑器的一个版本,它提供了与系统更好的集成,如使用Mac的...

    RailsBox-开源

    为Ruby on Rails开发定制Lubuntu。 工具:Vim,RVM,Ruby 1.9.2,Rails 3.1,Tmux,Open Ssh Server,VirtualBox无缝集成。

    Pragmatic.Textmate.Power.Editing.for.the.Mac.Feb.2007.pdf

    对于Mac用户来说,TextMate无疑是一款强大的编辑工具,尤其是在Ruby on Rails开发中发挥着重要作用。本文将基于《TextMate: Power Editing for the Mac》这本书的内容,深入探讨TextMate的各项特性及其对开发者的...

    2021-2022年收藏的精品资料软件工程师推荐10个开发者最常用的代码编辑器.docx

    Aptana不仅支持JavaScript,还支持Ruby on Rails,并随着技术发展增加了对iPhone和Adobe AIR的开发支持。它拥有代码辅助、代码结构概览、语法错误检查、自定义UI扩展和跨平台兼容性,特别适用于Web2.0应用程序的开发...

    gitlab+harbor+sonarqube+jenkins+maven实现Devops

    gitlab_rails['time_zone'] = 'Asia/Shanghai' puma['worker_processes'] = 2 sidekiq['max_concurrency'] = 8 postgresql['shared_buffers'] = "128MB" postgresql['max_worker_processes'] = 4 prometheus_...

    GitLab搭建-1.0.pdf

    GitLab是一个基于Ruby on Rails开发的开源平台,与GitHub相似,它提供了浏览源代码、缺陷跟踪和注释等功能,使得团队成员可以高效地协作开发项目。 在GitLab服务的组成部分中,以下列出的关键组件至关重要: 1. **...

    笔记本电脑安装:Fabriquartz,这是笔记本电脑的默认安装

    Ruby是一种面向对象的、动态类型的编程语言,广泛用于Web开发,特别是与Rails框架的结合。在安装过程中,我们需要确保Ruby环境已经就绪,并且版本符合Fabriquartz的要求。通常,安装Ruby可以通过管理工具如RVM(Ruby...

    redhat 6.x gitlab最新6.6部署指南

    2. 使用yum命令安装所有必需的依赖包,这些包涵盖了开发工具、系统工具、编程语言及其开发环境、数据库和网络相关工具等。 3. 这些依赖包包括但不限于vim、readline、ncurses、gdbm、glibc、tcl、openssl、curl、...

    开发实践:通过这些想法练习您的技能

    在开发领域,不断练习和提升技能至关重要。...同时,不要忘记使用版本控制工具(如 Git)跟踪你的进度,并通过 Vim 提升编码速度。积极参与开源项目和黑客马拉松,可以让你在实践中提升技能,积累实战经验。

Global site tag (gtag.js) - Google Analytics