My setup, part one: vim
In this post series, I will talk about my software setup. It will not be an exclusive list, just some various configurations of software I use the most. In this first, post I will present my vim configuration.
I use vim for many years now, and I got through many different configurations. Lately, I've been removing some plugins that I simply did not use anymore, or fancy ones that I did not think that they were really required (Looking at you, powerline).
Disclaimer: I introspected my workflow and tuned Vim to the way I work. Not the other way around where you change your habits to work around editor setup. And I encourage you to do this yourself regardless of your editor.
Plugins
Plugin Manager: pathogen
I've always used pathogen since the
beginning. I always though the simple setup of git clone
in the
~/.vim/bundle/
directory was the most elegant way to handle plugins.
ctrlp.vim
indentline
nerdcommenter
nerdtree
smartgf.vim
tagbar
YouCompleteMe
jellybeans
Configuration
set ai
set nu
set cc =80
set ts =4
set t_Co =256
set shiftwidth =4
set cursorline
set list listchars =tab:»·,trail:·,precedes:<
set tabstop =8
set softtabstop =0
set expandtab
set smarttab
set backspace =indent,eol,start
set noswapfile
set splitright
set autochdir
set encoding =utf-8
syntax on
nmap <F8> :TagbarToggle<CR>
noremap <Space><Space> :tabedit .<CR>
noremap <S-Tab> :tabprevious<CR>
noremap <Tab> :tabnext<CR>
noremap <C-d> :vs<CR>
noremap <S-d> :split<CR>
noremap <C-p> :CtrlP<CR>
noremap <S-Right> <C-w><Right>
noremap <S-Left> <C-w><Left>
noremap <S-Up> <C-w><Up>
noremap <S-Down> <C-w><Down>
noremap <C-a> gg<S-v>G
inoremap <C-a> <Esc>gg<S-v>G
hi CursorLine term=bold cterm=bold guibg=Grey40
hi SpecialKey ctermfg=240 ctermbg=bg