Guest User

Untitled

a guest
May 25th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. " Vanity
  2. colorscheme desert
  3. " Formatting for C development
  4. set tabstop=4
  5. set shiftwidth=4
  6. set softtabstop=4
  7. " set smartindent
  8. " set cindent
  9. syntax enable
  10. set number
  11. filetype plugin indent on
  12. " Key mapping
  13. let mapleader = "y"
  14. noremap <leader>* O/*<esc>jo*/<esc>j0
  15. noremap <leader>{ O{<esc>jo}<esc>j0
  16. map <space> viw
  17. map <F2> :setlocal paste!<cr>
  18. map <F3> :echo 'Current time: ' . strftime('%c')<cr>
  19. " Status Line
  20. set laststatus=2
  21. set statusline=%(Row:%l,Col:%c,Byte:%o%)\ ASCII:%b\ \ %(%4{HasPaste()}%)\ \ %=%t\ \ \ \ %4{strftime(\"%a,\ %b-%d-%Y\")}
  22. " Functions
  23. runtime! ftplugin/man.vim
  24. func! DeleteTrailingWS()
  25. exe "normal mz"
  26. %s/\s\+$//ge
  27. exe "normal `z"
  28. endfunc
  29. autocmd BufWrite *.c :call DeleteTrailingWS()
  30. autocmd BufWrite *.h :call DeleteTrailingWS()
  31. autocmd BufWrite *.py :call DeleteTrailingWS()
  32. autocmd BufWrite *.sh :call DeleteTrailingWS()
  33. func! ChangeTabToSpace()
  34. exe "normal mz"
  35. %s/\t/ /ge
  36. exe "normal `z"
  37. endfunc
  38. autocmd BufWrite *.py :call ChangeTabToSpace()
  39. func! ChangeSpaceToTab()
  40. exe "normal mz"
  41. %s/ /\t/ge
  42. exe "normal `z"
  43. endfunc
  44. autocmd BufWrite *.c :call ChangeSpaceToTab()
  45. func! HasPaste()
  46. if &paste
  47. return 'Paste Mode'
  48. endif
  49. return ''
  50. endfunc
Add Comment
Please, Sign In to add comment