diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..dd603a4
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,30 @@
+[submodule "vim/bundle/vim-gitgutter"]
+ path = vim/bundle/vim-gitgutter
+ url = https://github.com/airblade/vim-gitgutter.git
+[submodule "vim/bundle/nerdtree"]
+ path = vim/bundle/nerdtree
+ url = https://github.com/preservim/nerdtree.git
+[submodule "vim/bundle/OmniCppComplete"]
+ path = vim/bundle/OmniCppComplete
+ url = https://github.com/vim-scripts/OmniCppComplete.git
+[submodule "vim/bundle/supertab"]
+ path = vim/bundle/supertab
+ url = https://github.com/ervandew/supertab.git
+[submodule "vim/bundle/taglist"]
+ path = vim/bundle/taglist
+ url = https://github.com/vim-scripts/taglist.vim.git
+[submodule "vim/bundle/lightline"]
+ path = vim/bundle/lightline
+ url = https://github.com/itchyny/lightline.vim.git
+[submodule "vim/bundle/rainbow"]
+ path = vim/bundle/rainbow
+ url = https://github.com/frazrepo/vim-rainbow.git
+[submodule "vim/bundle/fugitive"]
+ path = vim/bundle/fugitive
+ url = https://github.com/tpope/vim-fugitive.git
+[submodule "vim/bundle/syntastic"]
+ path = vim/bundle/syntastic
+ url = https://github.com/vim-syntastic/syntastic.git
+[submodule "vim/bundle/indentLine"]
+ path = vim/bundle/indentLine
+ url = https://github.com/Yggdroot/indentLine.git
diff --git a/Xdefaults b/Xdefaults
new file mode 100644
index 0000000..ed6bb59
--- /dev/null
+++ b/Xdefaults
@@ -0,0 +1,20 @@
+! Molokai theme
+*xterm*background: #101010
+*xterm*foreground: #d0d0d0
+*xterm*cursorColor: #d0d0d0
+*xterm*color0: #101010
+*xterm*color1: #960050
+*xterm*color2: #66aa11
+*xterm*color3: #c47f2c
+*xterm*color4: #30309b
+*xterm*color5: #7e40a5
+*xterm*color6: #3579a8
+*xterm*color7: #9999aa
+*xterm*color8: #303030
+*xterm*color9: #ff0090
+*xterm*color10: #80ff00
+*xterm*color11: #ffba68
+*xterm*color12: #5f5fee
+*xterm*color13: #bb88dd
+*xterm*color14: #4eb4fa
+*xterm*color15: #d0d0d0[
diff --git a/bash_profile_ext b/bash_profile_ext
new file mode 100644
index 0000000..46a81cc
--- /dev/null
+++ b/bash_profile_ext
@@ -0,0 +1,17 @@
+#### MAGIC VALUE: AZSQFRB8
+
+export PS1="\[\033[38;5;34m\]\u@\h \W]\\$\[$(tput sgr0)\] "
+
+alias ls='ls --color=auto'
+alias ll='ls -lah'
+alias grep='grep --color=auto'
+
+# Git should ask for password through the command line
+unset GIT_ASKPASS
+unset SSH_ASKPASS
+
+[ -e "$HOME/.dircolors" ] && DIR_COLORS="$HOME/.dircolors"
+[ -e "$DIR_COLORS" ] || DIR_COLORS=""
+eval "`dircolors -b $DIR_COLORS`"
+
+#### END MAGIC VALUE: AZSQFRB8
diff --git a/ctags b/ctags
new file mode 100644
index 0000000..c40a705
--- /dev/null
+++ b/ctags
@@ -0,0 +1,4 @@
+--c++-kinds=+p
+--fields=+iaS
+--extra=+q
+--exclude=build
diff --git a/dircolors b/dircolors
new file mode 100644
index 0000000..4d4fa30
--- /dev/null
+++ b/dircolors
@@ -0,0 +1,382 @@
+# Monokai color theme for the color GNU ls utility.
+# Designed for dircolors (GNU coreutils) 5.97
+#
+# This file was largely inspired by seebi/dircolors-solarized on github.
+#
+# How the colors were selected:
+# - Terminal emulators often have an option typically enabled by default that makes
+# bold a different color. It is important to leave this option enabled so that
+# you can access the entire 16-color palette, and not just 8 colors.
+# - We favor universality over a greater number of colors. So we limit the number
+# of colors so that this theme will work out of the box in all terminals.
+# - We choose to have the following category of files:
+# NORMAL & FILE, DIR, LINK, EXEC and
+# editable text including source, unimportant text, binary docs & multimedia source
+# files, viewable multimedia, archived/compressed, and unimportant non-text
+# - See table below to see the assignments.
+
+
+# Installation instructions
+# This file goes in the /etc directory, and must be world readable.
+# You can copy this file to .dir_colors in your $HOME directory to override
+# the system defaults.
+
+# Init {{{
+
+# COLOR needs one of these arguments: 'tty' colorizes output to ttys, but not
+# pipes. 'all' adds color characters to all output. 'none' shuts colorization
+# off.
+COLOR tty
+
+# Below, there should be one TERM entry for each termtype that is colorizable
+TERM ansi
+TERM color_xterm
+TERM color-xterm
+TERM con132x25
+TERM con132x30
+TERM con132x43
+TERM con132x60
+TERM con80x25
+TERM con80x28
+TERM con80x30
+TERM con80x43
+TERM con80x50
+TERM con80x60
+TERM cons25
+TERM console
+TERM cygwin
+TERM dtterm
+TERM Eterm
+TERM eterm-color
+TERM gnome
+TERM gnome-256color
+TERM jfbterm
+TERM konsole
+TERM kterm
+TERM linux
+TERM linux-c
+TERM mach-color
+TERM mlterm
+TERM nxterm
+TERM putty
+TERM rxvt
+TERM rxvt-256color
+TERM rxvt-cygwin
+TERM rxvt-cygwin-native
+TERM rxvt-unicode
+TERM rxvt-unicode256
+TERM rxvt-unicode-256color
+TERM screen
+TERM screen-256color
+TERM screen-256color-bce
+TERM screen-bce
+TERM screen.linux
+TERM screen-w
+TERM vt100
+TERM xterm
+TERM xterm-16color
+TERM xterm-256color
+TERM xterm-88color
+TERM xterm-color
+TERM xterm-debian
+
+# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output)
+EIGHTBIT 1
+
+#############################################################################
+# Below are the color init strings for the basic file types. A color init
+# string consists of one or more of the following numeric codes:
+#
+# Attribute codes:
+# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
+# Text color codes:
+# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
+# Background color codes:
+# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
+#
+# NOTES:
+# - See http://www.oreilly.com/catalog/wdnut/excerpt/color_names.html
+# - Color combinations
+# ANSI Color code Monokai
+# ~~~~~~~~~~~~~~~ ~~~~~~~~~
+# 00 none
+# 30 black black
+# 01;30 bright black bright black
+# 31 red red
+# 01;31 bright red orange
+# 32 green green
+# 01;32 bright green bright green
+# 33 yellow yellow
+# 01;33 bright yellow bright yellow
+# 34 blue blue
+# 01;34 bright blue bright blue
+# 35 magenta magenta
+# 01;35 bright magenta violet
+# 36 cyan cyan
+# 01;36 bright cyan bright cyan
+# 37 white white
+# 01;37 bright white bright white
+# 05;37;41
+
+# }}}
+# File type {{{
+
+# global default
+NORMAL 00
+# normal file
+FILE 00
+# directory
+DIR 36
+# symbolic link
+LINK 35
+
+# pipe, socket, block device, character device (blue bg)
+FIFO 37;44
+SOCK 37;44
+DOOR 37;44 # Solaris 2.5 and later
+BLK 37;44
+CHR 37;44
+
+# }}}
+# File attributes {{{
+
+# Orphaned symlinks (blinking white on red)
+# Blink may or may not work (works on iTerm dark or light, and Putty dark)
+ORPHAN 05;37;45
+# ... and the files that orphaned symlinks point to (blinking white on red)
+MISSING 05;37;45
+# dir that is sticky and other-writable (+t,o+w)
+STICKY_OTHER_WRITABLE 30;46
+# dir that is other-writable (o+w) and not sticky
+OTHER_WRITABLE 30;46
+
+# files with execute permission
+EXEC 01;31 # Unix
+.cmd 01;31 # Win
+.exe 01;31 # Win
+.com 01;31 # Win
+.bat 01;31 # Win
+.reg 01;31 # Win
+.app 01;31 # OSX
+
+# }}}
+# File extension {{{
+
+# List any file extensions like '.gz' or '.tar' that you would like ls
+# to colorize below. Put the extension, a space, and the color init string.
+# (and any comments you want to add after a '#')
+
+# Text {{{
+
+.txt 33
+.org 33
+.md 33
+.mkd 33
+
+# }}}
+# Source {{{
+
+.C 32
+.c 32
+.cc 32
+.csh 32
+.css 32
+.cxx 32
+.el 32
+.h 32
+.hs 32
+.htm 32
+.html 32
+.java 32
+.js 32
+.man 32
+.objc 32
+.php 32
+.pl 32
+.pm 32
+.pod 32
+.py 32
+.rb 32
+.rdf 32
+.sh 32
+.shtml 32
+.tex 32
+.vim 32
+.xml 32
+.zsh 32
+
+# }}}
+# Image {{{
+.bmp 01;35
+.cgm 01;35
+.dl 01;35
+.dvi 01;35
+.emf 01;35
+.eps 01;35
+.gif 01;35
+.jpeg 01;35
+.jpg 01;35
+.JPG 01;35
+.mng 01;35
+.pbm 01;35
+.pcx 01;35
+.pdf 01;35
+.pgm 01;35
+.png 01;35
+.ppm 01;35
+.pps 01;35
+.ppsx 01;35
+.ps 01;35
+.svg 01;35
+.svgz 01;35
+.tga 01;35
+.tif 01;35
+.tiff 01;35
+.xbm 01;35
+.xcf 01;35
+.xpm 01;35
+.xwd 01;35
+.xwd 01;35
+.yuv 01;35
+
+# }}}
+# Audio {{{
+
+.aac 01;35
+.au 01;35
+.flac 01;35
+.mid 01;35
+.midi 01;35
+.mka 01;35
+.mp3 01;35
+.mpa 01;35
+.mpeg 01;35
+.mpg 01;35
+.ogg 01;35
+.ra 01;35
+.wav 01;35
+
+# }}}
+# Video {{{
+
+.anx 01;35
+.asf 01;35
+.avi 01;35
+.axv 01;35
+.flc 01;35
+.fli 01;35
+.flv 01;35
+.gl 01;35
+.m2v 01;35
+.m4v 01;35
+.mkv 01;35
+.mov 01;35
+.mp4 01;35
+.mp4v 01;35
+.mpeg 01;35
+.mpg 01;35
+.nuv 01;35
+.ogm 01;35
+.ogv 01;35
+.ogx 01;35
+.qt 01;35
+.rm 01;35
+.rmvb 01;35
+.swf 01;35
+.vob 01;35
+.wmv 01;35
+
+# }}}
+# Documents {{{
+
+.doc 33
+.docx 33
+.rtf 33
+.dot 33
+.dotx 33
+.xls 33
+.xlsx 33
+.ppt 33
+.pptx 33
+.fla 33
+.psd 33
+
+# }}}
+# Archives {{{
+
+.7z 1;35
+.apk 1;35
+.arj 1;35
+.bin 1;35
+.bz 1;35
+.bz2 1;35
+.cab 1;35 # Win
+.deb 1;35
+.dmg 1;35 # OSX
+.gem 1;35
+.gz 1;35
+.iso 1;35
+.jar 1;35
+.msi 1;35 # Win
+.rar 1;35
+.rpm 1;35
+.tar 1;35
+.tbz 1;35
+.tbz2 1;35
+.tgz 1;35
+.tx 1;35
+.war 1;35
+.xpi 1;35
+.xz 1;35
+.z 1;35
+.Z 1;35
+.zip 1;35
+
+# }}}
+# Testing {{{
+
+.ANSI-black 30
+.ANSI-black-bright 01;30
+.ANSI-red 31
+.ANSI-red-bright 01;31
+.ANSI-green 32
+.ANSI-green-bright 01;32
+.ANSI-yellow 33
+.ANSI-yellow-bright 01;33
+.ANSI-blue 34
+.ANSI-blue-bright 01;34
+.ANSI-magenta 35
+.ANSI-magenta-bright 01;35
+.ANSI-cyan 36
+.ANSI-cyan-bright 01;36
+.ANSI-white 37
+.ANSI-white-bright 01;37
+
+# }}}
+# Custom {{{
+
+# Unimportant text files
+*# 32
+*~ 32
+.log 32
+
+# Unimportant non-text files
+*,v 01;30
+.BAK 01;30
+.DIST 01;30
+.OFF 01;30
+.OLD 01;30
+.ORIG 01;30
+.bak 01;30
+.dist 01;30
+.off 01;30
+.old 01;30
+.org_archive 01;30
+.orig 01;30
+.swo 01;30
+.swp 01;30
+
+# }}}
+
+# }}}
+
diff --git a/gitconfig b/gitconfig
new file mode 100644
index 0000000..39d6d91
--- /dev/null
+++ b/gitconfig
@@ -0,0 +1,15 @@
+[user]
+ email = anaber@pm.me
+ name = Autumn Naber
+[diff]
+ tool = vimdiff
+[difftool]
+ prompt = false
+[merge]
+ tool = fugitive
+[mergetool]
+ prompt = false
+[mergetool "fugitive"]
+ cmd = vim -f -c \"Gvdiff\" \"$MERGED\"
+[push]
+ default = simple
diff --git a/inputrc b/inputrc
new file mode 100644
index 0000000..8d73f59
--- /dev/null
+++ b/inputrc
@@ -0,0 +1,11 @@
+$include /etc/inputrc
+
+set colored-stats On
+#set completion-ignore-case On
+set completion-prefix-display-length 6
+set mark-symlinked-directories On
+
+#"\e[1;3D": beginning-of-line
+#"\e[1;3C": end-of-line
+#bind "\e[1;3D": beginning-of-line
+#bind "\e[1;3C": end-of-line
diff --git a/setup.sh b/setup.sh
new file mode 100755
index 0000000..d8440ca
--- /dev/null
+++ b/setup.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+if [ -n "$(grep AZSQFRB8 $HOME/.bash_profile)" ]; then
+ read -p "These configurations have already been applied. Continue? [y/N] "
+ if [ "$REPLY" == "y" ] || [ "$REPLY" == "Y" ]; then
+ echo "Overwriting..."
+ sed -i '/AZSQFRB8/,/END.*AZSQFRB8/d' $HOME/.bash_profile
+ else
+ echo "Aborting..."
+ exit 0
+ fi
+fi
+
+cat bash_profile_ext >> $HOME/.bash_profile
+
+copy_list=(ctags dircolors gitconfig inputrc tmux.conf vim vimrc Xdefaults)
+for config in ${copy_list[@]}; do
+ cp -r "$config" $HOME/."$config"
+done
+
+echo "Please log out and log back in for changes to take effect."
diff --git a/tmux.conf b/tmux.conf
new file mode 100644
index 0000000..57fdc07
--- /dev/null
+++ b/tmux.conf
@@ -0,0 +1,58 @@
+# split panes using | and -
+bind | split-window -h
+bind - split-window -v
+unbind '"'
+unbind %
+
+# reload config file (change file location to your the tmux.conf you want to use)
+bind r source-file ~/.tmux.conf
+
+# switch panes using Alt-arrow without prefix
+bind -n M-Left select-pane -L
+bind -n M-Right select-pane -R
+bind -n M-Up select-pane -U
+bind -n M-Down select-pane -D
+
+# Enable mouse control (clickable windows, panes, resizable panes)
+set -g mouse-select-window on
+set -g mouse-select-pane on
+set -g mouse-resize-pane on
+
+######################
+### DESIGN CHANGES ###
+######################
+
+# loud or quiet?
+set -g visual-activity off
+set -g visual-bell off
+set -g visual-silence off
+setw -g monitor-activity off
+set -g bell-action none
+
+# modes
+setw -g clock-mode-colour colour5
+setw -g mode-style 'fg=colour1 bg=colour18 bold'
+
+# panes
+set -g pane-border-style 'fg=colour19 bg=colour0'
+set -g pane-active-border-style 'bg=colour0 fg=colour9'
+
+# statusbar
+set -g status-position bottom
+set -g status-justify left
+set -g status-style 'bg=colour18 fg=colour137 dim'
+set -g status-left ''
+set -g status-right '#[fg=colour233,bg=colour19] %d/%m #[fg=colour233,bg=colour8] %H:%M:%S '
+set -g status-right-length 50
+set -g status-left-length 20
+
+setw -g window-status-current-style 'fg=colour1 bg=colour19 bold'
+setw -g window-status-current-format ' #I#[fg=colour249]:#[fg=colour255]#W#[fg=colour249]#F '
+
+setw -g window-status-style 'fg=colour9 bg=colour18'
+setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
+
+setw -g window-status-bell-style 'fg=colour255 bg=colour1 bold'
+
+# messages
+set -g message-style 'fg=colour232 bg=colour16 bold'
diff --git a/vim/autoload/pathogen.vim b/vim/autoload/pathogen.vim
new file mode 100644
index 0000000..b2891cd
--- /dev/null
+++ b/vim/autoload/pathogen.vim
@@ -0,0 +1,264 @@
+" pathogen.vim - path option manipulation
+" Maintainer: Tim Pope
+" Version: 2.4
+
+" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
+"
+" For management of individually installed plugins in ~/.vim/bundle (or
+" ~\vimfiles\bundle), adding `execute pathogen#infect()` to the top of your
+" .vimrc is the only other setup necessary.
+"
+" The API is documented inline below.
+
+if exists("g:loaded_pathogen") || &cp
+ finish
+endif
+let g:loaded_pathogen = 1
+
+" Point of entry for basic default usage. Give a relative path to invoke
+" pathogen#interpose() or an absolute path to invoke pathogen#surround().
+" Curly braces are expanded with pathogen#expand(): "bundle/{}" finds all
+" subdirectories inside "bundle" inside all directories in the runtime path.
+" If no arguments are given, defaults "bundle/{}", and also "pack/{}/start/{}"
+" on versions of Vim without native package support.
+function! pathogen#infect(...) abort
+ if a:0
+ let paths = filter(reverse(copy(a:000)), 'type(v:val) == type("")')
+ else
+ let paths = ['bundle/{}', 'pack/{}/start/{}']
+ endif
+ if has('packages')
+ call filter(paths, 'v:val !~# "^pack/[^/]*/start/[^/]*$"')
+ endif
+ let static = '^\%([$~\\/]\|\w:[\\/]\)[^{}*]*$'
+ for path in filter(copy(paths), 'v:val =~# static')
+ call pathogen#surround(path)
+ endfor
+ for path in filter(copy(paths), 'v:val !~# static')
+ if path =~# '^\%([$~\\/]\|\w:[\\/]\)'
+ call pathogen#surround(path)
+ else
+ call pathogen#interpose(path)
+ endif
+ endfor
+ call pathogen#cycle_filetype()
+ if pathogen#is_disabled($MYVIMRC)
+ return 'finish'
+ endif
+ return ''
+endfunction
+
+" Split a path into a list.
+function! pathogen#split(path) abort
+ if type(a:path) == type([]) | return a:path | endif
+ if empty(a:path) | return [] | endif
+ let split = split(a:path,'\\\@]','\\&','')
+ endif
+endfunction
+
+" Like findfile(), but hardcoded to use the runtimepath.
+function! pathogen#runtime_findfile(file,count) abort
+ let rtp = pathogen#join(1,pathogen#split(&rtp))
+ let file = findfile(a:file,rtp,a:count)
+ if file ==# ''
+ return ''
+ else
+ return fnamemodify(file,':p')
+ endif
+endfunction
+
+" vim:set et sw=2 foldmethod=expr foldexpr=getline(v\:lnum)=~'^\"\ Section\:'?'>1'\:getline(v\:lnum)=~#'^fu'?'a1'\:getline(v\:lnum)=~#'^endf'?'s1'\:'=':
diff --git a/vim/bundle/OmniCppComplete b/vim/bundle/OmniCppComplete
new file mode 160000
index 0000000..2fac015
--- /dev/null
+++ b/vim/bundle/OmniCppComplete
@@ -0,0 +1 @@
+Subproject commit 2fac015957895dffa6b298e3c028ac30560d015b
diff --git a/vim/bundle/fugitive b/vim/bundle/fugitive
new file mode 160000
index 0000000..a93ceff
--- /dev/null
+++ b/vim/bundle/fugitive
@@ -0,0 +1 @@
+Subproject commit a93ceff61f070a095c3c712c389247a80897e3b0
diff --git a/vim/bundle/indentLine b/vim/bundle/indentLine
new file mode 160000
index 0000000..5617a1c
--- /dev/null
+++ b/vim/bundle/indentLine
@@ -0,0 +1 @@
+Subproject commit 5617a1cf7d315e6e6f84d825c85e3b669d220bfa
diff --git a/vim/bundle/lightline b/vim/bundle/lightline
new file mode 160000
index 0000000..a29b833
--- /dev/null
+++ b/vim/bundle/lightline
@@ -0,0 +1 @@
+Subproject commit a29b8331e1bb36b09bafa30c3aa77e89cdd832b2
diff --git a/vim/bundle/nerdtree b/vim/bundle/nerdtree
new file mode 160000
index 0000000..eed488b
--- /dev/null
+++ b/vim/bundle/nerdtree
@@ -0,0 +1 @@
+Subproject commit eed488b1cd1867bd25f19f90e10440c5cc7d6424
diff --git a/vim/bundle/rainbow b/vim/bundle/rainbow
new file mode 160000
index 0000000..a6c7fd5
--- /dev/null
+++ b/vim/bundle/rainbow
@@ -0,0 +1 @@
+Subproject commit a6c7fd5a2b0193b5dbd03f62ad820b521dea3290
diff --git a/vim/bundle/supertab b/vim/bundle/supertab
new file mode 160000
index 0000000..f0093ae
--- /dev/null
+++ b/vim/bundle/supertab
@@ -0,0 +1 @@
+Subproject commit f0093ae12a9115498f887199809a6114659fc858
diff --git a/vim/bundle/syntastic b/vim/bundle/syntastic
new file mode 160000
index 0000000..2c4b33f
--- /dev/null
+++ b/vim/bundle/syntastic
@@ -0,0 +1 @@
+Subproject commit 2c4b33f6e6679fb5f3824d9cd38d4813c71a19a3
diff --git a/vim/bundle/taglist b/vim/bundle/taglist
new file mode 160000
index 0000000..53041fb
--- /dev/null
+++ b/vim/bundle/taglist
@@ -0,0 +1 @@
+Subproject commit 53041fbc45398a9af631a20657e109707a455339
diff --git a/vim/bundle/vim-gitgutter b/vim/bundle/vim-gitgutter
new file mode 160000
index 0000000..256702d
--- /dev/null
+++ b/vim/bundle/vim-gitgutter
@@ -0,0 +1 @@
+Subproject commit 256702dd1432894b3607d3de6cd660863b331818
diff --git a/vim/colors/apprentice.vim b/vim/colors/apprentice.vim
new file mode 100755
index 0000000..5a35faf
--- /dev/null
+++ b/vim/colors/apprentice.vim
@@ -0,0 +1,224 @@
+" Apprentice.vim -- Vim color scheme.
+" Author: Romain Lafourcade (romainlafourcade@gmail.com)
+" Webpage: https://github.com/romainl/Apprentice
+" Description: Essentially a streamlining and conversion to xterm colors of 'sorcerer' by Jeet Sukumaran (jeetsukumaran@gmailcom)
+" Last Change: 2020-12-19
+
+hi clear
+if exists("syntax_on")
+ syntax reset
+endif
+
+let colors_name = "apprentice"
+
+if ($TERM =~ '256' || &t_Co >= 256) || has("gui_running")
+ hi Normal ctermbg=235 ctermfg=250 cterm=NONE guibg=#262626 guifg=#bcbcbc gui=NONE
+ hi NonText ctermbg=NONE ctermfg=240 cterm=NONE guibg=NONE guifg=#585858 gui=NONE
+ hi EndOfBuffer ctermbg=NONE ctermfg=240 cterm=NONE guibg=NONE guifg=#585858 gui=NONE
+ hi LineNr ctermbg=234 ctermfg=242 cterm=NONE guibg=#1c1c1c guifg=#6c6c6c gui=NONE
+ hi FoldColumn ctermbg=234 ctermfg=242 cterm=NONE guibg=#1c1c1c guifg=#6c6c6c gui=NONE
+ hi Folded ctermbg=234 ctermfg=242 cterm=NONE guibg=#1c1c1c guifg=#6c6c6c gui=NONE
+ hi MatchParen ctermbg=234 ctermfg=229 cterm=NONE guibg=#1c1c1c guifg=#ffffaf gui=NONE
+ hi SignColumn ctermbg=234 ctermfg=242 cterm=NONE guibg=#1c1c1c guifg=#6c6c6c gui=NONE
+ hi Comment ctermbg=NONE ctermfg=240 cterm=NONE guibg=NONE guifg=#585858 gui=NONE
+ hi Conceal ctermbg=NONE ctermfg=250 cterm=NONE guibg=NONE guifg=#bcbcbc gui=NONE
+ hi Constant ctermbg=NONE ctermfg=208 cterm=NONE guibg=NONE guifg=#ff8700 gui=NONE
+ hi Error ctermbg=NONE ctermfg=131 cterm=reverse guibg=NONE guifg=#af5f5f gui=reverse
+ hi Identifier ctermbg=NONE ctermfg=67 cterm=NONE guibg=NONE guifg=#5f87af gui=NONE
+ hi Ignore ctermbg=NONE ctermfg=NONE cterm=NONE guibg=NONE guifg=NONE gui=NONE
+ hi PreProc ctermbg=NONE ctermfg=66 cterm=NONE guibg=NONE guifg=#5f8787 gui=NONE
+ hi Special ctermbg=NONE ctermfg=65 cterm=NONE guibg=NONE guifg=#5f875f gui=NONE
+ hi Statement ctermbg=NONE ctermfg=110 cterm=NONE guibg=NONE guifg=#87afd7 gui=NONE
+ hi String ctermbg=NONE ctermfg=108 cterm=NONE guibg=NONE guifg=#87af87 gui=NONE
+ hi Todo ctermbg=NONE ctermfg=NONE cterm=reverse guibg=NONE guifg=NONE gui=reverse
+ hi Type ctermbg=NONE ctermfg=103 cterm=NONE guibg=NONE guifg=#8787af gui=NONE
+ hi Underlined ctermbg=NONE ctermfg=66 cterm=underline guibg=NONE guifg=#5f8787 gui=underline
+ hi Pmenu ctermbg=238 ctermfg=250 cterm=NONE guibg=#444444 guifg=#bcbcbc gui=NONE
+ hi PmenuSbar ctermbg=240 ctermfg=NONE cterm=NONE guibg=#585858 guifg=NONE gui=NONE
+ hi PmenuSel ctermbg=66 ctermfg=235 cterm=NONE guibg=#5f8787 guifg=#262626 gui=NONE
+ hi PmenuThumb ctermbg=66 ctermfg=66 cterm=NONE guibg=#5f8787 guifg=#5f8787 gui=NONE
+ hi ErrorMsg ctermbg=235 ctermfg=131 cterm=reverse guibg=#262626 guifg=#af5f5f gui=reverse
+ hi ModeMsg ctermbg=235 ctermfg=108 cterm=reverse guibg=#262626 guifg=#87af87 gui=reverse
+ hi MoreMsg ctermbg=NONE ctermfg=66 cterm=NONE guibg=NONE guifg=#5f8787 gui=NONE
+ hi Question ctermbg=NONE ctermfg=108 cterm=NONE guibg=NONE guifg=#87af87 gui=NONE
+ hi WarningMsg ctermbg=NONE ctermfg=131 cterm=NONE guibg=NONE guifg=#af5f5f gui=NONE
+ hi TabLine ctermbg=238 ctermfg=101 cterm=NONE guibg=#444444 guifg=#87875f gui=NONE
+ hi TabLineFill ctermbg=238 ctermfg=238 cterm=NONE guibg=#444444 guifg=#444444 gui=NONE
+ hi TabLineSel ctermbg=101 ctermfg=235 cterm=NONE guibg=#87875f guifg=#262626 gui=NONE
+ hi ToolbarLine ctermbg=234 ctermfg=NONE cterm=NONE guibg=#1c1c1c guifg=NONE gui=NONE
+ hi ToolbarButton ctermbg=240 ctermfg=250 cterm=NONE guibg=#585858 guifg=#bcbcbc gui=NONE
+ hi Cursor ctermbg=242 ctermfg=NONE cterm=NONE guibg=#6c6c6c guifg=NONE gui=NONE
+ hi CursorColumn ctermbg=236 ctermfg=NONE cterm=NONE guibg=#303030 guifg=NONE gui=NONE
+ hi CursorLineNr ctermbg=236 ctermfg=73 cterm=NONE guibg=#303030 guifg=#5fafaf gui=NONE
+ hi CursorLine ctermbg=236 ctermfg=NONE cterm=NONE guibg=#303030 guifg=NONE gui=NONE
+ hi helpLeadBlank ctermbg=NONE ctermfg=NONE cterm=NONE guibg=NONE guifg=NONE gui=NONE
+ hi helpNormal ctermbg=NONE ctermfg=NONE cterm=NONE guibg=NONE guifg=NONE gui=NONE
+ hi StatusLine ctermbg=101 ctermfg=235 cterm=NONE guibg=#87875f guifg=#262626 gui=NONE
+ hi StatusLineNC ctermbg=238 ctermfg=101 cterm=NONE guibg=#444444 guifg=#87875f gui=NONE
+ hi StatusLineTerm ctermbg=101 ctermfg=235 cterm=NONE guibg=#87875f guifg=#262626 gui=NONE
+ hi StatusLineTermNC ctermbg=238 ctermfg=101 cterm=NONE guibg=#444444 guifg=#87875f gui=NONE
+ hi Visual ctermbg=235 ctermfg=110 cterm=reverse guibg=#262626 guifg=#87afd7 gui=reverse
+ hi VisualNOS ctermbg=NONE ctermfg=NONE cterm=underline guibg=NONE guifg=NONE gui=underline
+ hi VertSplit ctermbg=238 ctermfg=238 cterm=NONE guibg=#444444 guifg=#444444 gui=NONE
+ hi WildMenu ctermbg=110 ctermfg=235 cterm=NONE guibg=#87afd7 guifg=#262626 gui=NONE
+ hi Function ctermbg=NONE ctermfg=229 cterm=NONE guibg=NONE guifg=#ffffaf gui=NONE
+ hi SpecialKey ctermbg=NONE ctermfg=240 cterm=NONE guibg=NONE guifg=#585858 gui=NONE
+ hi Title ctermbg=NONE ctermfg=231 cterm=NONE guibg=NONE guifg=#ffffff gui=NONE
+ hi DiffAdd ctermbg=235 ctermfg=108 cterm=reverse guibg=#262626 guifg=#87af87 gui=reverse
+ hi DiffChange ctermbg=235 ctermfg=103 cterm=reverse guibg=#262626 guifg=#8787af gui=reverse
+ hi DiffDelete ctermbg=235 ctermfg=131 cterm=reverse guibg=#262626 guifg=#af5f5f gui=reverse
+ hi DiffText ctermbg=235 ctermfg=208 cterm=reverse guibg=#262626 guifg=#ff8700 gui=reverse
+ hi IncSearch ctermbg=131 ctermfg=235 cterm=NONE guibg=#af5f5f guifg=#262626 gui=NONE
+ hi Search ctermbg=229 ctermfg=235 cterm=NONE guibg=#ffffaf guifg=#262626 gui=NONE
+ hi Directory ctermbg=NONE ctermfg=73 cterm=NONE guibg=NONE guifg=#5fafaf gui=NONE
+ hi debugPC ctermbg=67 ctermfg=NONE cterm=NONE guibg=#5f87af guifg=NONE gui=NONE
+ hi debugBreakpoint ctermbg=131 ctermfg=NONE cterm=NONE guibg=#af5f5f guifg=NONE gui=NONE
+ hi SpellBad ctermbg=NONE ctermfg=131 cterm=undercurl guibg=NONE guifg=#af5f5f gui=undercurl guisp=#af5f5f
+ hi SpellCap ctermbg=NONE ctermfg=73 cterm=undercurl guibg=NONE guifg=#5fafaf gui=undercurl guisp=#5fafaf
+ hi SpellLocal ctermbg=NONE ctermfg=65 cterm=undercurl guibg=NONE guifg=#5f875f gui=undercurl guisp=#5f875f
+ hi SpellRare ctermbg=NONE ctermfg=208 cterm=undercurl guibg=NONE guifg=#ff8700 gui=undercurl guisp=#ff8700
+ hi ColorColumn ctermbg=234 ctermfg=NONE cterm=NONE guibg=#1c1c1c guifg=NONE gui=NONE
+
+elseif &t_Co == 8 || $TERM !~# '^linux' || &t_Co == 16
+ set t_Co=16
+
+ hi Normal ctermbg=black ctermfg=lightgrey cterm=NONE
+ hi NonText ctermbg=NONE ctermfg=darkgrey cterm=NONE
+ hi EndOfBuffer ctermbg=NONE ctermfg=darkgrey cterm=NONE
+ hi LineNr ctermbg=black ctermfg=lightgrey cterm=NONE
+ hi FoldColumn ctermbg=black ctermfg=lightgrey cterm=NONE
+ hi Folded ctermbg=black ctermfg=lightgrey cterm=NONE
+ hi MatchParen ctermbg=black ctermfg=yellow cterm=NONE
+ hi SignColumn ctermbg=black ctermfg=lightgrey cterm=NONE
+ hi Comment ctermbg=NONE ctermfg=darkgrey cterm=NONE
+ hi Conceal ctermbg=NONE ctermfg=lightgrey cterm=NONE
+ hi Constant ctermbg=NONE ctermfg=red cterm=NONE
+ hi Error ctermbg=NONE ctermfg=darkred cterm=reverse
+ hi Identifier ctermbg=NONE ctermfg=darkblue cterm=NONE
+ hi Ignore ctermbg=NONE ctermfg=NONE cterm=NONE
+ hi PreProc ctermbg=NONE ctermfg=darkcyan cterm=NONE
+ hi Special ctermbg=NONE ctermfg=darkgreen cterm=NONE
+ hi Statement ctermbg=NONE ctermfg=blue cterm=NONE
+ hi String ctermbg=NONE ctermfg=green cterm=NONE
+ hi Todo ctermbg=NONE ctermfg=NONE cterm=reverse
+ hi Type ctermbg=NONE ctermfg=magenta cterm=NONE
+ hi Underlined ctermbg=NONE ctermfg=darkcyan cterm=underline
+ hi Pmenu ctermbg=darkgrey ctermfg=lightgrey cterm=NONE
+ hi PmenuSbar ctermbg=darkgrey ctermfg=NONE cterm=NONE
+ hi PmenuSel ctermbg=darkcyan ctermfg=black cterm=NONE
+ hi PmenuThumb ctermbg=darkcyan ctermfg=darkcyan cterm=NONE
+ hi ErrorMsg ctermbg=black ctermfg=darkred cterm=reverse
+ hi ModeMsg ctermbg=black ctermfg=green cterm=reverse
+ hi MoreMsg ctermbg=NONE ctermfg=darkcyan cterm=NONE
+ hi Question ctermbg=NONE ctermfg=green cterm=NONE
+ hi WarningMsg ctermbg=NONE ctermfg=darkred cterm=NONE
+ hi TabLine ctermbg=darkgrey ctermfg=darkyellow cterm=NONE
+ hi TabLineFill ctermbg=darkgrey ctermfg=darkgrey cterm=NONE
+ hi TabLineSel ctermbg=darkyellow ctermfg=black cterm=NONE
+ hi ToolbarLine ctermbg=black ctermfg=NONE cterm=NONE
+ hi ToolbarButton ctermbg=darkgrey ctermfg=lightgrey cterm=NONE
+ hi Cursor ctermbg=lightgrey ctermfg=NONE cterm=NONE
+ hi CursorColumn ctermbg=darkgrey ctermfg=NONE cterm=NONE
+ hi CursorLineNr ctermbg=darkgrey ctermfg=cyan cterm=NONE
+ hi CursorLine ctermbg=darkgrey ctermfg=NONE cterm=NONE
+ hi helpLeadBlank ctermbg=NONE ctermfg=NONE cterm=NONE
+ hi helpNormal ctermbg=NONE ctermfg=NONE cterm=NONE
+ hi StatusLine ctermbg=darkyellow ctermfg=black cterm=NONE
+ hi StatusLineNC ctermbg=darkgrey ctermfg=darkyellow cterm=NONE
+ hi StatusLineTerm ctermbg=darkyellow ctermfg=black cterm=NONE
+ hi StatusLineTermNC ctermbg=darkgrey ctermfg=darkyellow cterm=NONE
+ hi Visual ctermbg=black ctermfg=blue cterm=reverse
+ hi VisualNOS ctermbg=NONE ctermfg=NONE cterm=underline
+ hi VertSplit ctermbg=darkgrey ctermfg=darkgrey cterm=NONE
+ hi WildMenu ctermbg=blue ctermfg=black cterm=NONE
+ hi Function ctermbg=NONE ctermfg=yellow cterm=NONE
+ hi SpecialKey ctermbg=NONE ctermfg=darkgrey cterm=NONE
+ hi Title ctermbg=NONE ctermfg=white cterm=NONE
+ hi DiffAdd ctermbg=black ctermfg=green cterm=reverse
+ hi DiffChange ctermbg=black ctermfg=magenta cterm=reverse
+ hi DiffDelete ctermbg=black ctermfg=darkred cterm=reverse
+ hi DiffText ctermbg=black ctermfg=red cterm=reverse
+ hi IncSearch ctermbg=darkred ctermfg=black cterm=NONE
+ hi Search ctermbg=yellow ctermfg=black cterm=NONE
+ hi Directory ctermbg=NONE ctermfg=cyan cterm=NONE
+ hi debugPC ctermbg=darkblue ctermfg=NONE cterm=NONE
+ hi debugBreakpoint ctermbg=darkred ctermfg=NONE cterm=NONE
+ hi SpellBad ctermbg=NONE ctermfg=darkred cterm=undercurl
+ hi SpellCap ctermbg=NONE ctermfg=cyan cterm=undercurl
+ hi SpellLocal ctermbg=NONE ctermfg=darkgreen cterm=undercurl
+ hi SpellRare ctermbg=NONE ctermfg=red cterm=undercurl
+ hi ColorColumn ctermbg=black ctermfg=NONE cterm=NONE
+endif
+
+hi link Terminal Normal
+hi link Number Constant
+hi link CursorIM Cursor
+hi link Boolean Constant
+hi link Character Constant
+hi link Conditional Statement
+hi link Debug Special
+hi link Define PreProc
+hi link Delimiter Special
+hi link Exception Statement
+hi link Float Number
+hi link HelpCommand Statement
+hi link HelpExample Statement
+hi link Include PreProc
+hi link Keyword Statement
+hi link Label Statement
+hi link Macro PreProc
+hi link Number Constant
+hi link Operator Statement
+hi link PreCondit PreProc
+hi link Repeat Statement
+hi link SpecialChar Special
+hi link SpecialComment Special
+hi link StorageClass Type
+hi link Structure Type
+hi link Tag Special
+hi link Terminal Normal
+hi link Typedef Type
+hi link htmlTagName Statement
+hi link htmlEndTag htmlTagName
+hi link htmlLink Function
+hi link htmlSpecialTagName htmlTagName
+hi link htmlTag htmlTagName
+hi link htmlBold Normal
+hi link htmlItalic Normal
+hi link htmlArg htmlTagName
+hi link xmlTag Statement
+hi link xmlTagName Statement
+hi link xmlEndTag Statement
+hi link markdownItalic Preproc
+hi link asciidocQuotedEmphasized Preproc
+hi link diffBDiffer WarningMsg
+hi link diffCommon WarningMsg
+hi link diffDiffer WarningMsg
+hi link diffIdentical WarningMsg
+hi link diffIsA WarningMsg
+hi link diffNoEOL WarningMsg
+hi link diffOnly WarningMsg
+hi link diffRemoved WarningMsg
+hi link diffAdded String
+hi link QuickFixLine Search
+
+let g:terminal_ansi_colors = [
+ \ '#1c1c1c',
+ \ '#af5f5f',
+ \ '#5f875f',
+ \ '#87875f',
+ \ '#5f87af',
+ \ '#5f5f87',
+ \ '#5f8787',
+ \ '#6c6c6c',
+ \ '#444444',
+ \ '#ff8700',
+ \ '#87af87',
+ \ '#ffffaf',
+ \ '#87afd7',
+ \ '#8787af',
+ \ '#5fafaf',
+ \ '#ffffff',
+ \ ]
+
+" Generated with RNB (https://github.com/romainl/vim-rnb)
diff --git a/vimrc b/vimrc
new file mode 100644
index 0000000..1fa69d2
--- /dev/null
+++ b/vimrc
@@ -0,0 +1,73 @@
+execute pathogen#infect()
+
+set expandtab
+set tabstop=4
+set shiftwidth=4
+set mouse=nicr
+set ttymouse=sgr "Support wide screens
+set incsearch
+set hlsearch
+set ignorecase
+set smartcase
+set smartindent
+set tags=./tags;
+set tags+=./kernel.tags;
+:nnoremap :nohlsearch:echo
+syntax on
+filetype plugin indent on
+"set omnifunc=syntaxcomplete#Complete
+colorscheme apprentice
+
+map :tab split:exec("tag ".expand(""))
+map :vsp :exec("tag ".expand(""))
+
+" Load all plugins now.
+" Plugins need to be added to runtimepath before helptags can be generated.
+" packloadall
+" Load all of the helptags now, after plugins have been loaded.
+" All messages and errors will be ignored.
+ silent! helptags ALL
+"
+
+nnoremap n :NERDTreeFocus
+nnoremap :NERDTreeToggle
+nnoremap :NERDTreeFind
+
+nnoremap :TlistToggle
+nnoremap :TlistShowPrototype
+let Tlist_Use_Right_Window = 1 " Move window to right side
+let Tlist_Exit_OnlyWindow = 1 " Close if only window left
+let Tlist_Hightlight_Tag_On_BufEnter = 1 " Hightlight current tag
+let Tlist_Display_Prototypte = 1 " Show full prototype at bottom
+
+" vim-rainbow
+let g:rainbow_active = 1
+
+nnoremap :GitGutterToggle
+
+let OmniCpp_MayCompleteDot = 0
+let OmniCpp_MayCompleteArrow = 0
+
+let g:SuperTabDefaultCompletionType = ""
+
+" Fugitive conflict resolution
+nnoremap gd :Gvdiff
+nnoremap gdh :diffget //2
+nnoremap gdl :diffget //3
+
+" YAML editor settings
+autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab
+autocmd FileType yml setlocal ts=2 sts=2 sw=2 expandtab
+let g:indentLine_char = '┆'
+let g:indentLine_color_term = 237
+
+" Syntastic
+set statusline+=%#warningmsg#
+set statusline+=%{SyntasticStatuslineFlag()}
+set statusline+=%*
+
+let g:syntastic_always_populate_loc_list = 1
+let g:syntastic_auto_loc_list = 1
+let g:syntastic_check_on_open = 0
+let g:syntastic_check_on_wq = 0
+nnoremap :SyntasticToggleMode