"not VI compatible set nocompatible "set the path where the plugins live "in this case in the folder .vim in home set packpath+=~/.vim "turn off the taskbar in gvim set guioptions-=m "a bit more readable set guifont=Lucida_Console:h10 "make backspace behave normally in insert mode set backspace=indent,eol,start "highlight search set hlsearch "search while entering the search query set incsearch "NO, I don't want ANSI. set fileencodings=utf-8 set encoding=utf-8 set fileencoding=utf-8 "turn on syntax highlighting and indentation "syntax on filetype indent plugin on "for indentating html - otherwise these tags are not recognized let g:html_indent_inctags = "html,body,head,tbody,table,td,tr,th,canvas" "whitespace set tabstop=4 set shiftwidth=4 set list set listchars=tab:>~,trail:~,extends:>,precedes:< "don't wrap - duh. - maybe I should change this, it seems actually quite "practical for keeping the right width for readability. set nowrap set textwidth=0 set wrapmargin=0 "line numbers set nu set rnu "colors syntax on colorscheme desert "send all backups to home/vimbackups set backupdir=./vimbackups,../vimbackups,~/vim/backups,. set directory=./vimbackups,../vimbackups,~/vim/backups,. " Persistent undo set undodir=~/.vim/undofiles set undofile "search and replace options ignore case, except if there's something uppercase "in it set ignorecase set smartcase "set the current working directory when entering a new file autocmd BufEnter * silent! :lcd%:p:h "remove all trailing whitespace on lines with non-whitespace characters " autocmd BufEnter * silent! :call StripTrailingWhitespaces() "____________MAPPINGS______________ " "disable the fucking F1 key nmap "remap leader to space nnoremap "let mapleader = "\" let mapleader = " " "move screen nnoremap 4zh nnoremap 4zl nnoremap 4 nnoremap 4 "getting the next match of f or t, but more logical - at least on a german "keyboard nnoremap ; , nnoremap , ; "mapping to adapt indentation when pasting converts spaces to tabs, not always wanted " nmap P ]P " nmap p ]p "for keeping indentation on lines where I don't write anything "(leftover habit from eclipse) inoremap x nnoremap o ox nnoremap O Ox "copying and pasting the standard windows way - doesn't really work if I don't "have a clipboard manager inoremap + nnoremap "+p nnoremap "+Y vnoremap "+y vnoremap "+p " nnoremap ggVG "removes the highlighting after search "until I can fix the escape codes sent by the terminal, I'll have to press esc "twice nnoremap :noh " nnoremap :noh "_____________AUX FUNCTIONS_________________ "doesn't remove lines with ONLY whitespace fun! StripTrailingWhitespaces() let l = line(".") let c = col(".") %s/\v([^\t])(\t|\s)+$/\1/g call cursor(l, c) endfun "PLUGINS let g:NERDSpaceDelims = 1