vim nerdtree 标签_学业支持 | OS课程——给你的vim换套新衣服

38a6d92d7fb1228539f312cd00d94762.gif

Vim配置指南

01

38a6d92d7fb1228539f312cd00d94762.gif

前言

本文只是一个基本的vim配置,按照笔者的习惯稍微装了一些插件,更多的个性化还是请同学们自己动手(不过学校这土豆服务器emmmm)

效果如图(Omni补全而不是关键字补全)

fdaa4e89cf9fce1fc09ca242feabaef6.png

安装了:

--ctags并提前生成tags文件

--NERDTree

--Tagbar

--supertab

--vim-colors-solarized

这篇文章的产生,离不开Ausar的一个简单但是实用的VIM配置文件,在此感谢Ausar,Ausar nb!(溜

(顺便建议万事多看README.md

(顺便传教zsh,自动补全不分大小写且按tab就能切换是真的爽

说明:

按照插件包配置

02

38a6d92d7fb1228539f312cd00d94762.gif

准备工作

如果你从来没有安装过插件/更改过vim的配置,那么你需要先建立vim的配置文件夹在~目录下(就是home文件夹)

mkdir .vim

mkdir .vim/autoload

mkdir .vim/bundle

--运行指令touch .vimrc,建立一个空的vim配置文件

--在.bashrc/.zshrc中加入

export TERM=xterm-256color,将终端设为256色,让主题好看点

--这样就算是准备工作做好了

--此外,助教给的插件包是zip格式的,解压相当简单,最好新建一个tmp文件夹以免搞乱

mkdir tmp

cp plugins.zip ./tmp

cd tmp

unzip plugins.zip

mv 插件包 plugins

mkdir tmpSpace

(强迫症患者一定要整整齐齐)

03

38a6d92d7fb1228539f312cd00d94762.gif

tarball文件安装

参考

http://www.tldp.org/HOWTO/Software-Building-HOWTO-2.html

http://www.tldp.org/HOWTO/Software-Building-HOWTO-3.html

最重要是助教的说明(

以ctags为例

--在home下建立文件夹:mkdir ~/localtools

--在tmp下首先复制并解压:

cp plugins/ctags-5.8.tar.gz tmpSpace

cd tmpSpace

tar xzvf ctags-5.8.tar.gz

--进入ctags文件夹,configur并make

cd ctags-5.8

./configure --prefix=$HOME/localtools/ctags

make -j all

make install

现在ctags已经安装完成,需要把文件夹加入$PATH

--在.bashrc/.zshrc(根据你的终端决定)中加入

export PATH=~/localtools/ctags/bin:$PATH

--退掉并重新打开终端或source ~/.bashrc 之后,运行 ctags --version 应该就有结果了

--rm tmpSpace/*清理掉残局

04

38a6d92d7fb1228539f312cd00d94762.gif

插件管理器安装

vim有很多插件,一个一个安装管理相当麻烦,因此,就产生了专门安装插件的插件

这里以Plugin.zip里的pathogen为例

--首先把插件拷贝到tmpSpace里并解压

cp plugins/vim-pathogen-master.zip tmpSpace

cd tmpSpace

unzip vim-pathogen-master.zip

--接着,按照插件上的说明,将pathogen.vim拷贝到~/.vim/autoload/

cp vim-pathogen-master/autoload/pathogen.vim ~/.vim/autoload/

--向~/.vimrc开头写入以下内容:

execute pathogen#infect()

syntax on

filetype plugin indent on

--插件管理器的安装就算完成了,rm tmpSpace/*清理掉残局

05

38a6d92d7fb1228539f312cd00d94762.gif

个人基本配置

以下部分大量参考Ausar的一个简单但是实用的VIM配置文件

inoremap ' ''

inoremap " ""

inoremap ( ()

inoremap [ []

inoremap { {}O

autocmd InsertLeave * se nocul " 用浅色高亮当前行

autocmd InsertEnter * se cul " 用浅色高亮当前行

" autocmd InsertLeave * se nocuc "高亮当前列

" autocmd InsertEnter * se cuc "高亮当前列

"搜索逐字符高亮

set hlsearch

set incsearch

set ruler "在编辑过程中,在右下角显示光标位置的状态行

set laststatus=1  "总是显示状态行

set showcmd "在状态行显示目前所执行的命令,未完成的指令片段也会显示出来

set scrolloff=3 "光标移动到buffer的顶部和底部时保持3行的距离

set nu

" 鼠标,一打开就很玄学的导致卡,我就不打开了

" set mouse=a

06

38a6d92d7fb1228539f312cd00d94762.gif

插件安装

.vmb格式插件安装

emmmm很遗憾,咱们这个包里什么样的文件都有,有用pathogen安装着方便的,也有直接装方便的。

.vmb就是一种直接装更方便的,以supertab为例

--在tmp下直接vim plugins/supertab.vmb

--输入 :so %完成安装

一般压缩包(github下载下来)型插件

这种形式一般用pathogen管理比较方便,直接解压缩把整个文件夹放在~/.vim/bundle里就好

注意:很多这种插件都会要求在.vimrc里写入配置,仔细读README.md之类的文档

以nerdtree为例

--首先把插件拷贝到tmpSpace里并解压

cp plugins/NERD_tree.tgz tmpSpace

cd tmpSpace

tar xzvf NERD_tree.tgz

--把文件夹拷贝过去,cp NERD_tree ~/.vim/bundle -r 就大功告成了!

--打开vim,输入:NERDTree,你应该就能看见它出现了

类似的插件也都可以这么安装

07

38a6d92d7fb1228539f312cd00d94762.gif

部分插件基本配置说明

ctags生成标签

OmniComplete和跳转都需要

在当前目录下递归生成: ctags -R --fields=+S . 运行完毕后当前目录应有一个tags文件

此时在非插入模式下,在需要查找的符号上按Ctrl+]就能跳转过去,再按Ctrl+o就能跳转回来,vim的Omni补全应该也能用了(ctrl-x ctrl-o)

supertab配置

在~/.vimrc里根据个人喜好加入如下内容

" Supertab

" 预览模式,个人喜欢不出预览窗口,你们如果习惯Omni补全时有预览可以换用下面被注释掉这行

" set completeopt=preview,menu

set completeopt=longest,menu

autocmd InsertLeave * if pumvisible() == 0|pclose|endif "离开插入模式后自动关闭预览窗口

inoremap        pumvisible() ? "\" : "\"    "回车即选中当前项

"用上下左右键移动

inoremap      pumvisible() ? "\" : "\"

inoremap        pumvisible() ? "\" : "\"

inoremap pumvisible() ? "\\\" : "\"

inoremap    pumvisible() ? "\\\" : "\"

" 记住上次补全模式,直到退出插入模式

let g:SuperTabRetainCompletionType = 2

" 默认用C-P补全(关键词补全),如果后续生成tags文件也可以选择用Omni补全

let g:SuperTabDefaultCompletionType = ""

" (个人喜好)把Ctrl-z映射为Omni补全(按下Ctrl-z之后Tab也会变成Omni补全,退出插入模式再进入就回到默认了)

inoremap

preview模式如图所示

600490ccc89ec835ccbee8e72155d4b2.png

NERDTree配置

~/.vimrc里根据个人喜好加入如下内容

" nerdtree

" 如果vim后没有跟文件名就自动打开NERDTree

autocmd StdinReadPre * let s:std_in=1

autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif

" 把键映射为开关NERDTree

map :NERDTreeToggle

Tagbar配置

~/.vimrc里根据个人喜好加入如下内容

" Tagbar

" 设置tagbar的窗口宽度

let g:tagbar_width=25

" 映射Tagbar的快捷键,按F3自动打开

map :TagbarToggle

vim-colors-solarized配置

一定要在.bashrc/.zshrc中加入export TERM=xterm-256color,将终端设为256色(要不然丑炸

以及即使这样设置好像还是有些问题。。。

6e2d3f1597023f24b55aff1057fdfc83.png

~/.vimrc里必须加入如下内容,严格按顺序

" vim-colors-solarized

let g:solarized_termcolors=256

colorscheme solarized

set background=dark " 也可选择light,三思(

08

38a6d92d7fb1228539f312cd00d94762.gif

总结碎碎念

(zsh好,zsh妙,zsh的Tab键呱呱叫

如果有什么插件很迷惑,就去看他的README文件吧,基本能解决问题。实在不行就,还有百度嘛。

其实配了也没多大用学校这令人恼怒的土豆(x

总之希望大家能在os课程中愉快学习,共渡难关!

文 | 王鹏博

版 | Crazy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值