我的vim 配置——nerdtree、ack vim、vim sneak
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | 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
然后再:
brew install ack
apt-vim install -y https://github.com/mileszs/ack.vim.git
apt-vim install -y
然后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
2
|
|
install
1
2
3
4
|
|
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
|
|
安装代码快速跳转——太特么好用了!!!
apt-vim install -y https://github.com/justinmk/vim-sneak.git
然后 vimrc加入
let g:sneak#label = 1
vim 里使用 s?? 其中??为你要搜索的两个精确字符。使用;,和进行快速跳转!

标签:
其他
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」