9
9
10
10
" Load plugins
11
11
call plug#begin (' ~/.vim/plugged' )
12
- Plug ' vim-airline/vim-airline' " vim-airline
13
- Plug ' vim-airline/vim-airline-themes'
14
12
call plug#end ()
15
13
16
14
" }}}
@@ -30,45 +28,24 @@ set linebreak
30
28
" Show line numbers
31
29
set number
32
30
33
- " Hide vim's insert/visual/normal hints
34
- set noshowmode
35
-
36
31
" Prevent delay for lightline when switching modes
37
32
set ttimeoutlen = 50
38
33
39
34
" Save files as sudo with :W
40
35
cmap W w !sudo tee % > /dev/null
41
36
42
- " Airline tabs
43
- let g: airline #extensions#tabline #enabled = 1
44
-
45
- " Airline theme
46
- let g: airline_theme= ' deus'
47
-
48
- " Airline font symbols
49
- let g: airline_powerline_fonts = 1
50
-
51
- if ! exists (' g:airline_symbols' )
52
- let g: airline_symbols = {}
53
- endif
54
-
55
- " powerline symbols
56
- let g: airline_left_sep = ' '
57
- let g: airline_left_alt_sep = ' '
58
- let g: airline_right_sep = ' '
59
- let g: airline_right_alt_sep = ' '
60
- let g: airline_symbols .branch = ' br'
61
- let g: airline_symbols .readonly = ' ro'
62
- let g: airline_symbols .linenr = ' '
63
- let g: airline_symbols .maxlinenr = ' '
64
-
65
37
syntax on
66
38
67
- set laststatus = 2
68
-
69
39
set scrolljump = 5
70
40
set scrolloff = 3
71
41
42
+ " vim command prompt
43
+ nnoremap <Space> :
44
+ vnoremap <Space> :
45
+
46
+ " Quickly Show/Switch Buffers
47
+ nnoremap <F5> :buffers<CR> :buffer<Space>
48
+
72
49
set splitright
73
50
set splitbelow
74
51
@@ -83,11 +60,40 @@ set wildmode=longest:full,full
83
60
set incsearch
84
61
set hlsearch
85
62
86
- " Change cursor in Insert mode
63
+ " Change cursor in different modes
87
64
let &t_SI = " \<Esc> [6 q"
88
65
let &t_SR = " \<Esc> [4 q"
89
66
let &t_EI = " \<Esc> [2 q"
90
67
68
+ function ! CurrentGitBranch ()
69
+ return system (" git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n '" )
70
+ endfunction
71
+
72
+ function ! StatusGitInfo ()
73
+ let l: branchname = CurrentGitBranch ()
74
+ return strlen (l: branchname ) > 0 ?' ' .l: branchname .' ' :' '
75
+ endfunction
76
+
77
+ " Status Line
78
+ set laststatus = 2
79
+ set statusline =
80
+ set statusline += % 1 * \ % n \ %* " Buffer number
81
+ set statusline += \ % f % h % w \ % m " File path
82
+ set statusline += % 2 * \ % R\ %* " Read-only
83
+ set statusline += % = " Spacer
84
+ set statusline += \ % {StatusGitInfo ()} " Git branch
85
+ set statusline += % 1 * \ % -3 c\ \ % 4 l/%-4L\ \ %3P\ %* " Line/ Column Info
86
+
87
+ " Status line color
88
+ hi StatusLine cterm= NONE ctermbg= 0 ctermfg= white
89
+ hi StatusLineNC cterm= NONE ctermbg= NONE ctermfg= 8
90
+ hi User1 cterm= NONE ctermbg= 8 ctermfg= NONE
91
+ hi User2 cterm= NONE ctermbg= 0 ctermfg= red
92
+
93
+ " Split characters
94
+ set fillchars += vert :│
95
+ hi VertSplit cterm= NONE ctermbg= NONE ctermfg= 8
96
+
91
97
" Highlight cursorline
92
98
set cursorline
93
99
hi CursorLine cterm= NONE ctermbg= 0 ctermfg= NONE
@@ -98,6 +104,9 @@ hi MatchParen cterm=NONE ctermbg=8 ctermfg=magenta
98
104
" Folded section color
99
105
hi Folded ctermbg= 8
100
106
107
+ " Selection color
108
+ hi Visual ctermbg= 4 ctermfg= 0
109
+
101
110
" }}}
102
111
103
112
" Spaces/Tabs {{{
@@ -120,6 +129,8 @@ vnoremap <C-d> "+d
120
129
121
130
" Auto Groups {{{
122
131
132
+ " autocmd FileType netrw nnoremap q :bd<CR>
133
+
123
134
augroup configgroup
124
135
autocmd !
125
136
autocmd VimEnter * highlight clear SignColumn
@@ -154,7 +165,7 @@ set foldenable
154
165
set foldmethod = marker
155
166
set foldlevel = 0
156
167
set modelines = 1
157
- nnoremap <space > za
168
+ nnoremap <Tab > za
158
169
159
170
" }}}
160
171
0 commit comments