Linux下vim 开发环境配置及配色(Ruby)

时间:2023-03-08 15:40:57

终端设置

字体: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)