Vim配置及使用
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配置及使用的更多相关文章
- acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)
日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...
- 简单快捷好用的vim配置和终端配置推荐
vim 配置实用spf13-vim,安装方便简单快捷,极力推荐. 另外oh-my-zsh 终端配置很好,与之搭配使用效果更佳. 安装都很简单,一个脚本搞定, 都是在gitHub上开源的,自行搜索,这里 ...
- 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础
上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...
- centos vim配置高亮语法和格式化粘贴
centos vim配置高亮语法和格式化粘贴 设置vim别名和高亮grep词语 echo -e "\nalias vi=vim\nalias grep='grep --color'\n&qu ...
- vim配置方法
/etc/vimrc (公共的) ~/.vimrc (私人的) rpm -qa|grep vim 这个命令,如何vim已经正确安装,则会显示上面三个包的名称 全部安装 yum -y install v ...
- VIM配置相关记录
把一直使用中的vim配置做个GIT入库管理,也把之前积累在机器上的文档,做个汇总. https://github.com/wujuguang/kyvim 1. 安装完整版vim vi和vim的区别?在 ...
- Vim配置及说明——IDE编程环境
Vim配置及说明——IDE编程环境 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 9. ...
- Env:VIM配置
注:文章来自于http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配 ...
- vim配置python开发环境
vim配置python开发环境 一.安装vim sudo apt-get install vim 二.vim基础配置 #Centos6.5 /usr/share/vim/vim72 vi /etc/v ...
- Vim配置IDE开发环境
我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...
随机推荐
- 使用LayUI在页面实现加载层(图标)代码:
实现代码: var index = layer.load({ shade: [0.4,'#def'], icon :' 实现效果: 可以使用 layer.close(index); 来控制其在什么时 ...
- Codeforces Round #493 (Div. 1) B. Roman Digits 打表找规律
题意: 我们在研究罗马数字.罗马数字只有4个字符,I,V,X,L分别代表1,5,10,100.一个罗马数字的值为该数字包含的字符代表数字的和,而与字符的顺序无关.例如XXXV=35,IXI=12. 现 ...
- 四、分布式 Git(未完待续)
一.分布式工作流程 在 Git 中,每个开发者同时扮演着节点和集线器的角色——也就是说,每个开发者既可以将自己的代码贡献到其他的仓库中,同时也能维护自己的公开仓库,让其他人可以在其基础上工作并贡献代码 ...
- Layui父页面向子页面传参
废话不多说!直接上代码! 父窗体js $('.mytable').on('click', '.editRow', function () { var table = $('#table_id_exam ...
- 2019-03-14 Python爬虫问题 爬取网页的汉字打印出来乱码
html = requests.get(YieldCurveUrl, headers=headers) html=html.content.decode('UTF-8') # print(html) ...
- 推荐几款常用的Eclipse插件
Eclipse 应该说是老牌也是最常用的Java开发工具,尽管这几年 InstelliJ IDEA 的发展势头很强劲,身边使用和推崇的人也大有人在,但个人而言还是觉有些不太习惯.这里也介绍几款自己常用 ...
- android 使用讯飞人脸识别api报错:java.lang.UnsatisfiedLinkError
1.在做一个人脸识别的项目,使用的是讯飞的api,编辑器为AS2.0,运行时报如下错误: FATAL EXCEPTION: main Process: com.adm ...
- Qt之设置应用程序图标
简述 应用程序图标,通常显示在应用程序的顶层窗口的左上角,通过调用QWindow:setWindowIcon()函数来实现. 为了改变可执行程序文件本身的图标,因为它被呈现在桌面上,它必须采用另一种依 ...
- Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0
Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0 系统环境: 操作系统:RedHat EL6(64位) Oracle: Oracle 11gR2 ...
- [NOI.AC#32]sort 构造
链接 50分做法(只有0,1) 根据归并排序的思想,假设我们现在已经把 \(l\dots mid\) 和 \(mid+1\dots r\) 排好序 只要把左边连续的1和右边连续的0翻转即可 inlin ...