Guest User

Untitled

a guest
May 5th, 2012
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. if exists('g:loaded_window_manager') || &cp || ! has('gui_macvim')
  2. finish
  3. endif
  4. let g:loaded_window_manager = 1
  5.  
  6.  
  7. function! s:ResizeWindow(direction, ...)
  8. let steps = a:0 ? a:1 : 10
  9.  
  10. if a:direction == 'x+'
  11. exe 'set columns+='.steps
  12. elseif a:direction == 'x-'
  13. exe 'set columns-='.steps
  14. elseif a:direction == 'y+'
  15. exe 'set lines-='.steps
  16. elseif a:direction == 'y-'
  17. exe 'set lines+='.steps
  18. endif
  19. endfunction
  20.  
  21. command! -nargs=+ Guiresize call s:ResizeWindow(<f-args>)
  22.  
  23. silent! map <unique> <silent> <C-M-l> :Guiresize x+<cr>
  24. silent! map <unique> <silent> <C-M-h> :Guiresize x-<cr>
  25. silent! map <unique> <silent> <C-M-k> :Guiresize y+<cr>
  26. silent! map <unique> <silent> <C-M-j> :Guiresize y-<cr>
  27.  
  28. function! s:MoveWindow(direction, ...)
  29. let pixels = a:0 ? a:1 : 20
  30.  
  31. if a:direction == 'left'
  32. let newpos = (getwinposx() - pixels).' '.getwinposy()
  33. elseif a:direction == 'right'
  34. let newpos = (getwinposx() + pixels).' '.getwinposy()
  35. elseif a:direction == 'up'
  36. let newpos = getwinposx().' '.(getwinposy() + pixels)
  37. elseif a:direction == 'down'
  38. let newpos = getwinposx().' '.(getwinposy() - pixels)
  39. endif
  40. exe 'winpos '.newpos
  41. endfunction
  42.  
  43. command! -nargs=+ Guinudge call s:MoveWindow(<f-args>)
  44.  
  45. silent! map <unique> <silent> <M-l> :Guinudge right<cr>
  46. silent! map <unique> <silent> <M-h> :Guinudge left<cr>
  47. silent! map <unique> <silent> <M-k> :Guinudge up<cr>
  48. silent! map <unique> <silent> <M-j> :Guinudge down<cr>
Advertisement
Add Comment
Please, Sign In to add comment