Last active
May 22, 2017 21:27
-
-
Save felipecwb/b545cf3e959f018c1e4e155aff4940b5 to your computer and use it in GitHub Desktop.
small config to vim
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" avoid close vim when delete buffer | |
function! <SID>BufcloseCloseIt() | |
let l:currentBufNum = bufnr("%") | |
let l:alternateBufNum = bufnr("#") | |
if buflisted(l:alternateBufNum) | |
buffer # | |
else | |
bnext | |
endif | |
if bufnr("%") == l:currentBufNum | |
new | |
endif | |
if buflisted(l:currentBufNum) | |
execute("bdelete!" . l:currentBufNum) | |
endif | |
endfunction | |
" auto complete | |
autocmd FileType python set omnifunc=pythoncomplete#Complete | |
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS | |
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags | |
autocmd FileType php set omnifunc=phpcomplete#CompletePHP | |
autocmd FileType c set omnifunc=ccomplete#Complete | |
command! Bclose call <SID>BufcloseCloseIt() "avoid cole vim whem close a buffer | |
map <silent><leader><cr> :nohlsearch<cr> | |
nnoremap <silent><Leader>/ :nohlsearch<CR> | |
" like duplicate lines | |
nnoremap <C-d> YP | |
vnoremap <C-d> YP | |
" yank to OS's clipboard | |
vnoremap yo "+y | |
" paste from OS's clipboard | |
nnoremap po "+p | |
" reselect when identing | |
vnoremap < <gv | |
vnoremap > >gv | |
" delete register | |
nnoremap x "_x | |
nnoremap d "_d | |
nnoremap D "_D | |
vnoremap d "_d | |
nnoremap <leader>d ""d | |
nnoremap <leader>D ""D | |
vnoremap <leader>d ""d | |
" visual mode pressing * or # searches for the current selection | |
vnoremap <silent> * :call VisualSelection('f')<CR> | |
vnoremap <silent> # :call VisualSelection('b')<CR> | |
" tabs | |
nnoremap <C-S-tab> :tabprevious<CR> | |
nnoremap <C-tab> :tabnext<CR> | |
nnoremap <C-t> :tabnew<CR> | |
nnoremap <C-Delete> :tabclose<CR> | |
inoremap <C-S-tab> <Esc>:tabprevious<CR> | |
inoremap <C-tab> <Esc>:tabnext<CR> | |
inoremap <C-t> <Esc>:tabnew<CR> | |
inoremap <C-Delete> <Esc>:tabclose<CR> | |
" views | |
map <C-k> <C-W>k | |
map <C-j> <C-W>j | |
map <C-h> <C-W>h | |
map <C-l> <C-W>l | |
map <C-Up> <C-k> | |
map <C-Down> <C-j> | |
map <C-Left> <C-h> | |
map <C-Right> <C-l> | |
" sets | |
syntax on | |
set showmatch | |
set nowrap | |
set scrolloff=0 | |
set sidescroll=1 | |
"set mouse=a | |
set number | |
set expandtab | |
set conceallevel=0 | |
set tabstop=4 | |
set shiftwidth=4 | |
set fileformats=unix | |
set encoding=utf8 | |
set autoread | |
set backspace=indent,eol,start | |
set ruler | |
set history=800 | |
set laststatus=2 | |
set cscopetagorder=1 | |
set smartindent | |
set autoindent | |
set incsearch | |
set hlsearch | |
set ignorecase | |
set smartcase | |
set switchbuf=useopen | |
set wildmenu | |
set wildignore=*.o,*~,*.pyc | |
set dir=~/.vim/swap//,/var/tmp//,/tmp//,. | |
set tags=~/.vim/tag//,/var/tmp//,/tmp//, | |
set lazyredraw | |
set magic | |
set listchars=tab:▸→,extends:❯,precedes:❮,trail:· | |
set showbreak=↪ | |
set list | |
" theme | |
colorscheme delek |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment