| 
					
				 | 
			
			
				@@ -6,6 +6,78 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 "  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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -37,8 +109,8 @@ if has("multi_byte") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let &termencoding = &encoding 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 "Syntax highlight 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -47,7 +119,6 @@ set t_Co=256 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 set bg=dark 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 colorscheme xoria256 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " Interface Settings 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -67,7 +138,20 @@ set ttyfast "fast terminal connection support 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 set shortmess=a "abbreviations on status line 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 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 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 modelines=3 "number of lines to check for modelines 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " Keyboard Settings 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -113,6 +196,7 @@ nmap <c-s-up> :tabnew<cr> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 nmap <c-s-down> :tabclose<cr> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 nmap <c-x> :bw<cr> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+nmap <c-end> :call CleanClose()<CR> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 nmap <F6> :vsplit<cr> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 nmap <F7> :split<cr> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -127,7 +211,6 @@ map <c-Down> <c-w>j 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 vmap > >gv 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 vmap < <gv 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " Editor Settings 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -163,7 +246,7 @@ endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 "show some not printable chars 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 set list 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 if has("multi_byte") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    set listchars=trail:·,extends:>,precedes:<,nbsp:•,tab:→\  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    set listchars=trail:·,extends:>,precedes:<,nbsp:•,tab:▷\⋅ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     set listchars=tab:>.,trail:·,extends:>,precedes:<,nbsp:% 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 endif 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -269,37 +352,6 @@ let Tlist_WinWidth = 50 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " toggle Tlist with F9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 " 
			 |