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 ...
随机推荐
- Nmap参数详解
转自:http://blog.csdn.net/huangwwu11/article/details/20230795 Nmap--networkmapper,网络探测工具和安全/端口扫描器 nmap ...
- java多线程系类:JUC原子类:05之AtomicIntegerFieldUpdater原子类
概要 AtomicIntegerFieldUpdater, AtomicLongFieldUpdater和AtomicReferenceFieldUpdater这3个修改类的成员的原子类型的原理和用法 ...
- IP地址查询接口及调用方法
1.查询地址 搜狐IP地址查询接口(IP):http://pv.sohu.com/cityjson 1616 IP地址查询接口(IP+地址):http://w.1616.net/chaxun/ipto ...
- thrift中的超时(timeout)坑
最近在项目中采用thrift作为后台服务rpc框架,总体用下来性能还不错,跨语言特性使用起来也还行,但是也遇到了一些坑,其中之一就是超时问题(timeout),如果服务端些的某些业务场景耗时较长,th ...
- 直接启动tomcat时为tomcat指定JDK
第一种: 在windows环境下以批处理文件方式启动tomcat,只要运行<CATALINA_HOME>/bin/startup.bat这个文件,就可以启动Tomcat.在启动时,star ...
- scala速成记录1
选择 Learning Scala这本书,两百多页,足够薄. 安装 http://www.scala-lang.org/ 下载Binary的版本.bin里边有所有操作系统下运行的可以运行的交互式s ...
- C#基础系列——多线程的常见用法详解
前言:前面几节分别介绍了下C#基础技术中的反射.特性.泛型.序列化.扩展方法.Linq to Xml等,这篇跟着来介绍下C#的另一基础技术的使用.最近项目有点紧张,所以准备也不是特别充分.此篇就主要从 ...
- C# double 四舍五入
public static double Round(object data) { if (data == null || data == System.DBNull.Value) { return ...
- JAVA面向对象-多态的理解
面向对象编程有三个特征,即封装.继承和多态. 封装隐藏了类的内部实现机制,从而可以在不影响使用者的前提下改变类的内部结构,同时保护了数据. 继承是为了重用父类代码,同时为实现多态性作准备.那么什么是多 ...
- 使用js实现显示系统当前时间并实现倒计时功能并触发模态框(遮罩)功能
常常在我们的网页中需要倒计时来触发一些函数,例如遮罩等,在本项目中,通过使用jquery,bootstrap,实现了显示系统当前时间,并且实现了倒计时的功能,倒计时实现后将会弹出模态框(遮罩层).模态 ...