zoukankan      html  css  js  c++  java
  • 自己的~/.vimrc

    " 语法高亮
    syntax on

    " 搜索高亮
    set hlsearch

    " 显示行号
    set number"

    let mapleader=","

    set pastetoggle=<F10>

    set backspace=indent,eol,start

    " 基本缩进效果
    set smartindent
    set tabstop=4
    set shiftwidth=4
    set expandtab
    set autoindent


    let g:ycm_server_python_interpreter='/usr/bin/python'
    let g:ycm_global_ycm_extra_conf='/home/jyb/.vim/.ycm_extra_conf.py'
    let g:ycm_enable_diagnostic_highlighting = 0

    set nocompatible " be iMproved, required........
    filetype off " required

    " set the runtime path to include Vundle and initialize
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    " alternatively, pass a path where Vundle should install plugins
    "call vundle#begin('~/some/path/here')


    " let Vundle manage Vundle, required
    Plugin 'VundleVim/Vundle.vim'
    " Plugin 'Valloric/YouCompleteMe'
    Bundle 'ctrlpvim/ctrlp.vim'
    Bundle 'taglist.vim'
    Plugin 'easymotion/vim-easymotion'
    Plugin 'jiangmiao/auto-pairs'
    Plugin 'git://github.com/scrooloose/nerdtree.git'
    Plugin 'vim-airline/vim-airline'
    Plugin 'vim-airline/vim-airline-themes'

    " The following are examples of different formats supported.
    " Keep Plugin commands between vundle#begin/end.
    " plugin on GitHub repo
    "Plugin 'tpope/vim-fugitive'
    " plugin from http://vim-scripts.org/vim/scripts.html
    " Plugin 'L9'
    " Git plugin not hosted on GitHub
    "Plugin 'git://git.wincent.com/command-t.git'
    " git repos on your local machine (i.e. when working on your own plugin)
    "Plugin 'file:///home/gmarik/path/to/plugin'
    " The sparkup vim script is in a subdirectory of this repo called vim.
    " Pass the path to set the runtimepath properly.
    "Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
    " Install L9 and avoid a Naming conflict if you've already installed a
    " different version somewhere else.
    " Plugin 'ascenator/L9', {'name': 'newL9'}

    " All of your Plugins must be added before the following line
    call vundle#end() " required
    filetype plugin indent on " required
    " To ignore plugin indent changes, instead use:
    "filetype plugin on
    "
    " Brief help
    " :PluginList - lists configured plugins
    " :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
    " :PluginSearch foo - searches for foo; append `!` to refresh local cache
    " :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
    "
    " see :h vundle for more details or wiki for FAQ
    " Put your non-Plugin stuff after this line

    "折叠设置"
    let xml_syntax_folding=1 " XML fold
    "set foldmethod=syntax
    set foldlevelstart=1
    " 用空格键来开关折叠
    nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>

    " Command-line mode
    " set mouse=a 启动所有模式,会屏蔽鼠标右键功能
    set mouse=c

    "ctrlp 配置
    let g:ctrlp_map = '<c-p>'
    let g:ctrlp_cmd = 'CtrlP'
    map <c-k> :CtrlPMRUFiles<CR>
    let g:ctrlp_tabpage_position = 'ac'
    let g:ctrlp_extensions = ['tag']
    let g:ctrlp_working_path_mode = 'ra'
    let g:ctrlp_working_path_mode = 0
    let g:ctrlp_use_caching = 1
    let g:ctrlp_clear_cache_on_exit = 0
    let g:ctrlp_mruf_max = 250
    set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.rc,*.aps,*.vcproj.*,/home/shuaijun/se/SimulationEngine_Rapid/tinyxml/*
    let g:ctrlp_custom_ignore = {
    'dir': '.git$|.hg$|.svn$|.yardoc|public/images|public/system|data|log|tmp$|node_modules|vendor',
    'file': '.exe$|.so$|.dat$'
    }

    "nerdtree配置
    " 设置<F5> 关闭打开NerdTree
    map <F5> :NERDTreeMirror<CR>
    map <F5> :NERDTreeToggle<CR>
    " " 显示行号
    let NERDTreeShowLineNumbers=1
    let NERDTreeAutoCenter=1
    " 是否显示隐藏文件
    let NERDTreeShowHidden=1
    " 设置宽度
    let NERDTreeWinSize=31
    " 在终端启动vim时,共享NERDTree
    let g:nerdtree_tabs_open_on_console_startup=1
    " 忽略一下文件的显示
    let NERDTreeIgnore=['.pyc','~$','.swp']
    " 显示书签列表
    let NERDTreeShowBookmarks=1
    " 窗口位置
    let g:NERDTreeWinPos="right"

    "cscope自动更新
    function! UpdateCscope()
    let db = findfile("cscope.out", ".;")
    if (!empty(db))
    let oldpath = getcwd()
    let path = strpart(db, 0, match(db, "/cscope.out$"))
    if (!empty(path))
    exe "cd " . path
    endif
    "!cscope -Rbq
    !find -name "*.[ch]" -o -name "*.cpp" > cscope.files
    !cscope -bR -i cscope.files
    exe "cd " . oldpath
    endif
    endfunction
    au VimEnter * silent! call UpdateCscope()

    " auto load cscope file [start]
    function! LoadCscope()
    set cst
    set csto=0
    set nocsverb
    let db = findfile("cscope.out", ".;")
    if (!empty(db))
    let path = strpart(db, 0, match(db, "/cscope.out$"))
    set nocscopeverbose " suppress 'duplicate connection' error
    exe "cs add " . db . " " . path
    set cscopeverbose
    " else add the database pointed to by environment variable
    elseif $CSCOPE_DB != ""
    cs add $CSCOPE_DB
    endif
    endfunction
    au BufEnter /* call LoadCscope()
    " auto load cscope file [end]

    " 基于缩进或语法进行代码折叠
    "set foldmethod=indent
    set foldmethod=syntax
    " 启动vim时关闭折叠代码
    set nofoldenable

    " 配置vim-airline 开始
    let g:airline#extensions#tabline#enabled = 1
    let g:airline#extensions#tabline#formatter = 'default'
    let g:airline_theme='dark'
    let g:airline_powerline_fonts = 1
    let g:airline_highlighting_cache = 1
    let Tlist_Auto_Open=1
    let g:airline_powerline_fonts = 1

    "打开tabline功能,方便查看Buffer和切换,省去了minibufexpl插件 let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tabline#buffer_nr_show = 1 "设置切换Buffer快捷键" nnoremap <C-tab> :bn<CR> nnoremap <C-s-tab> :bp<CR> " 关闭状态显示空白符号计数
    let g:airline#extensions#whitespace#enabled = 0
    let g:airline#extensions#whitespace#symbol = '!'
    " 设置consolas字体"前面已经设置过
    "set guifont=Consolas for Powerline FixedD:h11 if !exists('g:airline_symbols') let g:airline_symbols = {} endif " old vim-powerline symbols
    let g:airline_left_sep = '⮀'
    let g:airline_left_alt_sep = '⮁'
    let g:airline_right_sep = '⮂'
    let g:airline_right_alt_sep = '⮃'

    set t_Co=256


    " taglist配置
    " 只显示当前文件的tags
    let Tlist_Show_One_File=1
    " 设置taglist宽度
    let Tlist_WinWidth=40
    " tagList窗口是最后一个窗口,则退出Vim
    let Tlist_Exit_OnlyWindow=1
    " 让taglist窗口出现在Vim的左边边
    let Tlist_Use_Left_Window=1
    " 当同时显示多个文件中的tag时,设置为1,可使taglist只显示当前文件tag,其它文件的tag都被折叠起来。
    let Tlist_File_Fold_Auto_Close=1
    map <F6> :Tlist<CR>

  • 相关阅读:
    《人月神话》阅读笔记3
    第十五周总结
    《人月神话》阅读笔记2
    对正在使用的输入法评价
    课堂练习(找水王问题)
    第二阶段冲刺第十天
    第二阶段冲刺第九天
    第二阶段冲刺第八天
    第二阶段冲刺第七天
    openwrt U盘启动
  • 原文地址:https://www.cnblogs.com/jiangyibo/p/10917633.html
Copyright © 2011-2022 走看看