" Make sure Vim (and not Vi) settings are enabled.
set nocompatible
-" Enable automatic filedection, plugin and indention load.
+" Enable automatic file detection, plugin and indention.
filetype plugin indent on
-" Use utf-8 file encoding for all files.
+" Use UTF-8 file encoding for all files.
set fileencodings=utf-8
" Wrap text after 78 characters.
" Enable auto indention.
set autoindent
-" Activate lines display.
-set number
-" Display the ruler with current line/file position.
-set ruler
-" Display partial commands in the status line.
-set showcmd
+" Already display matches while typing the search command. This makes spotting
+" errors easily.
+set incsearch
" Activate syntax folding.
set foldmethod=syntax
set foldcolumn=2
set foldlevel=99 " no folding at default
-" Use smartcase mode when searching; only check for case if the searched word
-" contains a capital character.
+" Only check for case if the searched word contains a capital character.
set ignorecase
set smartcase
set spell
set spelllang=en_us
+
+" Use a dark background.
+set background=dark
+
+" Activate lines display.
+set number
+" Display the ruler with current line/file position.
+set ruler
+" Display partial commands in the status line.
+set showcmd
+
+" Visualize the line the cursor is currently in.
+set cursorline
+
+" Display tabs as "^I" and trailing space as "-".
+set list
+set listchars=trail:-
+
+
" When joining lines only add one space after a sentence.
set nojoinspaces
" Allow backspacing over autoindent, line breaks and insert mode starts.
set backspace=indent,eol,start
-" Add a comment when hitting enter after a commented line (r) and when using o
-" or O around a commented line (o).
+" Start a comment when hitting enter after a commented line (r) and when using
+" o or O around a commented line (o).
set formatoptions+=ro
" Don't break a line if was already longer then 'textwidth' when insert mode
" started.
" Don't use any modelines.
set nomodeline
+
" When completing paths first use the longest path then display a list of all
" possible files.
set wildmode=longest,list
-" Visualize the line the cursor is currently in.
-set cursorline
-
-" Use a dark background.
-set background=dark
" Use "," as my mapleader.
" Map toggle comment.
map <Leader><Leader> <plug>NERDCommenterToggle
+" Maps to change spell language between English and German.
+map <Leader>se :set spelllang=en_us<CR>
+map <Leader>sd :set spelllang=de_de<CR>
+
" I often type "W" instead of "w" when trying to save a file. Fix my mistake.
cmap W w
cmap Wq wq
+" Also fix my typo with "Q".
+cmap Q q
" Disable Apple style movements in MacVim.