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. Codeforces 892 A.Greed

    A. Greed time limit per test 2 seconds memory limit per test 256 megabytes input standard input outp ...

  2. SkyWalking 分布式追踪系统

    随着微服务架构的流行,一些微服务架构下的问题也会越来越突出,比如一个请求会涉及多个服务,而服务本身可能也会依赖其他服务,整个请求路径就构成了一个网状的调用链,而在整个调用链中一旦某个节点发生异常,整个 ...

  3. ubuntu,CentOS永久修改主机名

    1.查看主机名 在Ubuntu系统中,快速查看主机名有多种方法: 其一,打开一个GNOME终端窗口,在命令提示符中可以看到主机名,主机名通常位于“@”符号后: 其二,在终端窗口中输入命令:hostna ...

  4. 【Java源码】集合类-队列Queue

    一.描述 队列Queue这种数据结构,通常指先进先出(FIFO)这种容器.可以模拟生活中依次排队这种场景. 下面是集合体系继承树: 二.Queue Queue和List一样都是Collection的子 ...

  5. 一致性哈希算法-----> 解决memecache 服务器扩容后的数据丢失。

    1 基本场景 比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 ...

  6. 【.Net Core 学习系列】-- EF Core 实践(Code First)

    一.开发环境: VS2015, .Net Core 1.0.0-preview2-003156 二解决方案: 新建项目: File --> New --> Project -->   ...

  7. 查看MySQL系统变量的命令

    用了好长时间mysql,却没有用心记住一些有用的东西,加油! mysql> SHOW VARIABLES; +---------------------------------+-------- ...

  8. maven生命周期和依赖的范围

    转载:http://blog.csdn.net/J080624/article/details/54692444 什么是依赖? 当 A.jar 包用到了 B.jar 包时,A就对B产生了依赖: 在项目 ...

  9. hdu1042 (模拟n!)

    题目大意: 求 n.(可能会超过整数范围,这里用数组模拟n!的值) pid=1042">http://acm.hdu.edu.cn/showproblem.php?pid=1042 A ...

  10. 吉哥系列故事——完美队形II(hdu4513+Manacher)

    吉哥系列故事--完美队形II Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) T ...