set nocompatible
filetype on
"vim-airline??:??vim??"
"let g:airline#extensions#tabline#enabled = 1
" airline??
" ????
"set t_Co=256
"set laststatus=2
" ??powerline???????
let g:airline_powerline_fonts = 1
" ??tabline
let g:airline#extensions#tabline#enabled = 1
" tabline???buffer???????
let g:airline#extensions#tabline#left_sep = ' '
" tabline????buffer???????
let g:airline#extensions#tabline#left_alt_sep = ' '
" tabline?buffer????
let g:airline#extensions#tabline#buffer_nr_show = 1
" ????buffer???
nnoremap [b :bp<CR>
nnoremap ]b :bn<CR>
" ??<leader>num?num buffer
map <leader>1 :b 1<CR>
map <leader>2 :b 2<CR>
map <leader>3 :b 3<CR>
map <leader>4 :b 4<CR>
map <leader>5 :b 5<CR>
map <leader>6 :b 6<CR>
map <leader>7 :b 7<CR>
map <leader>8 :b 8<CR>
map <leader>9 :b 9<CR>
"NERDTree ??:F2??????????
map <F2> :NERDTreeToggle<CR>
let NERDTreeWinSize=25
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""?????
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"??.c,.h,.sh,.java??,???????
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
""????SetTitle,???????
func SetTitle()
"???????.sh??
if &filetype == 'sh'
call setline(1, "##########################################################################")
call append(line("."), "# File Name: ".expand("%"))
call append(line(".")+1, "# Author: gengfei")
call append(line(".")+2, "# mail: gengfei@oppo.com")
call append(line(".")+3, "# Created Time: ".strftime("%c"))
call append(line(".")+4, "#########################################################################")
call append(line(".")+5, "#!/bin/bash")
call append(line(".")+6, "PATH=/home/edison/bin:/home/edison/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/work/tools/gcc-3.4.5-glibc-2.3.6/bin")
call append(line(".")+7, "export PATH")
call append(line(".")+8, "")
else
call setline(1, "/*************************************************************************")
call append(line("."), " > File Name: ".expand("%"))
call append(line(".")+1, " > Author: gengfei")
call append(line(".")+2, " > Mail: gengfei@oppo.com")
call append(line(".")+3, " > Created Time: ".strftime("%c"))
call append(line(".")+4, " ************************************************************************/")
call append(line(".")+5, "")
endif
if &filetype == 'cpp'
call append(line(".")+6, "#include<iostream>")
call append(line(".")+7, "using namespace std;")
call append(line(".")+8, "")
endif
if &filetype == 'c'
call append(line(".")+6, "#include <stdio.h>")
call append(line(".")+7, "")
endif
" if &filetype == 'java'
" call append(line(".")+6,"public class ".expand("%"))
" call append(line(".")+7,"")
" endif
"?????,?????????
autocmd BufNewFile * normal G
endfunc
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"????
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
nmap <leader>w :w!<cr>
nmap <leader>f :find<cr>
" ????+?? ctrl+a
map <C-A> ggVGY
map! <C-A> <Esc>ggVGY
map <F12> gg=G
" ????? Ctrl+c ??
vmap <C-c> "+y
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
""????
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" ?????????????
set autoread
" quickfix??
autocmd FileType c,cpp map <buffer> <leader><space> :w<cr>:make<cr>
"????
set completeopt=preview,menu
"????
filetype plugin on
"?????
set clipboard=unnamed
"????
set nobackup
"make ??
:set makeprg=g++\ -Wall\ \ %
"????
set autowrite
set ruler " ???????
set cursorline " ???????
set magic " ????
set guioptions-=T " ?????
set guioptions-=m " ?????
set foldcolumn=0
set foldmethod=indent
set foldlevel=3
set foldenable " ????
" ????vi?????,??vim???
set nocompatible
" ????
set syntax=on
" ???????????
set noeb
" ??????????????,????
set confirm
" ????
set autoindent
set cindent
" Tab????
set tabstop=4
" ?????4
set softtabstop=4
set shiftwidth=4
" ??????????
set noexpandtab
" ????????????
set smarttab
" ????
set number
" ?????
set history=1000
"????????
set nobackup
set noswapfile
"???????
set ignorecase
"???????
set hlsearch
set incsearch
"????
set gdefault
"????
set enc=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
"????
set langmenu=zh_CN.UTF-8
set helplang=cn
" ??????????(?????????)
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%]
" ???????
set laststatus=2
" ???(?????)???,???1,???2
set cmdheight=2
" ??????
filetype on
" ????????
filetype plugin on
" ???????????????
filetype indent on
" ??????
set viminfo+=!
" ????????????????
set iskeyword+=_,$,@,%,#,-
" ???????????
set linespace=0
" ???????????????
set wildmenu
" ????(backspace)????indent, eol, start?
set backspace=2
" ??backspace?????????
set whichwrap+=<,>,h,l
" ???buffer?????????(??office???????????)
set mouse=a
set selection=exclusive
set selectmode=mouse,key
" ????: commands??,??????????????
set report=0
" ????????????,????
set fillchars=vert:\ ,stl:\ ,stlnc:\
" ?????????
set showmatch
" ?????????(????????)
set matchtime=1
" ?????buffer?????????3???
set scrolloff=3
" ?C????????
set smartindent
" ??????txt??(??txt.vim??)
au BufRead,BufNewFile * setfiletype txt
"????
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
":inoremap { {<CR>}<ESC>O
":inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap " ""<ESC>i
:inoremap ' ''<ESC>i
function! ClosePair(char)
if getline('.')[col('.') - 1] == a:char
return "\<Right>"
else
return a:char
endif
endfunction
filetype plugin indent on
"????????, ????????????
set completeopt=longest,menu