set nu
colorscheme darkblue
syntax on
" set term=xterm " 设置终端类型
set nonumber " 是否显示行号。
set ambiwidth=double " 将所有字符显示为全角宽度
set wildmenu " 自动补全的时候,将补全内容使用一个漂亮的单行菜单形式显示出来。
set whichwrap=b,s,<,>,[,] " 光标从行首和行末时可以跳到另一行去
set nobackup " 取消备份
set noswapfile " 不生成交换文件
autocmd FileType * setl fo-=cro " 关闭自动添加注释的效果
" 支持鼠标滚动
" set mouse=a
colorscheme elflord " 设定颜色主题
" netrw文件浏览器
set autochdir " 当打开一个文件时,自动切换到该文件所在的目录
let g:netrw_altv = 1 " 与preview项相配合,在右侧打开预览文件
let g:netrw_preview = 1 " 在一个垂直列表中打开预览文件
let g:netrw_liststyle = 3 " 列表模式-文件夹浏览模式
let g:netrw_winsize = 30 " 文件夹列表的宽度(30个字符)
let g:netrw_browse_split = 4 " 在当前窗口的新区域内预览文件(与P操作相同)
" 编写函数实现开关 Vexplore 文件夹列表的效果
function! ToggleVExplorer()
if exists("t:expl_buf_num")
let expl_win_num = bufwinnr(t:expl_buf_num)
if expl_win_num != -1
let cur_win_nr = winnr()
exec expl_win_num . 'wincmd w'
close
exec cur_win_nr . 'wincmd w'
unlet t:expl_buf_num
else
unlet t:expl_buf_num
endif
else
"exec '1wincmd w'
Vexplore
let t:expl_buf_num = bufnr("%")
endif
endfunction
" 按键 => 指令快捷方式
map <C-n> :tabn<CR>
map <C-b> :tabprevious<CR>
map <S-t> :call ToggleVExplorer()<CR>
set paste " 复制模式
map <C-p> :NERDTreeToggle<CR>
execute pathogen#infect()
call pathogen#helptags()
let g:sneak#label = 1
" Use deoplete.
" let g:deoplete#enable_at_startup = 1
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set autoindent

我的配置就是酱紫!

其中,还需要做的工作有以下几个:

安装nerdtree插件,两种方式,推荐第二种(1) http://www.vim.org/scripts/script.php?script_id=1658

下载zip,然后解压到.vim目录下。

(2)或者是通过vim插件管理工具apt-vim安装:

curl -sL https://raw.githubusercontent.com/egalpin/apt-vim/master/install.sh | sh

apt-vim install -y https://github.com/scrooloose/nerdtree.git

.vimrc中输入,

map <C-p> :NERDTreeToggle<CR>

就可以使用ctrl p来关闭nerdtree的窗口了!

nerdtree窗口乱码解决方法:
#     今天在centos上安装了vim74 ,把配置文件vimrc和nerdtreee插件付上后发现nerdtree 目录树为'铝'
# 这样的乱码符号,正常应该为'+'号
# 下面是解决办法
           vim /usr/local/share/vim/vim74/plugin/NERD_tree.vim      # 编辑插件
                 # 找到下面这句把那个"!"去掉,保存退出重启vim即可
                 call s:initVariable("g:NERDTreeDirArrows", !s:running_windows) 安装代码搜索插件,ack vim——太特么好用了!
mac: brew install ack
然后再:
apt-vim install -y https://github.com/mileszs/ack.vim.git
然后vim里:Ack find-pattern dir 就可以在指定的dir里查找了。

Ack是一个给程序员用的grep, 使用perl regular expressions, 而不是POSIX/GNU subset.

why ack?

  • 使用perl regular expressions, 忘掉grep那套不人性的pattern吧
  • 速度快, 默认只搜索程序代码文件
  • 自动忽略.svn, .git, CVS这类目录, 默认递归搜索子目录
1
2
3
4
5
6
  1. # with grep
  2. $ grep pattern $(find . -type f | grep -v '\.svn')
  3. or
  4. $ grep -R --exclude-dir .svn pattern
  5. # with ack
  6. $ ack pattern
  • 支持搜索指定文件类型
1
2
  1. # 只搜索ruby code
  2. $ ack --ruby pattern

install

1
2
3
4
  1. # mac
  2. $ brew install ack
  3. # ubuntu
  4. $ sudo apt-get install ack-grep

integrate into vim

  • install ack.vim
  • set grepprg=ack in vimrc

custom ack

Ack默认包含很多filetype => extensions的设置,但新出现的语言不一定支持。好在ack提供--type-add TYPE=.EXTENSION[,.EXT2[,...]]--type-set TYPE=.EXTENSION[,.EXT2[,...]]来扩展。经常用的可以加到~/.ackrc里, 我的.ackrc:

1
2
3
4
5
6
7
  1. $ cat ~/.ackrc
  2. --type-add
  3. ruby=.haml,.ru
  4. --type-add
  5. css=.scss,.sass,.less
  6. --type-add
  7. js=.coffee
 

安装代码快速跳转——太特么好用了!!!

apt-vim install -y https://github.com/justinmk/vim-sneak.git
然后 vimrc加入
let g:sneak#label = 1

vim 里使用 s?? 其中??为你要搜索的两个精确字符。使用;,和进行快速跳转!


 

我的vim 配置——nerdtree、ack vim、vim sneak的更多相关文章

  1. [vim配置]windows下在vim中使用gcc/g++编译调试c/cpp文件

    在Linux里面混了一个多月,vim编程用得甚爽.无奈前天将Linux里面的编程文件夹误删,而技术不精无法找回,悲痛欲绝.再者,无限怀念windows里面的游戏,并觉得现在在Linux里面也学不到什么 ...

  2. Vim配置持续记录

    1. 家目录创建.vimrc文件 set nu    # 设置行号 set tabstop=4 # tab制表符缩进 set autoindent # 自动缩进 set showmatch # 括号匹 ...

  3. Linux下VIM配置以及常用快捷键

    一.VIM配置 在目录 /etc/vim下面,有个名为vimrc的文件,这是系统中公共的vim设置文件,对所有用户都有效.而在每个用户的主目录下,都能自己建立私有的设置文件,命名为:“.vimrc”. ...

  4. 在vim中安装及配置NERDTree插件

    使用Vundle插件安装,在.vimrc中加入以下代码: Plugin 'scrooloose/nerdtree' 打开vim,输入命令如下: :BundleInstall 等待安装完毕 配置NERD ...

  5. vim配置之——ctags与TagList的配置以及NERDTree && doxygentoolkit的安装

    参考(2)vim插件:显示树形目录插件NERDTree安装 和 使用 本文档主要对Linux下vim的ctags,TagList,NerdTree与doxgentoolkit进行相关的配置. 以下部分 ...

  6. 我的Shell + VIM配置

    1. 安装powerline-shell 下载powerline-shell # cd /opt/ # git clone https://github.com/milkbikis/powerline ...

  7. 大神的vim配置

    大神的vim配置,O(∩_∩)O spf13-vim : Steve Francia's Vim Distribution __ _ _____ _ ___ _ __ / _/ |___ / __ _ ...

  8. 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

    上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...

  9. 我的Vim配置(自动补全/树形文件浏览)

    配置文件的下载路径在这里  http://files.cnblogs.com/files/oloroso/vim.configure.xz.gz 这实际上是一个 xz 格式的文件,添加的 gz 文件后 ...

随机推荐

  1. 【Ajax 2】封装Ajax的核心对象:XMLHttpRequest对象

    导读:AJAX利用一个构建到所有现代浏览器内部的对象-XMLHttpRequest-来实现发送和接收HTTP请求与响应信息.那么,XMLHttpRequest对象是怎么创建和封装的呢? 一.简介 1. ...

  2. 洛谷 P2008 大朋友的数字

    DP,动态规划   树状数组   最长不下降子序列 by  GeneralLiu 题目 就是说给一串由 0~9 组成的序列 求 以 i (1~n) 结尾 的 最长不下降子序列 的 和 (最长不下降子序 ...

  3. [HNOI2012] 永无乡 题解

    题意: n个点,有加边操作,询问与某一点处于相同的联通块的点中权值第k大的点 思路: 对所有点建立一棵权值线段树,加边就配合并查集进行线段树合并 反思: 动态开点,权值线段树要用sum[g[x=fin ...

  4. Java并发编程:自己动手写一把可重入锁

    关于线程安全的例子,我前面的文章Java并发编程:线程安全和ThreadLocal里面提到了,简而言之就是多个线程在同时访问或修改公共资源的时候,由于不同线程抢占公共资源而导致的结果不确定性,就是在并 ...

  5. 洛谷P4219 - [BJOI2014]大融合

    Portal Description 初始有\(n(n\leq10^5)\)个孤立的点,进行\(Q(Q\leq10^5)\)次操作: 连接边\((u,v)\),保证\(u,v\)不连通. 询问有多少条 ...

  6. (在线工具)JSON字符串转换成Java实体类(POJO)

    http://www.bejson.com/json2javapojo/ 付代码代码转换示例: public static FixMixedOrderResponse serialization(St ...

  7. Linux怎么读? Linux读音考古一日游

    Linux怎么读?  Linux读音考古一日游/*凡是准备踏入Linux大门的叉子们(N年不关注了,不知道这个称呼是否还有),都必须经历疑问 那就是linux到底怎么读? 也许有些人很容易 什么里纽克 ...

  8. Codevs 2693 上学路线(施工)

    时间限制: 2 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 问题描述 你所在的城市街道好像一个棋盘,有a条南北方向的街道和b条东西方向的街道. 南 ...

  9. HDU 4786 Fibonacci Tree(生成树,YY乱搞)

    http://acm.hdu.edu.cn/showproblem.php? pid=4786 Fibonacci Tree Time Limit: 4000/2000 MS (Java/Others ...

  10. 【python】urllib2

    urllib2.urlopen(url[, data][, timeout]) 请求url,获得请求数据,url参数可以是个String,也可以是个Request参数 没有data参数时为GET请求, ...