- 浏览: 168751 次
- 性别:
- 来自: 广州
最新评论
-
dongxuef:
正奇怪呢,原来你也没深究.源码中_params被default ...
在Rails的controller中访问params的一个小细节 -
sunsonavaj:
Rails 3 下自定义错误信息显示页面 -
Hooopo:
Thx!
ubuntu下让netbeans的字体变得好看些 -
ybffnst:
paperclip 对错误消息的处理是对字符串进行处理的,不支 ...
如何自定义处理ActiveRecord中的errors信息 -
wozhidao:
这个方法有个很大的bug,远程图片的时候是取不到扩展名的,上传 ...
paperclip定制文件名
学习和开发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 :
- rails.vim 这个是rails的插件,必不可少的.
- snipMate 这个就是号称让VIM跟MAC下的神器TextMate有同样表现的插件,也是必装的.
- NERD_tree 显示目录树,我觉得比那个Project.vim要好用多了,所以我没有装Project.vim
- supertab.vim
- NERD_commenter.vim 快捷来加删comment的,不过我好像还没用过.
- lookupfile.vim 找文件,如果你只是用来开发rails的话,可以不用.
- bufexplorer.vim buffer切换
- genutils.vim
- javascript.vim
- blackboard.vim 这个就是模仿TextMate的配色,很重要.
- Monaco字体 这个不是插件,不过这个字体很漂亮 下载地址: http://www.webdevkungfu.com/textmate-envy-aka-monaco-font-for-windows/
基本上vim for rails 已经可以用了.放上我的效果图:
使用
- 不是所有的vim插件都会自动启用的.一般的vim插件都是要使用命令来启动的,我刚用的时候不知道这个,抓狂了一阵子.比如你要使用NERDTree插件,要先输入如下命令:
:NERDTree //我把这个命令映射到 F8 了,请看上面的配置文件.
- rails.vim插件只有一个全局的命令Rails,这个会新建一个Rails项目.
- 其它的rails.vim的命令都是要找开了Rails项目的文件才能使用的,这个我很是郁闷.比如你想查找一个user.rb文件打开,本来是应该使用 Rfind user.rb ,但是由于你的VIM没有打开任何Rails项目中的文件,这个命令不可用!!
- 下面说说我一般的使用方法:
- 打开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的快捷键,由此可见习惯是多么难改变).
评论
mv ~/.vim ~/vim_old # backup your old .vim folder
git clone git://github.com/akitaonrails/vimfiles.git ~/.vim
那个readme是的fork别人的时候原生的:)
我刚已经改了,加上我知识库上的链接,谢谢提醒
开发haml不用什么特別的插件,只要有语法加亮就行了
我那github上的vimfiles里都包含了,可以看第一页中的地址
非常感谢您的指点,您在github上的配合cucumber的中文webrat-cn的文件我也使用了
但实在抱歉由于我是新,我知道在textmate中他的snippet我们在菜单中可以选择使用,
但是在vim中应该没有,而且看它的plugin文件也很不友好,我不知道这个有啥好的解决办法吗
你是希望多了解vim的plugin吗,可以查看已经使用的plugin
ls ~/.vim/plugin/
然后google各个名称,就可以了解plugin的作用的了,我就是这样一个个查的
snippet我之前也试用过,不过没有整理,现在补充上(在文章最后)
http://saberma.github.com/2009/10/10/vim.html
mv ~/.vim ~/vim_old # backup your old .vim folder
git clone git://github.com/akitaonrails/vimfiles.git ~/.vim
可以使用vimgrep命令
:vim(grep) /pattern/ **/*.rb
找到后使用以下命令切换各个文件
:cnext (:cn)
:cprevious (:cp)
:cwindow (:cw)
或者使用linux的grep命令,快很多
grep -r search_key .
这个真是太有用了!!
saberma 同学功德无量.
开发haml不用什么特別的插件,只要有语法加亮就行了
我那github上的vimfiles里都包含了,可以看第一页中的地址
非常感谢您的指点,您在github上的配合cucumber的中文webrat-cn的文件我也使用了
但实在抱歉由于我是新,我知道在textmate中他的snippet我们在菜单中可以选择使用,
但是在vim中应该没有,而且看它的plugin文件也很不友好,我不知道这个有啥好的解决办法吗
开发haml不用什么特別的插件,只要有语法加亮就行了
我那github上的vimfiles里都包含了,可以看第一页中的地址
我怎么试了一直没有反映
可以使用vimgrep命令
:vim(grep) /pattern/ **/*.rb
找到后使用以下命令切换各个文件
:cnext (:cn)
:cprevious (:cp)
:cwindow (:cw)
或者使用linux的grep命令,快很多
grep -r search_key .
想请教一下如何用surround.vim 插件来开发rails中的erb文件,
开发 haml 使用啥插件
另外与textmate相比,它有已安装snip的列表清单,对一开始不熟悉的人比较方便,不知道在vim中有吗
谢谢
可以使用vimgrep命令
:vim(grep) /pattern/ **/*.rb
找到后使用以下命令切换各个文件
:cnext (:cn)
:cprevious (:cp)
:cwindow (:cw)
或者使用linux的grep命令,快很多
grep -r search_key .
<% %> 用啥插件可以帮组解决,她要用到哪些快捷键
用snipmate怎么样
我的gvim有个问题是,当最大化的时候,最下面那一行(就是输入命令那一行)显示不完全,有一大半是看不到的,再次调整一下窗口的大小,就没有问题了,不知道你看不到光标位置是不是由于当前光标在最下面一行,因而显示不了.
不是的,输入命令那一行我这里是可以看到的。没关系了,我使用的时候注意一下就好。
=====================================================
摸索了一下,发现光标看不见是出现在这种情况下:运行gvim,接着最大化窗口,然后输入命令:NERDTree,结果光标就没了。如果是先运行gvim,再输入命令:NERDTree,最后最大化窗口,就不会出现光标消失的情况。以后用gvim就先打开Tree再最大化吧。
我的gvim有个问题是,当最大化的时候,最下面那一行(就是输入命令那一行)显示不完全,有一大半是看不到的,再次调整一下窗口的大小,就没有问题了,不知道你看不到光标位置是不是由于当前光标在最下面一行,因而显示不了.
=====================================================
摸索了一下,发现光标看不见是出现在这种情况下:运行gvim,接着最大化窗口,然后输入命令:NERDTree,结果光标就没了。如果是先运行gvim,再输入命令:NERDTree,最后最大化窗口,就不会出现光标消失的情况。以后用gvim就先打开Tree再最大化吧。
ide中在项目tree文件列表标记svn各种状态还是非常实用的功能。
不知道有支持svn的vim plugin没有
刚才搜索文章发现这个:http://hideto.iteye.com/blog/99511
里面提到的svncommand插件估计是你需要的,有时间我也看看。
早想学一下vim了。前两天看了这个帖子决定正式开始学习vim,发现上手也不是很难。
<% %> 用啥插件可以帮组解决,她要用到哪些快捷键
可以再 vimrc 里面定义快捷键了输入 <% %>
如 Shift+Alt+. 输入 <%= %>:
inoremap <M->> <%=<space><space>%><left><left><left>
谢谢,谢谢
<% %> 用啥插件可以帮组解决,她要用到哪些快捷键
可以再 vimrc 里面定义快捷键了输入 <% %>
如 Shift+Alt+. 输入 <%= %>:
inoremap <M->> <%=<space><space>%><left><left><left>
用了它的,这个事 GVim for Windows 自带的
发表评论
-
Rails 2.3.12下遇到的named route的诡异问题
2011-08-14 21:18 1672周五的时候把网站升级到Rails 2.3.12,本来在本地测试 ... -
ActionMailer的一些配置
2011-08-14 20:59 1673一般情况下,如果你使用gmail的话,都是这样配置的: A ... -
如何自定义处理ActiveRecord中的errors信息
2011-07-26 23:33 2904今天写代码的时候,客服MM向我反馈了一个问题,这个问题本身是很 ... -
Rails 3 下自定义错误信息显示页面
2010-07-08 15:21 3775大家都知道想在Rails下自定义错误显示的页面是修改 resc ... -
paperclip定制文件名
2010-07-02 14:25 3384在新项目中使用了paperclip这个文件上传插件,一切都很满 ... -
Sinatra:一个可以作为Rails有益补充的框架. 简洁而不简单
2010-04-04 15:08 7176一个基于Sinatra的小程序 前些天有一个需求,需要写一个 ... -
require特定版本的gem
2010-03-31 21:07 2588今天有一个需求要单独地使用ActiveRecord,但是我的机 ... -
从Rails 2.3.5 升级到 Rails 3.0 beta
2010-03-27 22:12 2174因为有一个新的项目打算使用Rails 3.0 beta,所以先 ... -
命名时请留意Rails下的关键字
2010-01-22 17:36 2075前些天我在做一个支付集成的接口,对方返回的结果串里面有一个 e ... -
rails下自定义出错页面
2010-01-22 17:17 2367rails出错的时候,一般都是跳转到错误跟踪的页面下,这样在开 ... -
rails下修改http头(http header)
2010-01-22 17:08 5205其实就是修改response中一个叫做headers的Hash ... -
在Rails的controller中访问params的一个小细节
2009-12-02 22:36 7306大家都知道controller中的params其实是一个Has ... -
Thinking Sphinx + Coreseek + rmmseg的安装与使用
2009-10-06 23:48 3825要在Rails上使用全文检索,选择一直不多,以前我一直是使用F ... -
Migrations流水帐
2009-07-11 16:02 1302对于Rails的迁移功能Migrations,一直都只是看一下 ... -
重新安装ruby遇到的问题
2009-06-13 13:14 1331昨天重装了操作系统,要重新安装ruby环境. 因为以前 ... -
JRuby使用经验
2009-05-10 17:06 1989首先我是一个Java程序员 ... -
使用ri查看Rails的API
2009-03-25 23:31 4490我一直都比较习惯直接到 http://www.ruby-doc ... -
Ubuntu Linux下ruby 1.9.1和Rails 2.3升级记录
2009-03-22 00:22 4452安装 ... -
今晚用上了ruby的动态方法调用,open class和mixin三大神器
2009-01-12 00:43 2236今晚人品爆发,一举用上了ruby的动态方法调用,open cl ... -
让rails中多态关联的方法名更加人性化
2008-12-02 22:55 2439rails中的多态关联功能,很好很强大。 但是多态关联的方法 ...
相关推荐
My Vim for Ruby on Rails 开发 MacVim 用户警告 我已经停止使用 MacVim(主要是)并开始在 Tmux 中使用控制台 Vim。 提取到分支的最新 MacVim 配置不再受支持。 但仍包含此处描述的大部分功能。 特征 Ruby on Rails...
现在,你已经在Ubuntu 10.10上成功构建了一个包含Vim和Ruby on Rails开发环境的系统。通过持续学习和实践,你将能够更高效地利用这个环境进行Web应用开发。记住,定期更新系统和依赖,以确保安全性和兼容性。
”这句话生动地描述了Ruby on Rails的独特之处以及它在Web开发领域的影响力。 #### 二、安装 安装Ruby on Rails的方法多样,具体包括: - **InstantRails**:适用于Windows用户的单击安装包。 - **Locomotive**:...
`vim-rubymotion` 是一个专为 RubyMotion 开发者设计的 Vim 插件,它的目标是为 Vim 提供与 `vim-rails` 相似的强大支持,使得在 Vim 编辑器中进行 RubyMotion 项目的开发变得更加高效和便捷。尽管当前该插件可能还...
这个 vagrant 配置文件旨在构建一个随时可用的 Rails开发环境。 什么是流浪者? Vagrant 是一个创建虚拟机的工具。 你可以在 Mac、Windows 或 Linux 上安装 Vagrant 创造环境 $ git clone ...
在当今数字化时代,越来越多的开发工具和环境正逐渐转向云端,以适应全球化、协作和高效开发的需求。本文将详细介绍8个最佳的云端集成开发环境(IDE),它们为开发者提供了便捷、灵活且功能丰富的编码体验。 1. **...
Rails 6 是 Ruby on Rails 框架的一个主要版本,带来了许多新特性和改进,旨在提升开发效率和应用性能。本文将深入探讨 Rails 6 的关键特性,以及如何利用 Shell 命令来管理和操作 Rails 项目。 首先,Rails 6 引入...
此外,了解并掌握一些开发工具,例如Visio、Dreamweaver、Visual Studio、Eclipse、Vim、EditPlus或Notepad++,以及数据库管理工具如phpMyAdmin,浏览器及其开发者工具如Firebug和Web Development Helper,这些都是...
4. **Ruby**:Ruby是一种动态、面向对象的脚本语言,常用于Web开发(如搭配Rails框架)和自动化脚本。 5. **MacVim**:MacVim是在macOS上运行的Vim文本编辑器的一个版本,它提供了与系统更好的集成,如使用Mac的...
Redmine 是一个基于 Web 的项目管理工具,使用 Ruby on Rails 框架开发,需要特定的 Ruby 和 Rails 版本。下面是安装 Redmine 和 Apache2 的详细步骤。 一、安装 Redmine 需要的 Ruby 和 Rails 版本 Redmine 需要...
为Ruby on Rails开发定制Lubuntu。 工具:Vim,RVM,Ruby 1.9.2,Rails 3.1,Tmux,Open Ssh Server,VirtualBox无缝集成。
对于Mac用户来说,TextMate无疑是一款强大的编辑工具,尤其是在Ruby on Rails开发中发挥着重要作用。本文将基于《TextMate: Power Editing for the Mac》这本书的内容,深入探讨TextMate的各项特性及其对开发者的...
Aptana不仅支持JavaScript,还支持Ruby on Rails,并随着技术发展增加了对iPhone和Adobe AIR的开发支持。它拥有代码辅助、代码结构概览、语法错误检查、自定义UI扩展和跨平台兼容性,特别适用于Web2.0应用程序的开发...
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是一个基于Ruby on Rails开发的开源平台,与GitHub相似,它提供了浏览源代码、缺陷跟踪和注释等功能,使得团队成员可以高效地协作开发项目。 在GitLab服务的组成部分中,以下列出的关键组件至关重要: 1. **...
Ruby是一种面向对象的、动态类型的编程语言,广泛用于Web开发,特别是与Rails框架的结合。在安装过程中,我们需要确保Ruby环境已经就绪,并且版本符合Fabriquartz的要求。通常,安装Ruby可以通过管理工具如RVM(Ruby...
2. 使用yum命令安装所有必需的依赖包,这些包涵盖了开发工具、系统工具、编程语言及其开发环境、数据库和网络相关工具等。 3. 这些依赖包包括但不限于vim、readline、ncurses、gdbm、glibc、tcl、openssl、curl、...
在开发领域,不断练习和提升技能至关重要。...同时,不要忘记使用版本控制工具(如 Git)跟踪你的进度,并通过 Vim 提升编码速度。积极参与开源项目和黑客马拉松,可以让你在实践中提升技能,积累实战经验。