aboutsummaryrefslogtreecommitdiffstats
path: root/.vimrc
diff options
context:
space:
mode:
Diffstat (limited to '.vimrc')
-rw-r--r--.vimrc118
1 files changed, 118 insertions, 0 deletions
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..6b938b5
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,118 @@
+" Use Vim settings |
+set nocompatible | filetype indent plugin on | syn on
+
+" ================ General Config ====================
+
+set number "Line numbers are good
+set backspace=indent,eol,start "Allow backspace in insert mode
+set history=1000 "Store lots of :cmdline history
+set showcmd "Show incomplete cmds down the bottom
+set showmode "Show current mode down the bottom
+set gcr=a:blinkon0 "Disable cursor blink
+set visualbell "No sounds
+set autoread "Reload files changed outside vim
+set cursorline "Show cursorline
+
+" This makes vim act like all other editors, buffers can
+" exist in the background without being in a window.
+" http://items.sjbach.com/319/configuring-vim-right
+set hidden
+
+"turn on syntax highlighting
+syntax on
+
+" Change leader to a comma because the backslash is too far away
+" That means all \x commands turn into ,x
+" The mapleader has to be set before vundle starts loading all
+" the plugins.
+let mapleader=","
+
+" ================ Turn Off Swap Files ==============
+
+set noswapfile
+set nobackup
+set nowb
+
+
+" ================ Persistent Undo ==================
+
+" Keep undo history across sessions, by storing in file.
+" Only works all the time.
+if has('persistent_undo')
+ silent !mkdir ~/.vim/backups > /dev/null 2>&1
+ set undodir=~/.vim/backups
+ set undofile
+endif
+
+" ================ Indentation ======================
+
+set autoindent
+set smartindent
+set smarttab
+set shiftwidth=2
+set softtabstop=2
+set tabstop=2
+set expandtab
+
+"filetype plugin on
+"filetype indent on
+
+" Display tabs and trailing spaces visually
+set list listchars=tab:\ \ ,trail:ยท
+
+set nowrap "Don't wrap lines
+set linebreak "Wrap lines at convenient points
+
+" ================ Folds ============================
+
+set foldmethod=indent "fold based on indent
+set foldnestmax=3 "deepest fold is 3 levels
+set nofoldenable "dont fold by default
+
+" ================ Completion =======================
+
+set wildmode=list:longest
+set wildmenu "enable ctrl-n and ctrl-p to scroll thru matches
+set wildignore=*.o,*.obj,*~ "stuff to ignore when tab completing
+set wildignore+=*vim/backups*
+set wildignore+=*sass-cache*
+set wildignore+=*DS_Store*
+set wildignore+=vendor/rails/**
+set wildignore+=vendor/cache/**
+set wildignore+=*.gem
+set wildignore+=log/**
+set wildignore+=tmp/**
+set wildignore+=*.png,*.jpg,*.gif
+
+" ================ Scrolling ========================
+
+set scrolloff=8 "Start scrolling when we're 8 lines away from margins
+set sidescrolloff=15
+set sidescroll=1
+
+" ================ Vim-Addon-Manager ========================
+
+fun! SetupVAM()
+ let c = get(g:, 'vim_addon_manager', {})
+ let g:vim_addon_manager = c
+ let c.plugin_root_dir = expand('$HOME', 1) . '/.vim/vim-addons'
+ " most used options you may want to use:
+ " let c.log_to_buf = 1
+ " let c.auto_install = 0
+ let &rtp.=(empty(&rtp)?'':',').c.plugin_root_dir.'/vim-addon-manager'
+ if !isdirectory(c.plugin_root_dir.'/vim-addon-manager/autoload')
+ execute '!git clone --depth=1 git://github.com/MarcWeber/vim-addon-manager '
+ \ shellescape(c.plugin_root_dir.'/vim-addon-manager', 1)
+ endif
+
+ " This provides the VAMActivate command, you could be passing plugin names, too
+ call vam#ActivateAddons([], {})
+endfun
+call SetupVAM()
+
+" ================ Addons and their settings ========================
+so ~/.vim/addons.vim " addons
+so ~/.vim/addons-settings.vim " addon settings
+so ~/.vim/custom-settings.vim " custom settings
+so ~/.vim/custom-functions.vim " custom functions
+