Linux下vim 开发环境配置及配色(Ruby)
终端设置
字体:Monospace 10 粗体
内置方案M:黑底白字
内置方案S:Linux控制台
安装vundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
配置文件.vimrc
set nocompatible " be iMproved, required
filetype off " required set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'scrooloose/nerdtree'
Plugin 'mileszs/ack.vim'
Plugin 'tyok/nerdtree-ack'
Plugin 'Xuyuanp/nerdtree-git-plugin'
Plugin 'tpope/vim-rails'
Plugin 'drmingdrmer/xptemplate'
Plugin 'vim-scripts/kkruby.vim'
Plugin 'majutsushi/tagbar'
Plugin 'tpope/vim-ragtag'
call vundle#end() " required colorscheme kkruby
set tabstop=2
set shiftwidth=2
set autoindent
set ai!
set ruler
set smartindent
set incsearch
set hlsearch
set tags+=~/tags/aservice
syntax enable
syntax on
filetype indent on
filetype plugin on let g:tagbar_width = 30 nmap <F2> :NERDTreeToggle<CR>
nmap <F3> :TagbarToggle<CR> autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
安装依赖包
Plugin 'mileszs/ack.vim' => yum install ack
Plugin 'majutsushi/tagbar' 需要安装ctags【它用于生成tag,可以在代码中定位函数(ctrl + ])】,如下:
wget http://prdownloads.sourceforge.net/ctags/ctags-5.8.tar.gz
tar zxvf ctags-5.8.tar.gz
cd ctags-5.8/
./configure
make && make install
cd .. && rm -Rf ctags-5.8/ ctags-5.8.tar.gz
准备完毕,打开Vim中使用 :PluginInstall 安装。
插件介绍
nerdtree
它是一个树形目录,可以用于显示工程的目录结构。
ack.vim
它通过调用ack命令进行全局搜索,可以搜索整个工程文件中的字符串,这个对于新手很实用。
nerdtree-ack
主要是将ack和nerdtree进行连接,这样就可以不用输入命令搜索了,直接在nerdtree中通过ms就能调出搜索。
kkruby
一个ruby开发环境的配色方案。
tagbar
用于显示当前文件的函数列表,其实没什么用。
vim-rails
这个用于rails开发中,在模型视图控制器中进行跳转。
常用命令:
a. 以下命令如不提供参数,可以快速切换到关联文件,例如:当前打开的是视图文件,然后输入 :Econtroller, 那么就会跳转到该视图对应的Controller,其它的命令根据名字推理即可。
:Econtroller,:Eenvironment,:Efixtures,:Efunctionaltest,:Ehelper,:Einitializer,:Eintegrationtest,:Ejavascript,:Elayout,:Elib,:Elocale,:Emailer,:Emigration,:Emodel,:Eschema,:Espec,:Estylesheet,:Etask,:Eunittest,:Eview
b. CTRL-^可以回到上次打开的文件,与Ctrl-6效果一样。
c. 以下几个命令可以用来执行rails命令,比如使用 :Rserver 可以以后台模式启动应用{默认是development}。
:Rgenerate,:Rdestroy,:Rserver,:Rserver!,可以在后面添加参数,如--daemon -b 0.0.0.0
启动时出现的错误:/bin/bash: bin/rails: Permission denied, 因为应用下面的bin/rails没有执行权限,用chmod添加x权限即可。
d. :Rextract 这个命令用与分离内容到到指定文件中。例如:
有一个文件 app/views/blog/show.html.erb 需要抽取一个局部视图出来: 1 <div>
2 <h2><%= @post.title %></h2>
3 <p><%= @post.body %></p>
4 </div> :2,3Rextract post 1 <div>
2 <%= render 'post' %>
3 </div> 生成了app/views/blog/_post.html.erb 内容如下: 1 <h2><%= @post.title %></h2>
2 <p><%= @post.body %></p>
e. :Rlog命令可以用来打开log,默认是development。
xptemplate
自动补全插件。
通过Ctrl-\来进行快速补全。比如在erb模板中输入input,然后Ctrl+\
那么就会生成下面代码(而且还有提示):
<input type="" name="name" value="value"/>
vim-surround
该插件用来补全一下插入语等等,比如在erb模板中 <%= %>。
快捷键是Ctrl-s,然后输入下面的key生成对应的插入语:
= <%= %> - <% -%> # <%# %> Ctr-E <%%><% end %>
因为终端默认Ctrl-s是锁定,所以如果要使用这个功能,可以把它关闭掉,在~/.bashrc 最下面添加一行 stty stop '' 即可,别漏了后面'',然后在当前终端中执行 source ~/.bashrc 即可。
效果图如下
Linux下vim 开发环境配置及配色(Ruby)的更多相关文章
- linux 下vim 开发环境配置(通用所有编程语言)
1.下载 http://www.iterm2.com/ 2.oh-my-zsh curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master ...
- deepin linux 下C开发环境配置
# deepin linux 下C开发环境配置 ## 前言-----------------------------deepin操作系统商店默认提供了 eclipse for c\c++但是系统没有提 ...
- Linux下android开发环境配置
1.安装jdk 1.到sun官网下载jdk(附jdk6下载地址),根据自己的ubuntu版本选择合适的jdk版本.如你用的是ubuntu 32位系统则选择下载jdk-6u41-linux-i586.b ...
- Linux下java开发环境配置总结
1 安装JDK,卸载以前的jdk,安装jdk1.8 : 参考:http://www.jb51.net/os/RedHat/73016.html 需要注意配置环境变量中的路径要和当前安装的jdk路径一致 ...
- windows及linux下 golang开发环境配置
windows环境: 1.系统以及软件包版本: OS: windows 8.1 64位 x64处理器 GO:安装包:go1.7.3.windows-amd64.mis IDE:压缩包:liteid ...
- Linux—CentOS7下python开发环境配置
CentOS7下python开发环境配置 上一篇博客讲了如何在Centos7下安装python3(https://www.cnblogs.com/zivli/p/9937608.html),这一次配置 ...
- 【Objective-C】Windows下Objective-C开发环境配置
[Objective-C]Windows下Objective-C开发环境配置 ftp://ftpmain.gnustep.org/pub/gnustep/binaries/windows/ 最近打 ...
- Linux下安装Java环境配置
1.下载安装文件 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2. ...
- 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明
目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...
随机推荐
- ST教学分析:相同行为连续数
转载自:http://zhidao.baidu.com/link?url=cm8k1RuA3fZ8FQCHYXXiY7xseVs5IJo63A8oq3FZwhSgaGNe4c2U2ZDpBToGYn5 ...
- C#进阶系列——动态Lamada(二:优化)
前言:前几天写了一篇动态Lamada的文章C#进阶系列——动态Lamada,受园友xiao99的启发,今天打算来重新优化下这个动态Lamada的工具类.在此做个笔记,以免以后忘了. 一.原理分析 上篇 ...
- JS正则表达式进阶
贪婪量词 惰性量词 支配量词 描述--------------------------------------------------------- ...
- JavaScript的理解记录(6)
---接上篇: 四.CSS相关: 1.CSS不支持注释// 支持注释/* */ 2. 几种浏览器厂商前缀: Firefox : -moz-; Chrome:-webkit- ; IE: ...
- iOS常用 --- NSDictionary 与 NSMutableDictionary
一.NSDictionary 字典的两种创建方法 NSDictionary *dic1 =[[NSDictionary alloc]init]; 2 // 或: 3 NSDictionary *dic ...
- 并查集(union-find)算法
动态连通性 . 假设程序读入一个整数对p q,如果所有已知的所有整数对都不能说明p和q是相连的,那么将这一整数对写到输出中,如果已知的数据可以说明p和q是相连的,那么程序忽略p q继续读入下一整数对. ...
- CentOS 6.5安装在VMWare中Bridge模式下网卡eth0不能自动激活的问题
VMWare 12.5.2 CentOS 6.5 basic VMWare网卡配置选择Bridge方式 问题: 默认情况下ifconfig命令只能看到网络设备lo,看不到eth0,也没有分配合理的IP ...
- 源码升级安装python
1.下载 python: https://www.python.org/downloads/release/python-2712/ 2.编译安装 sudo mkdir /usr/local/pyth ...
- js-JavaScript高级程序设计学习笔记19
第22章 高级技巧 1.高级函数 1.安全的类型检测. typeof,instanceof并非完全可靠. 安全的类型检测:使用Object原生的toString()方法. function isArr ...
- JAVA 技术手册 卷1 第十四章『多线程』 读书摘要
什么是线程 进程受CPU时间片的轮转调度,进而予人多任务并发的感觉. 线程在更低层次上扩展多任务概念,一个进程通常包含多个线程. 进程各自数据独立,而线程共享数据. 数据独立使进程相互通信变得繁难,共 ...