├── .vimrc.local ├── .gitconfig └── .vimrc /.vimrc.local: -------------------------------------------------------------------------------- 1 | colorscheme codedark 2 | set linespace=5 3 | 4 | " clear the search buffer when hitting return 5 | nnoremap :nohlsearch 6 | 7 | " FORMATTERS 8 | au FileType javascript setlocal formatprg=prettier 9 | au FileType javascript.jsx setlocal formatprg=prettier 10 | au FileType typescript setlocal formatprg=prettier\ --parser\ typescript 11 | au FileType html setlocal formatprg=js-beautify\ --type\ html 12 | au FileType css setlocal formatprg=prettier\ --parser\ css 13 | 14 | " Set font and color scheme for GUI 15 | if has("gui_running") 16 | if has("gui_mac") || has("gui_macvim") 17 | set guifont=Menlo:h13 18 | set transparency=0 19 | colorscheme VisualStudioDark 20 | endif 21 | endif 22 | -------------------------------------------------------------------------------- /.gitconfig: -------------------------------------------------------------------------------- 1 | [user] 2 | name = Vladimir Penkin 3 | email = penkinv@gmail.com 4 | [branch] 5 | autosetupmerge = true 6 | autosetuprebase = always 7 | [color] 8 | diff = auto 9 | status = auto 10 | branch = auto 11 | ui = true 12 | [core] 13 | excludesfile = /Users/penkin/.gitignore 14 | editor = vim 15 | [push] 16 | # Only push branches that have been set up to track a remote branch. 17 | default = current 18 | [alias] 19 | co = checkout 20 | br = branch 21 | unadd = reset HEAD 22 | l = log --graph --pretty=format':%C(yellow)%h%Cblue%d%Creset %s %C(white) %an, %ar%Creset' 23 | lol = log --pretty=oneline --abbrev-commit --graph --decorate 24 | unstage = reset HEAD 25 | staged = diff --cached 26 | unstaged = diff 27 | current-branch = !git symbolic-ref -q HEAD | sed -e 's|^refs/heads/||' 28 | # Usage: git track origin/feature-123-login-form 29 | track = checkout -t 30 | authors-list = shortlog -e -s -n 31 | cob = checkout -b 32 | smartlog = log --graph --pretty=format:'commit: %C(bold red)%h%Creset %C(red)<%H>%Creset %C(bold magenta)%d %Creset%ndate: %C(bold yellow)%cd %Creset%C(yellow)%cr%Creset%nauthor: %C(bold blue)%an%Creset %C(blue)<%ae>%Creset%n%C(cyan)%s%n%Creset' 33 | sl = !git smartlog 34 | log-commit = log -1 --pretty=format:'commit: %C(bold red)%h%Creset %C(red)<%H>%Creset %C(bold magenta)%d %Creset%ndate: %C(bold yellow)%cd %Creset%C(yellow)%cr%Creset%nauthor: %C(bold blue)%an%Creset %C(blue)<%ae>%Creset%n%n%C(bold cyan)%s%n%n%C(cyan)%b%n%Creset' 35 | ls = log --oneline 36 | purge = clean -fd 37 | uncommit = reset --soft HEAD^ 38 | 39 | [credential] 40 | helper = 41 | helper = /usr/local/share/gcm-core/git-credential-manager-core 42 | [credential "https://dev.azure.com"] 43 | useHttpPath = true 44 | -------------------------------------------------------------------------------- /.vimrc: -------------------------------------------------------------------------------- 1 | "***************************************************************************** 2 | "" Vim-PLug core 3 | "***************************************************************************** 4 | call plug#begin(expand('~/.vim/plugged')) 5 | 6 | "***************************************************************************** 7 | "" Plug install packages 8 | "***************************************************************************** 9 | Plug 'scrooloose/nerdtree' 10 | Plug 'jistr/vim-nerdtree-tabs' 11 | Plug 'tpope/vim-commentary' 12 | Plug 'tpope/vim-fugitive' 13 | Plug 'vim-airline/vim-airline' 14 | Plug 'vim-airline/vim-airline-themes' 15 | Plug 'airblade/vim-gitgutter' 16 | Plug 'vim-scripts/grep.vim' 17 | Plug 'vim-scripts/CSApprox' 18 | Plug 'Raimondi/delimitMate' 19 | Plug 'majutsushi/tagbar' 20 | Plug 'w0rp/ale' 21 | Plug 'Yggdroot/indentLine' 22 | Plug 'avelino/vim-bootstrap-updater' 23 | Plug 'sheerun/vim-polyglot' 24 | Plug 'tpope/vim-rhubarb' " required by fugitive to :Gbrowse 25 | 26 | Plug 'xolox/vim-colorscheme-switcher' 27 | 28 | if isdirectory('/usr/local/opt/fzf') 29 | Plug '/usr/local/opt/fzf' | Plug 'junegunn/fzf.vim' 30 | else 31 | Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --bin' } 32 | Plug 'junegunn/fzf.vim' 33 | endif 34 | let g:make = 'gmake' 35 | if exists('make') 36 | let g:make = 'make' 37 | endif 38 | Plug 'Shougo/vimproc.vim', {'do': g:make} 39 | 40 | "" Vim-Session 41 | Plug 'xolox/vim-misc' 42 | Plug 'xolox/vim-session' 43 | 44 | "" Snippets 45 | Plug 'SirVer/ultisnips' 46 | Plug 'honza/vim-snippets' 47 | 48 | "" Color 49 | Plug 'tomasiser/vim-code-dark' 50 | 51 | "***************************************************************************** 52 | "" Custom bundles 53 | "***************************************************************************** 54 | 55 | " go 56 | "" Go Lang Bundle 57 | Plug 'fatih/vim-go', {'do': ':GoInstallBinaries'} 58 | 59 | 60 | " html 61 | "" HTML Bundle 62 | Plug 'hail2u/vim-css3-syntax' 63 | Plug 'gorodinskiy/vim-coloresque' 64 | Plug 'tpope/vim-haml' 65 | Plug 'mattn/emmet-vim' 66 | 67 | 68 | " javascript 69 | "" Javascript Bundle 70 | Plug 'jelera/vim-javascript-syntax' 71 | 72 | 73 | " ruby 74 | Plug 'tpope/vim-rails' 75 | Plug 'tpope/vim-rake' 76 | Plug 'tpope/vim-projectionist' 77 | Plug 'thoughtbot/vim-rspec' 78 | Plug 'ecomba/vim-ruby-refactoring' 79 | 80 | 81 | " typescript 82 | Plug 'leafgarland/typescript-vim' 83 | Plug 'HerringtonDarkholme/yats.vim' 84 | 85 | 86 | "***************************************************************************** 87 | "***************************************************************************** 88 | 89 | "" Include user's extra bundle 90 | if filereadable(expand("~/.vimrc.local.bundles")) 91 | source ~/.vimrc.local.bundles 92 | endif 93 | 94 | call plug#end() 95 | 96 | " Required: 97 | filetype plugin indent on 98 | 99 | 100 | "***************************************************************************** 101 | "" Basic Setup 102 | "*****************************************************************************" 103 | "" Encoding 104 | set encoding=utf-8 105 | set fileencoding=utf-8 106 | set fileencodings=utf-8 107 | set ttyfast 108 | 109 | "" Fix backspace indent 110 | set backspace=indent,eol,start 111 | 112 | "" Tabs. May be overridden by autocmd rules 113 | set tabstop=4 114 | set softtabstop=0 115 | set shiftwidth=4 116 | set expandtab 117 | 118 | "" Map leader to , 119 | let mapleader=',' 120 | 121 | "" Enable hidden buffers 122 | set hidden 123 | 124 | "" Searching 125 | set hlsearch 126 | set incsearch 127 | set ignorecase 128 | set smartcase 129 | 130 | set fileformats=unix,dos,mac 131 | 132 | if exists('$SHELL') 133 | set shell=$SHELL 134 | else 135 | set shell=/bin/sh 136 | endif 137 | 138 | " session management 139 | let g:session_directory = "~/.vim/session" 140 | let g:session_autoload = "no" 141 | let g:session_autosave = "no" 142 | let g:session_command_aliases = 1 143 | 144 | "***************************************************************************** 145 | "" Visual Settings 146 | "***************************************************************************** 147 | syntax on 148 | set ruler 149 | set number 150 | 151 | let no_buffers_menu=1 152 | silent! colorscheme molokai 153 | 154 | set mousemodel=popup 155 | set t_Co=256 156 | set guioptions=egmrti 157 | set gfn=Monospace\ 10 158 | 159 | if has("gui_running") 160 | if has("gui_mac") || has("gui_macvim") 161 | set guifont=Menlo:h12 162 | set transparency=7 163 | endif 164 | else 165 | let g:CSApprox_loaded = 1 166 | 167 | " IndentLine 168 | let g:indentLine_enabled = 1 169 | let g:indentLine_concealcursor = 0 170 | let g:indentLine_char = '┆' 171 | let g:indentLine_faster = 1 172 | 173 | 174 | if $COLORTERM == 'gnome-terminal' 175 | set term=gnome-256color 176 | else 177 | if $TERM == 'xterm' 178 | set term=xterm-256color 179 | endif 180 | endif 181 | 182 | endif 183 | 184 | 185 | if &term =~ '256color' 186 | set t_ut= 187 | endif 188 | 189 | 190 | "" Disable the blinking cursor. 191 | set gcr=a:blinkon0 192 | set scrolloff=3 193 | 194 | "" Status bar 195 | set laststatus=2 196 | 197 | "" Use modeline overrides 198 | set modeline 199 | set modelines=10 200 | 201 | set title 202 | set titleold="Terminal" 203 | set titlestring=%F 204 | 205 | set statusline=%F%m%r%h%w%=(%{&ff}/%Y)\ (line\ %l\/%L,\ col\ %c)\ 206 | 207 | " Search mappings: These will make it so that going to the next one in a 208 | " search will center on the line it's found in. 209 | nnoremap n nzzzv 210 | nnoremap N Nzzzv 211 | 212 | if exists("*fugitive#statusline") 213 | set statusline+=%{fugitive#statusline()} 214 | endif 215 | 216 | " vim-airline 217 | let g:airline_theme = 'powerlineish' 218 | let g:airline#extensions#branch#enabled = 1 219 | let g:airline#extensions#ale#enabled = 1 220 | let g:airline#extensions#tabline#enabled = 1 221 | let g:airline#extensions#tagbar#enabled = 1 222 | let g:airline_skip_empty_sections = 1 223 | 224 | "***************************************************************************** 225 | "" Abbreviations 226 | "***************************************************************************** 227 | "" no one is really happy until you have this shortcuts 228 | cnoreabbrev W! w! 229 | cnoreabbrev Q! q! 230 | cnoreabbrev Qall! qall! 231 | cnoreabbrev Wq wq 232 | cnoreabbrev Wa wa 233 | cnoreabbrev wQ wq 234 | cnoreabbrev WQ wq 235 | cnoreabbrev W w 236 | cnoreabbrev Q q 237 | cnoreabbrev Qall qall 238 | 239 | "" NERDTree configuration 240 | let g:NERDTreeChDirMode=2 241 | let g:NERDTreeIgnore=['\.rbc$', '\~$', '\.pyc$', '\.db$', '\.sqlite$', '__pycache__'] 242 | let g:NERDTreeSortOrder=['^__\.py$', '\/$', '*', '\.swp$', '\.bak$', '\~$'] 243 | let g:NERDTreeShowBookmarks=1 244 | let g:nerdtree_tabs_focus_on_files=1 245 | let g:NERDTreeMapOpenInTabSilent = '' 246 | let g:NERDTreeWinSize = 50 247 | set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.pyc,*.db,*.sqlite 248 | nnoremap :NERDTreeFind 249 | nnoremap :NERDTreeToggle 250 | 251 | " grep.vim 252 | nnoremap f :Rgrep 253 | let Grep_Default_Options = '-IR' 254 | let Grep_Skip_Files = '*.log *.db' 255 | let Grep_Skip_Dirs = '.git node_modules' 256 | 257 | " terminal emulation 258 | nnoremap sh :terminal 259 | 260 | 261 | "***************************************************************************** 262 | "" Commands 263 | "***************************************************************************** 264 | " remove trailing whitespaces 265 | command! FixWhitespace :%s/\s\+$//e 266 | 267 | "***************************************************************************** 268 | "" Functions 269 | "***************************************************************************** 270 | if !exists('*s:setupWrapping') 271 | function s:setupWrapping() 272 | set wrap 273 | set wm=2 274 | set textwidth=79 275 | endfunction 276 | endif 277 | 278 | "***************************************************************************** 279 | "" Autocmd Rules 280 | "***************************************************************************** 281 | "" The PC is fast enough, do syntax highlight syncing from start unless 200 lines 282 | augroup vimrc-sync-fromstart 283 | autocmd! 284 | autocmd BufEnter * :syntax sync maxlines=200 285 | augroup END 286 | 287 | "" Remember cursor position 288 | augroup vimrc-remember-cursor-position 289 | autocmd! 290 | autocmd BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif 291 | augroup END 292 | 293 | "" txt 294 | augroup vimrc-wrapping 295 | autocmd! 296 | autocmd BufRead,BufNewFile *.txt call s:setupWrapping() 297 | augroup END 298 | 299 | "" make/cmake 300 | augroup vimrc-make-cmake 301 | autocmd! 302 | autocmd FileType make setlocal noexpandtab 303 | autocmd BufNewFile,BufRead CMakeLists.txt setlocal filetype=cmake 304 | augroup END 305 | 306 | set autoread 307 | 308 | "***************************************************************************** 309 | "" Mappings 310 | "***************************************************************************** 311 | 312 | "" Split 313 | noremap h :split 314 | noremap v :vsplit 315 | 316 | "" Git 317 | noremap ga :Gwrite 318 | noremap gc :Gcommit 319 | noremap gsh :Gpush 320 | noremap gll :Gpull 321 | noremap gs :Gstatus 322 | noremap gb :Gblame 323 | noremap gd :Gvdiff 324 | noremap gr :Gremove 325 | 326 | " session management 327 | nnoremap so :OpenSession 328 | nnoremap ss :SaveSession 329 | nnoremap sd :DeleteSession 330 | nnoremap sc :CloseSession 331 | 332 | "" Tabs 333 | nnoremap gt 334 | nnoremap gT 335 | nnoremap :tabnew 336 | 337 | "" Set working directory 338 | nnoremap . :lcd %:p:h 339 | 340 | "" Opens an edit command with the path of the currently edited file filled in 341 | noremap e :e =expand("%:p:h") . "/" 342 | 343 | "" Opens a tab edit command with the path of the currently edited file filled 344 | noremap te :tabe =expand("%:p:h") . "/" 345 | 346 | "" fzf.vim 347 | set wildmode=list:longest,list:full 348 | set wildignore+=*.o,*.obj,.git,*.rbc,*.pyc,__pycache__ 349 | let $FZF_DEFAULT_COMMAND = "find * -path '*/\.*' -prune -o -path 'node_modules/**' -prune -o -path 'target/**' -prune -o -path 'dist/**' -prune -o -type f -print -o -type l -print 2> /dev/null" 350 | 351 | " The Silver Searcher 352 | if executable('ag') 353 | let $FZF_DEFAULT_COMMAND = 'ag --hidden --ignore .git -g ""' 354 | set grepprg=ag\ --nogroup\ --nocolor 355 | endif 356 | 357 | " ripgrep 358 | if executable('rg') 359 | let $FZF_DEFAULT_COMMAND = 'rg --files --hidden --follow --glob "!.git/*"' 360 | set grepprg=rg\ --vimgrep 361 | command! -bang -nargs=* Find call fzf#vim#grep('rg --column --line-number --no-heading --fixed-strings --ignore-case --hidden --follow --glob "!.git/*" --color "always" '.shellescape().'| tr -d "\017"', 1, 0) 362 | endif 363 | 364 | cnoremap =expand("%:p:h") . "/" 365 | nnoremap b :Buffers 366 | nnoremap e :FZF -m 367 | "Recovery commands from history through FZF 368 | nmap y :History: 369 | 370 | " snippets 371 | let g:UltiSnipsExpandTrigger="" 372 | let g:UltiSnipsJumpForwardTrigger="" 373 | let g:UltiSnipsJumpBackwardTrigger="" 374 | let g:UltiSnipsEditSplit="vertical" 375 | 376 | " ale 377 | let g:ale_linters = {} 378 | 379 | " Tagbar 380 | nmap :TagbarToggle 381 | let g:tagbar_autofocus = 1 382 | 383 | " Disable visualbell 384 | set noerrorbells visualbell t_vb= 385 | if has('autocmd') 386 | autocmd GUIEnter * set visualbell t_vb= 387 | endif 388 | 389 | "" Copy/Paste/Cut 390 | if has('unnamedplus') 391 | set clipboard=unnamed,unnamedplus 392 | endif 393 | 394 | noremap YY "+y 395 | noremap p "+gP 396 | noremap XX "+x 397 | 398 | if has('macunix') 399 | " pbcopy for OSX copy/paste 400 | vmap :!pbcopy 401 | vmap :w !pbcopy 402 | endif 403 | 404 | "" Buffer nav 405 | noremap z :bp 406 | noremap q :bp 407 | noremap x :bn 408 | noremap w :bn 409 | 410 | "" Close buffer 411 | noremap c :bd 412 | 413 | "" Clean search (highlight) 414 | nnoremap :noh 415 | 416 | "" Switching windows 417 | noremap j 418 | noremap k 419 | noremap l 420 | noremap h 421 | 422 | "" Vmap for maintain Visual Mode after shifting > and < 423 | vmap < >gv 425 | 426 | "" Move visual block 427 | vnoremap J :m '>+1gv=gv 428 | vnoremap K :m '<-2gv=gv 429 | 430 | "" Open current line on GitHub 431 | nnoremap o :.Gbrowse 432 | 433 | "***************************************************************************** 434 | "" Custom configs 435 | "***************************************************************************** 436 | 437 | " go 438 | " vim-go 439 | " run :GoBuild or :GoTestCompile based on the go file 440 | function! s:build_go_files() 441 | let l:file = expand('%') 442 | if l:file =~# '^\f\+_test\.go$' 443 | call go#test#Test(0, 1) 444 | elseif l:file =~# '^\f\+\.go$' 445 | call go#cmd#Build(0) 446 | endif 447 | endfunction 448 | 449 | let g:go_list_type = "quickfix" 450 | let g:go_fmt_command = "goimports" 451 | let g:go_fmt_fail_silently = 1 452 | 453 | let g:go_highlight_types = 1 454 | let g:go_highlight_fields = 1 455 | let g:go_highlight_functions = 1 456 | let g:go_highlight_methods = 1 457 | let g:go_highlight_operators = 1 458 | let g:go_highlight_build_constraints = 1 459 | let g:go_highlight_structs = 1 460 | let g:go_highlight_generate_tags = 1 461 | let g:go_highlight_space_tab_error = 0 462 | let g:go_highlight_array_whitespace_error = 0 463 | let g:go_highlight_trailing_whitespace_error = 0 464 | let g:go_highlight_extra_types = 1 465 | 466 | autocmd BufNewFile,BufRead *.go setlocal noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 467 | 468 | augroup completion_preview_close 469 | autocmd! 470 | if v:version > 703 || v:version == 703 && has('patch598') 471 | autocmd CompleteDone * if !&previewwindow && &completeopt =~ 'preview' | silent! pclose | endif 472 | endif 473 | augroup END 474 | 475 | augroup go 476 | 477 | au! 478 | au Filetype go command! -bang A call go#alternate#Switch(0, 'edit') 479 | au Filetype go command! -bang AV call go#alternate#Switch(0, 'vsplit') 480 | au Filetype go command! -bang AS call go#alternate#Switch(0, 'split') 481 | au Filetype go command! -bang AT call go#alternate#Switch(0, 'tabe') 482 | 483 | au FileType go nmap dd (go-def-vertical) 484 | au FileType go nmap dv (go-doc-vertical) 485 | au FileType go nmap db (go-doc-browser) 486 | 487 | au FileType go nmap r (go-run) 488 | au FileType go nmap t (go-test) 489 | au FileType go nmap gt (go-coverage-toggle) 490 | au FileType go nmap i (go-info) 491 | au FileType go nmap l (go-metalinter) 492 | au FileType go nmap :GoDecls 493 | au FileType go nmap dr :GoDeclsDir 494 | au FileType go imap :GoDecls 495 | au FileType go imap dr :GoDeclsDir 496 | au FileType go nmap rb :call build_go_files() 497 | 498 | augroup END 499 | 500 | " ale 501 | :call extend(g:ale_linters, { 502 | \"go": ['golint', 'go vet'], }) 503 | 504 | 505 | " html 506 | " for html files, 2 spaces 507 | autocmd Filetype html setlocal ts=2 sw=2 expandtab 508 | 509 | 510 | " javascript 511 | let g:javascript_enable_domhtmlcss = 1 512 | 513 | " vim-javascript 514 | augroup vimrc-javascript 515 | autocmd! 516 | autocmd FileType javascript setl tabstop=4|setl shiftwidth=4|setl expandtab softtabstop=4 517 | augroup END 518 | 519 | 520 | " ruby 521 | let g:rubycomplete_buffer_loading = 1 522 | let g:rubycomplete_classes_in_global = 1 523 | let g:rubycomplete_rails = 1 524 | 525 | augroup vimrc-ruby 526 | autocmd! 527 | autocmd BufNewFile,BufRead *.rb,*.rbw,*.gemspec setlocal filetype=ruby 528 | autocmd FileType ruby set tabstop=2|set shiftwidth=2|set expandtab softtabstop=2 529 | augroup END 530 | 531 | let g:tagbar_type_ruby = { 532 | \ 'kinds' : [ 533 | \ 'm:modules', 534 | \ 'c:classes', 535 | \ 'd:describes', 536 | \ 'C:contexts', 537 | \ 'f:methods', 538 | \ 'F:singleton methods' 539 | \ ] 540 | \ } 541 | 542 | " RSpec.vim mappings 543 | map t :call RunCurrentSpecFile() 544 | map s :call RunNearestSpec() 545 | map l :call RunLastSpec() 546 | map a :call RunAllSpecs() 547 | 548 | " For ruby refactory 549 | if has('nvim') 550 | runtime! macros/matchit.vim 551 | else 552 | packadd! matchit 553 | endif 554 | 555 | " Ruby refactory 556 | nnoremap rap :RAddParameter 557 | nnoremap rcpc :RConvertPostConditional 558 | nnoremap rel :RExtractLet 559 | vnoremap rec :RExtractConstant 560 | vnoremap relv :RExtractLocalVariable 561 | nnoremap rit :RInlineTemp 562 | vnoremap rrlv :RRenameLocalVariable 563 | vnoremap rriv :RRenameInstanceVariable 564 | vnoremap rem :RExtractMethod 565 | 566 | 567 | " typescript 568 | let g:yats_host_keyword = 1 569 | 570 | 571 | 572 | "***************************************************************************** 573 | "***************************************************************************** 574 | 575 | "" Include user's local vim config 576 | if filereadable(expand("~/.vimrc.local")) 577 | source ~/.vimrc.local 578 | endif 579 | 580 | "***************************************************************************** 581 | "" Convenience variables 582 | "***************************************************************************** 583 | 584 | " vim-airline 585 | if !exists('g:airline_symbols') 586 | let g:airline_symbols = {} 587 | endif 588 | 589 | if !exists('g:airline_powerline_fonts') 590 | let g:airline#extensions#tabline#left_sep = ' ' 591 | let g:airline#extensions#tabline#left_alt_sep = '|' 592 | let g:airline_left_sep = '▶' 593 | let g:airline_left_alt_sep = '»' 594 | let g:airline_right_sep = '◀' 595 | let g:airline_right_alt_sep = '«' 596 | let g:airline#extensions#branch#prefix = '⤴' "➔, ➥, ⎇ 597 | let g:airline#extensions#readonly#symbol = '⊘' 598 | let g:airline#extensions#linecolumn#prefix = '¶' 599 | let g:airline#extensions#paste#symbol = 'ρ' 600 | let g:airline_symbols.linenr = '␊' 601 | let g:airline_symbols.branch = '⎇' 602 | let g:airline_symbols.paste = 'ρ' 603 | let g:airline_symbols.paste = 'Þ' 604 | let g:airline_symbols.paste = '∥' 605 | let g:airline_symbols.whitespace = 'Ξ' 606 | else 607 | let g:airline#extensions#tabline#left_sep = '' 608 | let g:airline#extensions#tabline#left_alt_sep = '' 609 | 610 | " powerline symbols 611 | let g:airline_left_sep = '' 612 | let g:airline_left_alt_sep = '' 613 | let g:airline_right_sep = '' 614 | let g:airline_right_alt_sep = '' 615 | let g:airline_symbols.branch = '' 616 | let g:airline_symbols.readonly = '' 617 | let g:airline_symbols.linenr = '' 618 | endif 619 | --------------------------------------------------------------------------------