我的vimrc

Posted hnylmstea

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的vimrc相关的知识,希望对你有一定的参考价值。

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 基础设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set nocompatible         " 设置不兼容原始vi模式
filetype on              " 设置开启文件类型侦测
filetype plugin on       " 设置加载对应文件类型的插件
set noeb                 " 关闭错误的提示
syntax enable            " 开启语法高亮功能
syntax on                " 自动语法高亮
set t_Co=256             " 开启256色支持
packadd termdebug        " 开启Termbug调试
set cmdheight=2          " 设置命令行的高度
set showcmd              " select模式下显示选中的行数
set ruler                " 总是显示光标位置
set laststatus=2         " 总是显示状态栏
set number               " 开启行号显示
set cursorcolumn
set cursorline           " 高亮显示当前行
highlight CursorLine   cterm=NONE ctermbg=black guibg=NONE guifg=NONE
                         " 高亮显示当前行具体设置
set statusline= %<%F[%1*%M%*%n%R%H]%= %y %0(%{&fileformat} [%{(&fenc==""?&enc:&fenc).(&bomb?",BOM":"")}] %c:%l/%L%)
                         " 设置状态行显示的信息
set whichwrap+=<,>,h,l   " 设置光标键跨行
set ttimeoutlen=0        " 设置<ESC>键响应时间
set virtualedit=block,onemore   
                         " 允许光标出现在最后一个字符的后面
set mouse=a              " 开启鼠标支持
set backspace=indent,eol,start 
                         " 允许删除换行符
set wildmenu             " 开启zsh支持
set wildmode=full        " zsh补全菜单
set hidden               " 文件未保存时切换缓冲区由vim保存
set display=lastline     " 避免折行后某一行不见
set fillchars=vert: ,stl: ,stlnc:   
                         " 在分割窗口间留出空白
set autochdir            " 移至当前文件所在目录
set guifont=monaco 9
set linespace=2
set go= 
set foldmethod=manual

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 快捷键设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

map <F3> :call Cut()<CR><c-w>l
func! Cut()
    exec '40vs %<.out'
    exec 'w'
    exec 'sp %<.in'
    exec 'w'
endfunc
map <F2> <c-w>h:call Close()<cr>
func! Close()
    exec 'wq'
    exec 'wq'
endfunc
map <F5> :call GDB()<cr>
func! GDB()
    exec 'Termdebug %<'
endfunc
map <F9> :call Compile()<CR>
func! Compile()
    exec 'w'
    exec '!g++ %<.cpp -g -o %<'
endfunc
map <F8> :call Compile_With_O2()<CR>
func! Compile_With_O2()
    exec 'w'
    exec '!g++ %<.cpp -O2 -g -o %<'
endfunc
map <c-F10> :call Run()<cr>
func! Run()
    exec '!time ./%<'
endfunc
map <c-h> 7h
map <c-j> 7j
map <c-k> 7k
map <c-l> 7l
map <c-a> ggvG$
map <c-c> "+Y
map <c-v> "+P
map <c-up> 7k
map <c-down> 7j
map <c-left> 7h
map <c-right> 7l

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 代码缩进和排版
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set autoindent           " 设置自动缩进
set cindent              " 设置使用C/C++语言的自动缩进方式
set cinoptions=g0,:0,N-s,(0    
                         " 设置C/C++语言的具体缩进方式
set smartindent          " 智能的选择对其方式
filetype indent on       " 自适应不同语言的智能缩进
set expandtab            " 将制表符扩展为空格
set tabstop=4            " 设置编辑时制表符占用空格数
set shiftwidth=4         " 设置格式化时制表符占用空格数
set softtabstop=4        " 设置4个空格为制表符
set smarttab             " 在行和段开始处使用制表符
set backspace=2          " 使用回车键正常处理indent,eol,start等
set sidescroll=10        " 设置向右滚动字符数
set nofoldenable         " 禁用折叠代码
set history=2000         " 历史ex命令记录上限提高
set scrolloff=6          " 上下可视行数
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 搜索设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set hlsearch            " 高亮显示搜索结果
set incsearch           " 开启实时搜索功能
set nowrapscan          " 搜索到文件两端停止
set incsearch           " 实时搜索

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 缓存设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set nobackup            " 设置不备份
set noswapfile          " 禁止生成临时文件
set autoread            " 文件在vim之外修改过,自动重新读入
set autowrite           " 设置自动保存
set confirm             " 在处理未保存或只读文件的时候,弹出确认

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 编码设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set langmenu=zh_CN.UTF-8
set helplang=cn
set termencoding=utf-8
set encoding=utf8
set fileencodings=utf8,ucs-bom,gbk,cp936,gb2312,gb18030

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 插件列表
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin('~/.vim/plugged')

Plugin 'VundleVim/Vundle.vim'                    " 使用Vundle的必须配置
Plugin 'chxuan/vimplus-startify'                 " 启动界面
"Plugin 'vim-airline/vim-airline'                 " 状态栏美化
"Plugin 'vim-airline/vim-airline-themes'          " 状态栏美化主题
"Plugin 'w0rp/ale'                                " 语法错误提示
Plugin 'lurst/austere.vim'
"Plugin 'luochen1990/rainbow'                     " 彩虹括号
Plugin 'srcery-colors/srcery-vim'
Plugin 'https://github.com/scrooloose/syntastic.git'

call vundle#end()            
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 插件设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" airline 设置
if filereadable(expand($HOME . '/.vimrc.airline'))
    source $HOME/.vimrc.airline
endif

let g:vim_markdown_math = 1

" rainbow
let g:rainbow_active = 1

color solarized
set background=dark
let g:solarized_termcolors=256

"模板
map `1 :0r ~/模板/template.cpp<CR>ggzf54<cr>

以上是关于我的vimrc的主要内容,如果未能解决你的问题,请参考以下文章

使用 astyle 格式化 Vim 代码(vimrc 中的 formatprg)

我的VIM -- vimrc配置

使用 sudo 和 .vimrc

如果有多个,将使用什么.vimrc?

text 我的.vimrc文件

text 我的Vimrc