diff --git a/.vim/autoload/pathogen.vim b/.vim/autoload/pathogen.vim
new file mode 100644
index 0000000..3accbe6
--- /dev/null
+++ b/.vim/autoload/pathogen.vim
@@ -0,0 +1,245 @@
+" pathogen.vim - path option manipulation
+" Maintainer: Tim Pope
+" Version: 2.0
+
+" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
+"
+" For management of individually installed plugins in ~/.vim/bundle (or
+" ~\vimfiles\bundle), adding `call pathogen#infect()` to your .vimrc
+" prior to `filetype plugin indent on` is the only other setup necessary.
+"
+" The API is documented inline below. For maximum ease of reading,
+" :set foldmethod=marker
+
+if exists("g:loaded_pathogen") || &cp
+ finish
+endif
+let g:loaded_pathogen = 1
+
+" Point of entry for basic default usage. Give a directory name to invoke
+" pathogen#runtime_append_all_bundles() (defaults to "bundle"), or a full path
+" to invoke pathogen#runtime_prepend_subdirectories(). Afterwards,
+" pathogen#cycle_filetype() is invoked.
+function! pathogen#infect(...) abort " {{{1
+ let source_path = a:0 ? a:1 : 'bundle'
+ if source_path =~# '[\\/]'
+ call pathogen#runtime_prepend_subdirectories(source_path)
+ else
+ call pathogen#runtime_append_all_bundles(source_path)
+ endif
+ call pathogen#cycle_filetype()
+endfunction " }}}1
+
+" Split a path into a list.
+function! pathogen#split(path) abort " {{{1
+ if type(a:path) == type([]) | return a:path | endif
+ let split = split(a:path,'\\\@"),'!isdirectory(v:val)')) && (!filereadable(dir.sep.'doc'.sep.'tags') || filewritable(dir.sep.'doc'.sep.'tags'))
+ helptags `=dir.'/doc'`
+ endif
+ endfor
+endfunction " }}}1
+
+command! -bar Helptags :call pathogen#helptags()
+
+" Like findfile(), but hardcoded to use the runtimepath.
+function! pathogen#runtime_findfile(file,count) "{{{1
+ let rtp = pathogen#join(1,pathogen#split(&rtp))
+ return fnamemodify(findfile(a:file,rtp,a:count),':p')
+endfunction " }}}1
+
+" Backport of fnameescape().
+function! pathogen#fnameescape(string) " {{{1
+ if exists('*fnameescape')
+ return fnameescape(a:string)
+ elseif a:string ==# '-'
+ return '\-'
+ else
+ return substitute(escape(a:string," \t\n*?[{`$\\%#'\"|!<"),'^[+>]','\\&','')
+ endif
+endfunction " }}}1
+
+function! s:find(count,cmd,file,lcd) " {{{1
+ let rtp = pathogen#join(1,pathogen#split(&runtimepath))
+ let file = pathogen#runtime_findfile(a:file,a:count)
+ if file ==# ''
+ return "echoerr 'E345: Can''t find file \"".a:file."\" in runtimepath'"
+ elseif a:lcd
+ let path = file[0:-strlen(a:file)-2]
+ execute 'lcd `=path`'
+ return a:cmd.' '.pathogen#fnameescape(a:file)
+ else
+ return a:cmd.' '.pathogen#fnameescape(file)
+ endif
+endfunction " }}}1
+
+function! s:Findcomplete(A,L,P) " {{{1
+ let sep = pathogen#separator()
+ let cheats = {
+ \'a': 'autoload',
+ \'d': 'doc',
+ \'f': 'ftplugin',
+ \'i': 'indent',
+ \'p': 'plugin',
+ \'s': 'syntax'}
+ if a:A =~# '^\w[\\/]' && has_key(cheats,a:A[0])
+ let request = cheats[a:A[0]].a:A[1:-1]
+ else
+ let request = a:A
+ endif
+ let pattern = substitute(request,'\'.sep,'*'.sep,'g').'*'
+ let found = {}
+ for path in pathogen#split(&runtimepath)
+ let path = expand(path, ':p')
+ let matches = split(glob(path.sep.pattern),"\n")
+ call map(matches,'isdirectory(v:val) ? v:val.sep : v:val')
+ call map(matches,'expand(v:val, ":p")[strlen(path)+1:-1]')
+ for match in matches
+ let found[match] = 1
+ endfor
+ endfor
+ return sort(keys(found))
+endfunction " }}}1
+
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Ve :execute s:find(,'edit',,0)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vedit :execute s:find(,'edit',,0)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vopen :execute s:find(,'edit',,1)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vsplit :execute s:find(,'split',,1)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vvsplit :execute s:find(,'vsplit',,1)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vtabedit :execute s:find(,'tabedit',,1)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vpedit :execute s:find(,'pedit',,1)
+command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vread :execute s:find(,'read',,1)
+
+" vim:set ft=vim ts=8 sw=2 sts=2:
diff --git a/.vim/bundle/delimitMate b/.vim/bundle/delimitMate
new file mode 160000
index 0000000..5a84c1a
--- /dev/null
+++ b/.vim/bundle/delimitMate
@@ -0,0 +1 @@
+Subproject commit 5a84c1a746cad05288a7bf9c7e0739c1ac56b420
diff --git a/.vim/bundle/nerdcommenter b/.vim/bundle/nerdcommenter
new file mode 160000
index 0000000..cb242a9
--- /dev/null
+++ b/.vim/bundle/nerdcommenter
@@ -0,0 +1 @@
+Subproject commit cb242a9cb41e9fc9884caa2235c67d18b18e9067
diff --git a/.vim/bundle/nerdtree b/.vim/bundle/nerdtree
new file mode 160000
index 0000000..2cb0fc7
--- /dev/null
+++ b/.vim/bundle/nerdtree
@@ -0,0 +1 @@
+Subproject commit 2cb0fc78fb4c7a1db5f51c042a447cc50f09983d
diff --git a/.vim/bundle/supertab b/.vim/bundle/supertab
new file mode 160000
index 0000000..8302775
--- /dev/null
+++ b/.vim/bundle/supertab
@@ -0,0 +1 @@
+Subproject commit 8302775fc2dee4935c35f3436e59486940dba3b8
diff --git a/.vim/colors/smyck.vim b/.vim/colors/smyck.vim
new file mode 100644
index 0000000..96ef50a
--- /dev/null
+++ b/.vim/colors/smyck.vim
@@ -0,0 +1,83 @@
+" ----------------------------------------------------------------------------
+" Vim color file
+" Maintainer: John-Paul Bader
+" Last Change: 2012 March
+" License: Beer Ware
+" ----------------------------------------------------------------------------
+
+let g:colors_name = "smyck"
+
+highlight clear Normal
+set background=dark
+set linespace=2
+
+" Syntaxeinstellungen zuruecksetzen, wenn Syntax Highlighting aktiviert ist
+if exists("syntax_on")
+ syntax reset
+endif
+
+hi Normal cterm=none ctermbg=none ctermfg=15 gui=none guibg=#2D2D2D guifg=#F7F7F7
+hi LineNr cterm=none ctermbg=none ctermfg=8 gui=none guibg=#2D2D2D guifg=#8F8F8F
+hi StatusLine cterm=none ctermbg=8 ctermfg=15 gui=none guibg=#5D5D5D guifg=#FBFBFB
+hi StatusLineNC cterm=none ctermbg=15 ctermfg=8 gui=none guibg=#5D5D5D guifg=#FBFBFB
+hi Search cterm=none ctermbg=6 ctermfg=15 gui=none guibg=#2EB5C1 guifg=#F7F7F7
+hi IncSearch cterm=none ctermbg=3 ctermfg=8 gui=none guibg=#F6DC69 guifg=#8F8F8F
+hi ColumnMargin cterm=none ctermbg=0 gui=none guibg=#000000
+hi Error cterm=none ctermbg=1 ctermfg=15 gui=none guifg=#F7F7F7
+hi ErrorMsg cterm=none ctermbg=1 ctermfg=15 gui=none guifg=#F7F7F7
+hi NonText cterm=bold ctermbg=none ctermfg=8 gui=bold guifg=#8F8F8F
+hi ModeMsg cterm=bold ctermbg=none ctermfg=10 gui=none
+hi Pmenu cterm=none ctermbg=8 ctermfg=15 gui=none guibg=#8F8F8F guifg=#F7F7F7
+hi PmenuSel cterm=none ctermbg=15 ctermfg=8 gui=none guibg=#F7F7F7 guifg=#8F8F8F
+hi PmenuSbar cterm=none ctermbg=15 ctermfg=8 gui=none guibg=#F7F7F7 guifg=#8F8F8F
+hi SpellBad cterm=none ctermbg=1 ctermfg=15 gui=none guifg=#F7F7F7
+hi SpellCap cterm=none ctermbg=4 ctermfg=15 gui=none guifg=#F7F7F7
+hi SpellRare cterm=none ctermbg=4 ctermfg=15 gui=none guifg=#F7F7F7
+hi SpellLocal cterm=none ctermbg=4 ctermfg=15 gui=none guifg=#F7F7F7
+hi Visual cterm=none ctermbg=15 ctermfg=8 gui=none guibg=#F7F7F7 guifg=#8F8F8F
+hi Directory cterm=none ctermbg=none ctermfg=4 gui=none
+hi SpecialKey cterm=none ctermbg=none ctermfg=8 gui=none guifg=#8F8F8F
+
+" ----------------------------------------------------------------------------
+" Syntax Highlighting
+" ----------------------------------------------------------------------------
+" Universelle Einstellungen
+hi Keyword cterm=none ctermbg=none ctermfg=10 gui=none guifg=#D1FA71
+hi Comment cterm=none ctermbg=none ctermfg=8 gui=none guifg=#8F8F8F
+hi Delimiter cterm=none ctermbg=none ctermfg=15 gui=none guifg=#F7F7F7
+hi Identifier cterm=none ctermbg=none ctermfg=12 gui=none guifg=#96D9F1
+hi Structure cterm=none ctermbg=none ctermfg=magenta gui=none guifg=#9DEEF2
+hi Ignore cterm=none ctermbg=none ctermfg=magenta gui=none guifg=bg
+hi Constant cterm=none ctermbg=none ctermfg=12 gui=none guifg=#96D9F1
+hi PreProc cterm=none ctermbg=none ctermfg=10 gui=none guifg=#D1FA71
+hi Type cterm=none ctermbg=none ctermfg=12 gui=none guifg=#96D9F1
+hi Statement cterm=none ctermbg=none ctermfg=10 gui=none guifg=#D1FA71
+hi Special cterm=none ctermbg=none ctermfg=magenta gui=none guifg=#d7d7d7
+hi String cterm=none ctermbg=none ctermfg=3 gui=none guifg=#F6DC69
+hi Number cterm=none ctermbg=none ctermfg=3 gui=none guifg=#F6DC69
+hi Underlined cterm=none ctermbg=none ctermfg=magenta gui=underline guibg=#272727
+hi Symbol cterm=none ctermbg=none ctermfg=9 gui=none guifg=#FAB1AB
+hi Method cterm=none ctermbg=none ctermfg=15 gui=none guifg=#F7F7F7
+hi Interpolation cterm=none ctermbg=none ctermfg=6 gui=none guifg=#2EB5C1
+
+hi link rubyBeginend Keyword
+hi link rubyClass Keyword
+hi link rubyModule Keyword
+hi link rubyKeyword Keyword
+hi link rubyOperator Method
+hi link rubyIdentifier Keyword
+hi link rubyClassVariable Symbol
+hi link rubyInstanceVariable Constant
+hi link rubyGlobalVariable Constant
+hi link rubyClassVariable Method
+hi link rubyConstant Constant
+hi link rubySymbol Symbol
+hi link rubyFunction Constant
+hi link rubyControl Keyword
+hi link rubyConditional Keyword
+hi link rubyInterpolation Interpolation
+hi link rubyInterpolationDelimiter Interpolation
+hi link rubyRailsMethod Method
+
+" Erlang
+hi link erlangAtom Keyword
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..f12c6a6
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,77 @@
+set nocompatible
+
+" Initialize Pathogen
+call pathogen#infect()
+
+" Enable syntax highlighting
+syntax on
+filetype plugin indent on
+
+" Colorscheme see https://github.com/hukl/Smyck-Color-Scheme
+color smyck
+
+" Add line numbers
+set number
+set ruler
+
+" Set encoding
+set encoding=utf-8
+
+" Whitespace stuff
+set nowrap
+set tabstop=2
+set shiftwidth=2
+set softtabstop=2
+set expandtab
+
+" Show trailing spaces and highlight hard tabs
+set list listchars=tab:»·,trail:·
+
+" allow backspacing over everything in insert mode
+set backspace=indent,eol,start
+
+" Strip trailing whitespaces on each save
+fun! StripTrailingWhitespaces()
+ let l = line(".")
+ let c = col(".")
+ %s/\s\+$//e
+ call cursor(l, c)
+endfun
+autocmd BufWritePre * :call StripTrailingWhitespaces()
+
+" Highlight characters behind the 80 chars margin
+:au BufWinEnter * let w:m2=matchadd('ColumnMargin', '\%>80v.\+', -1)
+
+" Directories for swp files
+set backupdir=~/.vimbackup
+set directory=~/.vimbackup
+
+" NERDTree configuration
+let NERDTreeIgnore=['\.pyc$', '\.rbc$', '\~$']
+map n :NERDTreeToggle
+
+" make uses real tabs
+au FileType make set noexpandtab
+
+" Erlang uses 4 spaces
+au FileType erlang set softtabstop=4
+
+" Thorfile, Rakefile, Vagrantfile and Gemfile are Ruby
+au BufRead,BufNewFile {Gemfile,Rakefile,Vagrantfile,Thorfile,config.ru} set ft=ruby
+
+" md, markdown, and mk are markdown and define buffer-local preview
+au BufRead,BufNewFile *.{md,markdown,mdown,mkd,mkdn} call s:setupMarkup()
+
+" add json syntax highlighting
+au BufNewFile,BufRead *.json set ft=javascript
+
+au BufRead,BufNewFile *.txt call s:setupWrapping()
+
+" make Python follow PEP8 ( http://www.python.org/dev/peps/pep-0008/ )
+au FileType python set softtabstop=4 tabstop=4 shiftwidth=4 textwidth=79
+
+" allow backspacing over everything in insert mode
+set backspace=indent,eol,start
+
+
+