我的vim 配置——nerdtree、ack vim、vim sneak
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 |
|
- 支持搜索指定文件类型
1 |
|
install
1 |
|
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 |
|
安装代码快速跳转——太特么好用了!!!
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的更多相关文章
- [vim配置]windows下在vim中使用gcc/g++编译调试c/cpp文件
在Linux里面混了一个多月,vim编程用得甚爽.无奈前天将Linux里面的编程文件夹误删,而技术不精无法找回,悲痛欲绝.再者,无限怀念windows里面的游戏,并觉得现在在Linux里面也学不到什么 ...
- Vim配置持续记录
1. 家目录创建.vimrc文件 set nu # 设置行号 set tabstop=4 # tab制表符缩进 set autoindent # 自动缩进 set showmatch # 括号匹 ...
- Linux下VIM配置以及常用快捷键
一.VIM配置 在目录 /etc/vim下面,有个名为vimrc的文件,这是系统中公共的vim设置文件,对所有用户都有效.而在每个用户的主目录下,都能自己建立私有的设置文件,命名为:“.vimrc”. ...
- 在vim中安装及配置NERDTree插件
使用Vundle插件安装,在.vimrc中加入以下代码: Plugin 'scrooloose/nerdtree' 打开vim,输入命令如下: :BundleInstall 等待安装完毕 配置NERD ...
- vim配置之——ctags与TagList的配置以及NERDTree && doxygentoolkit的安装
参考(2)vim插件:显示树形目录插件NERDTree安装 和 使用 本文档主要对Linux下vim的ctags,TagList,NerdTree与doxgentoolkit进行相关的配置. 以下部分 ...
- 我的Shell + VIM配置
1. 安装powerline-shell 下载powerline-shell # cd /opt/ # git clone https://github.com/milkbikis/powerline ...
- 大神的vim配置
大神的vim配置,O(∩_∩)O spf13-vim : Steve Francia's Vim Distribution __ _ _____ _ ___ _ __ / _/ |___ / __ _ ...
- 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础
上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...
- 我的Vim配置(自动补全/树形文件浏览)
配置文件的下载路径在这里 http://files.cnblogs.com/files/oloroso/vim.configure.xz.gz 这实际上是一个 xz 格式的文件,添加的 gz 文件后 ...
随机推荐
- .net对象的生命周期
阅读了文章:.NET对象生命周期小结 文章分多个部分,第一部分:介绍了,创建对象时,内存的分配,对象真正被创建,以及经历各阶段垃圾回收的过程. 第二部分,介绍了Finalize与Dispsose方法.
- Light OJ-1082 - Array Queries,线段树区间查询最大值,哈哈,水过~~
...
- [转] SQL SERVER 2008 R2 安装中的账户设置问题
故纸堆 原文:SQL SERVER 2008安装中设置账户的问题,2013-7 在安装SQL Server 2008数据库服务器的时候,服务器有可能处于以下几种环境中: ①工作组环境下的服务器 (Wo ...
- sql server2008 R2 各个版本的区别与选择
目前已知的SQL Server 2008 R2的版本有: 企业版.标准版.工作组版.Web版.开发者版.Express版.Compact 3.5版. 这个次序也是各个版本功能的强大程度从高到低的一个排 ...
- java验证身份证号码是否有效源代码
原文:http://www.open-open.com/code/view/1420373343171 1.描述 用java语言判断身份证号码是否有效,地区码.出身年月.校验码等验证算法 2.源代码 ...
- 获取鼠标位置的几个通用的JS函数
原文:http://www.open-open.com/code/view/1421401009218 /*两个通用函数,用于获取鼠标相对于整个页面的当前位置*/ function getX(e) { ...
- 火狐firefox、谷歌chrome等浏览器扩展、插件介绍
火狐旧的插件扩展已经不可用,需要更新,这是本人安装的最新的插件 chrome插件 https://www.zhihu.com/question/68338297
- [转]JAVA对象容器
要用Java实现记事本的功能.首先列出记事本所需功能: 可以添加记录(字符串): 可以获得记录条数: 可以删除其中某一条记录: 可以获得指定第几条的记录: 可以列出所有的记录. 如果这个记事本是某个大 ...
- Markdown 语法和代码高亮
安装 Python Markdown 安装命令 pip install markdown 视图中渲染 Markdown blog/views.py import markdown from djang ...
- ExtJS学习-----------Ext.Object,ExtJS对javascript中的Object的扩展
关于ExtJS对javascript中的Object的扩展.能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...