.vimrc 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. " Make Vim no Vi-compatible
  2. set nocompatible
  3. " Enable syntax highlighting on a dark background
  4. syntax on
  5. set background=dark
  6. " Alignment
  7. match ColorColumn "\%81v."
  8. " Indentation/Tab
  9. set autoindent
  10. set expandtab
  11. set shiftwidth=4
  12. set tabstop=4
  13. " Incremental and highlight search
  14. set incsearch
  15. set hlsearch
  16. " Allow buffers to be hidden
  17. set hidden
  18. " Default history value is 20
  19. set history=100
  20. " Press F12 before pasting text to avoid crazy indentation
  21. set pastetoggle=<F12>
  22. " Show matching brackets.
  23. set showmatch
  24. " Enable wildmenu
  25. set wildmenu
  26. set wildignore+=*.o,*.x
  27. set wildignore+=*.swp,*.bak
  28. set wildignorecase
  29. set wildmode=full
  30. " Set backup
  31. if has("vms")
  32. set nobackup
  33. else
  34. set backup
  35. set backupdir=~/.vim/backup
  36. set directory=~/.vim/swap
  37. endif
  38. " Jump to the last position when reopening a file
  39. if has("autocmd")
  40. au BufReadPost *
  41. \ if line("'\"") > 1 && line("'\"") <= line("$") |
  42. \ exe "normal! g'\"" |
  43. \ endif
  44. endif
  45. " Load personal colorscheme
  46. colo tshdarkbg
  47. " Key mapping
  48. let mapleader = ";"
  49. inoremap <C-a> <Home>
  50. inoremap <C-e> <End>
  51. cnoremap <C-a> <Home>
  52. cnoremap <C-e> <End>
  53. nnoremap <Leader>b :buffer *
  54. nnoremap <Leader>l :ls<CR>
  55. nnoremap <S-k> :bn<CR>
  56. nnoremap <S-j> :bp<CR>
  57. nnoremap <Leader>k :bdelete<CR>
  58. nnoremap <Leader>v :vsplit<CR>
  59. nnoremap <F5> :e!<CR>
  60. augroup Shebang
  61. autocmd BufNewFile *.sh 0put =\"#!/bin/bash\"|$
  62. autocmd BufNewFile *.py 0put =\"#!/usr/bin/python\"|$
  63. augroup END