Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- set nocompatible " be iMproved, required
- filetype off " required
- " set the runtime path to include Vundle and initialize
- call plug#begin('~/.vim/plugged')
- Plug 'jiangmiao/auto-pairs'
- Plug 'rhysd/vim-clang-format'
- Plug 'kien/ctrlp.vim'
- Plug 'morhetz/gruvbox'
- call plug#end()
- filetype plugin on
- filetype plugin indent on
- syntax on
- syntax enable
- "
- " Basic settings
- "
- set nu
- " disable backup
- set noswapfile
- set nobackup
- " match
- set showmatch
- " gui settings
- if has('gui_running')
- set t_Co=256
- " set background=dark
- colorscheme gruvbox
- set guioptions-=m
- set guioptions-=T
- set guioptions-=r
- set guioptions-=L
- if has('win32')
- set guifont=Consolas:h12
- elseif has('gui_gtk2') || has('gui_gtk3')
- set guifont=Source\ Code\ Pro\ 10
- else
- set guifont=Fira\ Code\ Retina:h13
- endif
- hi MatchParen guibg=bg guifg=cyan gui=bold
- endif
- " tabs
- set tabstop=4
- set softtabstop=0
- set expandtab
- set shiftwidth=4
- set smarttab
- " indent
- set smartindent
- " backspace
- set backspace=indent,eol,start
- " encoding
- set ff=unix
- set encoding=utf-8
- set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
- " search
- set ignorecase
- set hlsearch
- set incsearch
- " editor
- set linespace=0
- set tags=./.tags;,.tags
- " disable bell
- autocmd! GUIEnter * set vb t_vb=
- " maximum
- autocmd GUIEnter * simalt ~x
- autocmd FileType python source ~/vimrc/python.vim
- autocmd FileType c,cpp source ~/vimrc/cpp.vim
- """
- " Key Binding.
- """"
- let mapleader = ","
- " map
- map q: :q
- map <C-s> :w<CR>
- " Close all the buffers
- map <leader>ba :bufdo bd<CR>
- map <leader>l :bnext<CR>
- map <leader>h :bprevious<CR>
- map <leader>k :bd<CR> " kill current buffer
- nnoremap <C-j> <C-W>j
- nnoremap <C-k> <C-W>k
- nnoremap <C-h> <C-W>h
- nnoremap <C-l> <C-W>l
- " insert date
- nnoremap <C-M-i> "=strftime("%c")<CR>P
- inoremap <C-M-i> <C-R>=strftime("%c")<CR>
- nnoremap <leader>rc :source $MYVIMRC<CR>
- "
- " Additional features
- "
- set wildmenu
- set wildignore+=*.bmp,*.gif,*.ico,*.jpg,*.png,*.ico
- set wildignore+=*.pdf,*.psd
- set wildignore+=node_modules/*,bower_components/*,.git/*,.svn/*
- set autochdir
- nnoremap gf :vertical wincmd f<CR>
- "
- " Statusline
- "
- set laststatus=2
- set statusline=
- set statusline+=\ %f
- set statusline+=\ %r
- set statusline+=%m
- set statusline+=%= " align left
- set statusline+=\ %y
- set statusline+=[%{strlen(&fenc)?&fenc:'none'}, "file encoding
- set statusline+=%{&ff}] "file format
- set statusline+=\ %(%3p%%,%3l,%c%)\
- set statusline+=\
- set statusline+=
- """
- " Plugin Settings.
- """
- let g:clang_format#code_style="Google"
- autocmd FileType c,cpp,objc nnoremap <buffer><Leader>cf :<C-u>ClangFormat<CR>
- autocmd FileType c,cpp,objc vnoremap <buffer><Leader>cf :ClangFormat<CR>
- let g:ctrlp_map = '<C-f>'
- let g:ctrlp_cmd = 'CtrlP'
- let g:ctrlp_custom_ignore = {
- \ 'dir': '\v[\/](build|node_modules)|(\.(git|hg|svn))$',
- \ 'file': '\v\.(exe|so|dll)$',
- \ }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement