Vim配置

1.打开~/.vimrc,将以下内容考入文件.vimrc中

"行号"

set nu

"高亮"

syntax enable
syntax on
"colorscheme cpp.vim "缩进" set cindent
set shiftwidth=3
set tabstop=3 "ctags" ''set tags=~/home/user/project/tags "winmanager" let g:winManagerWindowLayout='FileExplorer|TagList'
nmap wm :WMToggle<cr> "Grep" nnoremap <silent> <F3> :Grep<CR> "SuperTab" "filetype plugin indent on
"set completeopt=longest,menu "let g:SuperTabDefaultCompletionType="context" "关闭vim一致性原则
set nocompatible
" Leader
let mapleader = ","
" Highlight current line
set cursorline "cursorcolumn
" Need confrimation while exit
set confirm
"设置历史记录条数
set history=1000
"设置取消备份禁止临时文件的生成
set nobackup
set noswapfile
"一直显示状态栏
set laststatus=2
"配置backspace的工作方式
set backspace=indent,eol,start
"自动判断编码时依次尝试以下编码
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
"开启语法高亮功能
syntax enable
" Switch syntax highlighting on, when the terminal has colors
if (&t_Co > 2 || has("gui_running")) && !exists("syntax_on")
syntax on
endif
"*********************************************************
" vundle 配置*
"*********************************************************
"set rtp+=~/.vim/bundle/vundle/
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#rc()
" let Vundle manage Vundle
Bundle 'gmarik/vundle'
" My Bundles here:
Bundle 'tpope/vim-fugitive'
Bundle 'Lokaltog/vim-easymotion'
Bundle 'taglist.vim'
Bundle 'The-NERD-tree'
Bundle 'vim-airline/vim-airline'
"Bundle 'scrooloose/syntastic'
Bundle 'tomasr/molokai'
Bundle 'scrooloose/nerdcommenter'
Bundle 'grep.vim'
Bundle 'a.vim'
Bundle 'SuperTab'
"********************************************************
" 一般性配置*
"********************************************************
"显示行号
set number
"设置在编辑过程中右下角显示光标的行列信息
set ruler
"在状态栏显示正在输入的命令
set showcmd
"设置匹配模式
set showmatch
"设置C/C++方式自动对齐
set autoindent
set cindent
"指定配色方案为256色
set t_Co=256
colorscheme molokai
highlight NonText guibg=#060606
highlight Folded guibg=#0A0A0A guifg=#9090D0
"设置搜索时忽略大小写
"set ignorecase
"设置在vim中可以使用鼠标
set mouse=a
if has('mouse')
set mouse-=a
endif
"设置tab宽度
set tabstop=3
"设置自动对齐空格数
set shiftwidth=3
"设置退格键时可以删除4个空格
set smarttab
set softtabstop=3
"将tab键自动转换为空格
set expandtab
"设置编码方式
set encoding=utf-8
"检测文件类型
filetype on
"针对不同的文件采取不同的缩进方式
filetype indent on
"允许插件
filetype plugin on
"启动智能补全
filetype plugin indent on
" Index ctags from any project, including those outside Rails
map <Leader>ct :!ctags -R .<CR>
" nohlsearch shortcut
nmap -hl :nohlsearch<cr>
nmap +hl :set hlsearch<cr>
nnoremap <leader>w :w<CR>
nnoremap <leader>q :q<CR>
" <Leader>f{char} to move to {char}
map <Leader>f <Plug>(easymotion-bd-f)
nmap <Leader>f <Plug>(easymotion-overwin-f)
nnoremap <silent> <F3> :Rgrep<CR>
nnoremap <silent> <C-]> g<C-]>
nnoremap <silent> <F2> :AT<CR>
nnoremap <silent> <F5> :make<CR>
nnoremap <silent> <F6> :cw<CR>
nn <leader>1 1gt
nn <leader>2 2gt
nn <leader>3 3gt
nn <leader>4 4gt
nn <leader>5 5gt
nn <leader>6 6gt
nn <leader>7 7gt
nn <leader>8 8gt
nn <leader>9 9gt
nn <leader>0 10gt
"*****************************************************
" taglist配置*
"*****************************************************
"不显示"press F1 to display help"
let Tlist_Compact_Format=1
"窗口在左侧显示
let Tlist_Use_Right_Window=1
"只显示当前文件的tags
let Tlist_Show_One_File=1
"高亮显示
let Tlist_Auto_Highlight_tag=1
"随文件自动更新
let Tlist_Auto_Update=1
"设置宽度
let Tlist_WinWidth=30
"taglist窗口是最后一个窗口,则退出vim
let Tlist_Exit_OnlyWindow=1
"单击跳转
let Tlist_Use_SingClick=1
"打开关闭快捷键
nnoremap <silent> <F8> :TlistToggle<CR>
"********************************************************
" NERD_Tree 配置*
"********************************************************
"显示增强
let NERDChristmasTree=1
"自动调整焦点
let NERDTreeAutoCenter=1
"鼠标模式:目录单击,文件双击
let NERDTreeMouseMode=2
"打开文件后自动关闭
let NERDTreeQuitOnOpen=1
"显示文件
let NERDTreeShowFiles=1
"显示隐藏文件
let NERDTreeShowHidden=1
"高亮显示当前文件或目录
let NERDTreeHightCursorline=1
"显示行号
let NERDTreeShowLineNumbers=1
"窗口位置
let NERDTreeWinPos='left'
"窗口宽度
let NERDTreeWinSize=31
"不显示'Bookmarks' label 'Press ? for help'
let NERDTreeMinimalUI=1
"快捷键
nnoremap <silent> <F4> :NERDTreeToggle<CR>
"*****************************************************
" Syntastic配置*
"*****************************************************
" configure syntastic syntax checking to check on open as well as save
let g:syntastic_check_on_open=1
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_wq = 0
nnoremap <F7> :SyntasticToggleMode<CR>:SyntasticToggleMode<CR>
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:airline#extensions#whitespace#enabled = 0
"map <F5> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR><CR> :TlistUpdate<CR>
"imap <F5> <ESC>:!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR><CR> :TlistUpdate<CR>
"set tags=tags
"set tags+=./tags "add current directory's generated tags file
"set tags+=~/arm/linux-2.6.24.7/tags "add new tags file

2.打开Vim,执行:BundleInstall

常见操作

  • ctrl+] 到函数定义处,若有多个则自动显示列表
  • F3 全局搜索此字符串
  • F4 打开NerdTree
    • o 替换当前窗口文件
    • t 在新标签页中打开文件
    • i 上下分割当前窗口并打开文件
    • u 到上一级目录
  • F5 编译

可能遇到的问题

如果报错

Not an editor command: ^IBundle 'gmarik/vundle'
Not an editor command: ^IBundle 'gmarik/vundle'

可能没有安装Vundle插件管理,可以通过以下命令安装

git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

注意配置文件文件中则为

set rtp+=~/.vim/bundle/Vundle.vim

而不是原先的

set rtp+=~/.vim/bundle/vundle/

如果出现

Taglist: Exuberant ctags (http://ctags.sf.net) not found in PATH. Plugin is not loaded

则执行

sudo apt-get install ctags

如果想在vim中复制粘贴格式不会错乱,需要在vimrc中加入

set pastetoggle=<F11>

进入插入模式然后使用Fn+F11就可以粘贴了。

Vim配置及使用的更多相关文章

  1. acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)

    日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...

  2. 简单快捷好用的vim配置和终端配置推荐

    vim 配置实用spf13-vim,安装方便简单快捷,极力推荐. 另外oh-my-zsh 终端配置很好,与之搭配使用效果更佳. 安装都很简单,一个脚本搞定, 都是在gitHub上开源的,自行搜索,这里 ...

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

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

  4. centos vim配置高亮语法和格式化粘贴

    centos vim配置高亮语法和格式化粘贴 设置vim别名和高亮grep词语 echo -e "\nalias vi=vim\nalias grep='grep --color'\n&qu ...

  5. vim配置方法

    /etc/vimrc (公共的) ~/.vimrc (私人的) rpm -qa|grep vim 这个命令,如何vim已经正确安装,则会显示上面三个包的名称 全部安装 yum -y install v ...

  6. VIM配置相关记录

    把一直使用中的vim配置做个GIT入库管理,也把之前积累在机器上的文档,做个汇总. https://github.com/wujuguang/kyvim 1. 安装完整版vim vi和vim的区别?在 ...

  7. Vim配置及说明——IDE编程环境

    Vim配置及说明——IDE编程环境 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 9. ...

  8. Env:VIM配置

    注:文章来自于http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配 ...

  9. vim配置python开发环境

    vim配置python开发环境 一.安装vim sudo apt-get install vim 二.vim基础配置 #Centos6.5 /usr/share/vim/vim72 vi /etc/v ...

  10. Vim配置IDE开发环境

    我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...

随机推荐

  1. PAT 天梯赛练习集 L2-016. 愿天下有情人都是失散多年的兄妹

    题目链接:https://www.patest.cn/contests/gplt/L2-016 呵呵.大家都知道五服以内不得通婚,即两个人最近的共同祖先如果在五代以内(即本人.父母.祖父母.曾祖父母. ...

  2. [51nod1074]约瑟夫环V2

    N个人坐成一个圆环(编号为1 - N),从第1个人开始报数,数到K的人出列,后面的人重新从1开始报数.问最后剩下的人的编号. 例如:N = 3,K = 2.2号先出列,然后是1号,最后剩下的是3号. ...

  3. (原创)Java 读取 Highcharts 中的图片

    前言:项目中提出一个新需求,就将Highcharts中的图片读取到Excel中.并在前台做下载,当听到这功能,第一想法是需要由后台编写程序,将数据写道图片中. 虽然没做过但是也没觉得太难,毕竟前辈们肯 ...

  4. mysql linux查看配置文件my.cnf位置

    原文:mysql linux查看配置文件my.cnf位置 命令: mysql --help | grep 'Default options' -A 1

  5. 【BZOJ 1211】 [HNOI2004]树的计数

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] prufer数列的应用 http://www.cnblogs.com/AWCXV/p/7626625.html 这一题没有节点的度数 ...

  6. MyBatis学习总结(6)——调用存储过程

    一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 create table p_user( id int primary key auto_incr ...

  7. Linux下的进程环境

    僵尸进程.孤儿进程.守护进程.进程组.会话.前台进程组.后台进程组 1,僵尸进程 子进程结束,父进程没有明确的答复操作系统内核:已收到子进程结束的消息.此时操作系统内核会一直保存该子进程的部分PCB信 ...

  8. WinServer-IIS-FTP服务器

    在设置FTP服务器的时候,注意SSL的设置,简单尝试的话,不需要启用SSL 常用FTP命令 ftp   进入FTP命令模式 open 192.168.10.6     (连接到FTP主机,或者open ...

  9. ZOJ 3640

    很简单的概率题了 设dp[x]为能力值 为x时出去的期望 天数 #include <iostream> #include <cstdio> #include <cmath ...

  10. poj 2777 Count Color(线段树、状态压缩、位运算)

    Count Color Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 38921   Accepted: 11696 Des ...