|
@@ -6,6 +6,78 @@
|
|
" but WITHOUT ANY WARRANTY
|
|
" but WITHOUT ANY WARRANTY
|
|
"
|
|
"
|
|
|
|
|
|
|
|
+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
+" Useful functions
|
|
|
|
+"
|
|
|
|
+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
+function! CleanClose()
|
|
|
|
+ let todelbufNr = bufnr("%")
|
|
|
|
+ let newbufNr = bufnr("#")
|
|
|
|
+ if ((newbufNr != -1) && (newbufNr != todelbufNr) && buflisted(newbufNr))
|
|
|
|
+ exe "b".newbufNr
|
|
|
|
+ else
|
|
|
|
+ bnext
|
|
|
|
+ endif
|
|
|
|
+ if (bufnr("%") == todelbufNr)
|
|
|
|
+ new
|
|
|
|
+ endif
|
|
|
|
+ exe "bd".todelbufNr
|
|
|
|
+endfunction
|
|
|
|
+
|
|
|
|
+function! GetFileSize()
|
|
|
|
+ let size = ''
|
|
|
|
+ let bytes = getfsize(expand('%:p'))
|
|
|
|
+ if bytes <= 1024
|
|
|
|
+ let size = bytes . 'B'
|
|
|
|
+ elseif bytes <= 1048576
|
|
|
|
+ let size = (bytes / 1024) . 'KB'
|
|
|
|
+ elseif bytes <= (1073741824)
|
|
|
|
+ let size = (bytes / 1048576) . 'MB'
|
|
|
|
+ elseif bytes <= 1099511627776
|
|
|
|
+ let size = (bytes / 1073741824) . 'GB'
|
|
|
|
+ elseif bytes <= 1125899906842624
|
|
|
|
+ let size = (bytes / 1099511627776) . 'TB'
|
|
|
|
+ endif
|
|
|
|
+ return size
|
|
|
|
+endfunction
|
|
|
|
+
|
|
|
|
+function! GetMode()
|
|
|
|
+ let curmode = mode()
|
|
|
|
+ let mode = curmode
|
|
|
|
+ if curmode == 'n'
|
|
|
|
+ let mode = 'NORMAL'
|
|
|
|
+ elseif curmode == 'i'
|
|
|
|
+ let mode = 'INSERT'
|
|
|
|
+ elseif curmode == 'R'
|
|
|
|
+ let mode = 'REPLACE'
|
|
|
|
+ elseif curmode == 'v'
|
|
|
|
+ let mode = 'VISUAL'
|
|
|
|
+ elseif curmode == 'V'
|
|
|
|
+ if has("multi_byte")
|
|
|
|
+ let mode = 'V⋅LINE'
|
|
|
|
+ else
|
|
|
|
+ let mode = 'VLINE'
|
|
|
|
+ endif
|
|
|
|
+ elseif curmode == 'V'
|
|
|
|
+ if has("multi_byte")
|
|
|
|
+ let mode = 'V⋅BLOC'
|
|
|
|
+ else
|
|
|
|
+ let mode = 'VBLOC'
|
|
|
|
+ endif
|
|
|
|
+ endif
|
|
|
|
+ return mode
|
|
|
|
+endfunction
|
|
|
|
+
|
|
|
|
+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
+" Load extentions through pathogen
|
|
|
|
+"
|
|
|
|
+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
+
|
|
|
|
+if filereadable($HOME . "/.vim/bundle/pathogen/autoload/pathogen.vim")
|
|
|
|
+ source ~/.vim/bundle/pathogen/autoload/pathogen.vim
|
|
|
|
+ call pathogen#infect()
|
|
|
|
+endif
|
|
|
|
+
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" General Settings
|
|
" General Settings
|
|
"
|
|
"
|
|
@@ -37,8 +109,8 @@ if has("multi_byte")
|
|
let &termencoding = &encoding
|
|
let &termencoding = &encoding
|
|
endif
|
|
endif
|
|
set encoding=utf-8
|
|
set encoding=utf-8
|
|
- setglobal fileencoding=utf-8 bomb
|
|
|
|
- set fileencodings=ucs-bom,utf-8,default,latin1
|
|
|
|
|
|
+ setglobal fileencoding=utf-8
|
|
|
|
+ set fileencodings=utf-8,default,latin1,ucs-bom
|
|
endif
|
|
endif
|
|
|
|
|
|
"Syntax highlight
|
|
"Syntax highlight
|
|
@@ -47,7 +119,6 @@ set t_Co=256
|
|
set bg=dark
|
|
set bg=dark
|
|
colorscheme xoria256
|
|
colorscheme xoria256
|
|
|
|
|
|
-
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" Interface Settings
|
|
" Interface Settings
|
|
"
|
|
"
|
|
@@ -67,7 +138,20 @@ set ttyfast "fast terminal connection support
|
|
|
|
|
|
set shortmess=a "abbreviations on status line
|
|
set shortmess=a "abbreviations on status line
|
|
set laststatus=2 "always statusline
|
|
set laststatus=2 "always statusline
|
|
-set statusline=%<%F\ %h%m%r%y%=%{\"[\".(&fenc==\"\"?&enc:&fenc).((exists(\"+bomb\")\ &&\ &bomb)?\",B\":\"\").\"]\ \"}%k\ %-14.(%l,%c%V%)\ %P
|
|
|
|
|
|
+set statusline=
|
|
|
|
+set statusline+=\ %<%F\ %h%m%r%y%w%q
|
|
|
|
+set statusline+=\ [%{GetMode()}(%n,%{mode()})]
|
|
|
|
+set statusline+=\ %{fugitive#statusline()}
|
|
|
|
+set statusline+=%=
|
|
|
|
+set statusline+=[
|
|
|
|
+set statusline+=%{&fileformat}
|
|
|
|
+set statusline+=,%{&fenc==\"\"?&enc:&fenc}
|
|
|
|
+set statusline+=%{(exists(\"+bomb\")\ &&\ &bomb)?\",bom\":\"\"}
|
|
|
|
+set statusline+=%{(exists(\"+binary\")\ &&\ &binary)?\",bin\":\"\"}
|
|
|
|
+set statusline+=%{&endofline==1?\",eol\":\",noeol\"}
|
|
|
|
+set statusline+=]
|
|
|
|
+set statusline+=\ %{GetFileSize()}
|
|
|
|
+set statusline+=\ %k\ %-14.(%l/%L,%c%V%)\ %P\ %3p%%
|
|
|
|
|
|
set wildmenu "display completion menu
|
|
set wildmenu "display completion menu
|
|
set wildmode=list:longest,list:full "content of completion menu
|
|
set wildmode=list:longest,list:full "content of completion menu
|
|
@@ -78,7 +162,6 @@ set wildchar=<TAB> "wildcar expansion character
|
|
set modeline "allow last lines of documents set vim mode
|
|
set modeline "allow last lines of documents set vim mode
|
|
set modelines=3 "number of lines to check for modelines
|
|
set modelines=3 "number of lines to check for modelines
|
|
|
|
|
|
-
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" Keyboard Settings
|
|
" Keyboard Settings
|
|
"
|
|
"
|
|
@@ -113,6 +196,7 @@ nmap <c-s-up> :tabnew<cr>
|
|
nmap <c-s-down> :tabclose<cr>
|
|
nmap <c-s-down> :tabclose<cr>
|
|
|
|
|
|
nmap <c-x> :bw<cr>
|
|
nmap <c-x> :bw<cr>
|
|
|
|
+nmap <c-end> :call CleanClose()<CR>
|
|
|
|
|
|
nmap <F6> :vsplit<cr>
|
|
nmap <F6> :vsplit<cr>
|
|
nmap <F7> :split<cr>
|
|
nmap <F7> :split<cr>
|
|
@@ -127,7 +211,6 @@ map <c-Down> <c-w>j
|
|
vmap > >gv
|
|
vmap > >gv
|
|
vmap < <gv
|
|
vmap < <gv
|
|
|
|
|
|
-
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" Editor Settings
|
|
" Editor Settings
|
|
"
|
|
"
|
|
@@ -163,7 +246,7 @@ endif
|
|
"show some not printable chars
|
|
"show some not printable chars
|
|
set list
|
|
set list
|
|
if has("multi_byte")
|
|
if has("multi_byte")
|
|
- set listchars=trail:·,extends:>,precedes:<,nbsp:•,tab:→\
|
|
|
|
|
|
+ set listchars=trail:·,extends:>,precedes:<,nbsp:•,tab:▷\⋅
|
|
else
|
|
else
|
|
set listchars=tab:>.,trail:·,extends:>,precedes:<,nbsp:%
|
|
set listchars=tab:>.,trail:·,extends:>,precedes:<,nbsp:%
|
|
endif
|
|
endif
|
|
@@ -269,37 +352,6 @@ let Tlist_WinWidth = 50
|
|
" toggle Tlist with F9
|
|
" toggle Tlist with F9
|
|
nnoremap <silent> <F9> :Tlist<CR>
|
|
nnoremap <silent> <F9> :Tlist<CR>
|
|
|
|
|
|
-
|
|
|
|
-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
-" Useful functions
|
|
|
|
-"
|
|
|
|
-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
-function! CleanClose()
|
|
|
|
- let todelbufNr = bufnr("%")
|
|
|
|
- let newbufNr = bufnr("#")
|
|
|
|
- if ((newbufNr != -1) && (newbufNr != todelbufNr) && buflisted(newbufNr))
|
|
|
|
- exe "b".newbufNr
|
|
|
|
- else
|
|
|
|
- bnext
|
|
|
|
- endif
|
|
|
|
- if (bufnr("%") == todelbufNr)
|
|
|
|
- new
|
|
|
|
- endif
|
|
|
|
- exe "bd".todelbufNr
|
|
|
|
-endfunction
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
-" Load pathogen
|
|
|
|
-"
|
|
|
|
-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
-
|
|
|
|
-if filereadable($HOME . "/.vim/bundle/pathogen/autoload/pathogen.vim")
|
|
|
|
- source ~/.vim/bundle/pathogen/autoload/pathogen.vim
|
|
|
|
- call pathogen#infect()
|
|
|
|
-endif
|
|
|
|
-
|
|
|
|
-
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" Gundo extension Setup
|
|
" Gundo extension Setup
|
|
"
|
|
"
|