Advertisement
Guest User

Untitled

a guest
Jul 10th, 2012
268
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VIM 2.95 KB | None | 0 0
  1. set nocompatible
  2.  
  3. set number          " show line numbers
  4. set ruler           " show the cursor position all the time
  5. set nowrap          " don't wrap lines
  6. set tabstop=4       " a tab is two spaces
  7. set expandtab       " insert space characters whenever the tab key is pressed
  8.  
  9. set backspace=indent,eol,start      " allow backspacing over everything in insert mode
  10.  
  11. set autoindent      " always set autoindenting on
  12. set copyindent      " copy the previous indentation on autoindenting
  13. set shiftwidth=2
  14.  
  15. " Color scheme and font
  16. if has("gui_running")
  17.   colorscheme molokai
  18.   set guifont=Dina:h8:cANSI
  19. endif
  20.  
  21. " Script grabbed from vim.wikia.com for restoring screen size/position
  22.  
  23. " To enable the saving and restoring of screen positions.
  24. let g:screen_size_restore_pos = 1
  25.  
  26. " To save and restore screen for each Vim instance.
  27. " This is useful if you routinely run more than one Vim instance.
  28. " For all Vim to use the same settings, change this to 0.
  29. let g:screen_size_by_vim_instance = 1
  30.  
  31. if has("gui_running")
  32.   function! ScreenFilename()
  33.     if has('amiga')
  34.       return "s:.vimsize"
  35.     elseif has('win32')
  36.       return $VIM.'\_vimsize'
  37.     else
  38.       return $HOME.'/.vimsize'
  39.     endif
  40.   endfunction
  41.  
  42.   function! ScreenRestore()
  43.     " Restore window size (columns and lines) and position
  44.     " from values stored in vimsize file.
  45.     " Must set font first so columns and lines are based on font size.
  46.     let f = ScreenFilename()
  47.     if has("gui_running") && g:screen_size_restore_pos && filereadable(f)
  48.       let vim_instance = (g:screen_size_by_vim_instance==1?(v:servername):'GVIM')
  49.       for line in readfile(f)
  50.         let sizepos = split(line)
  51.         if len(sizepos) == 5 && sizepos[0] == vim_instance
  52.           silent! execute "set columns=".sizepos[1]." lines=".sizepos[2]
  53.           silent! execute "winpos ".sizepos[3]." ".sizepos[4]
  54.           return
  55.         endif
  56.       endfor
  57.     endif
  58.   endfunction
  59.  
  60.   function! ScreenSave()
  61.     " Save window size and position.
  62.     if has("gui_running") && g:screen_size_restore_pos
  63.       let vim_instance = (g:screen_size_by_vim_instance==1?(v:servername):'GVIM')
  64.       let data = vim_instance . ' ' . &columns . ' ' . &lines . ' ' .
  65.             \ (getwinposx()<0?0:getwinposx()) . ' ' .
  66.             \ (getwinposy()<0?0:getwinposy())
  67.       let f = ScreenFilename()
  68.       if filereadable(f)
  69.         let lines = readfile(f)
  70.         call filter(lines, "v:val !~ '^" . vim_instance . "\\>'")
  71.         call add(lines, data)
  72.       else
  73.         let lines = [data]
  74.       endif
  75.       call writefile(lines, f)
  76.     endif
  77.   endfunction
  78.  
  79.   if !exists('g:screen_size_restore_pos')
  80.     let g:screen_size_restore_pos = 1
  81.   endif
  82.   if !exists('g:screen_size_by_vim_instance')
  83.     let g:screen_size_by_vim_instance = 1
  84.   endif
  85.   autocmd VimEnter * if g:screen_size_restore_pos == 1 | call ScreenRestore() | endif
  86.   autocmd VimLeavePre * if g:screen_size_restore_pos == 1 | call ScreenSave() | endif
  87. endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement