2018-07-30 16:42:13 +02:00

351 lines
8.8 KiB
VimL
Raw Blame History

" Use Vim settings, rather then Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
set nocompatible
" Setzen des Runtimepath, in dem die Vimfiles gesucht werden:
let runtimepath_orig = &runtimepath
let &runtimepath = ''
" zuerst in vimsuite suchen
let &runtimepath = &runtimepath . ',' . g:vimfiles
" dann in vim Installation suchen
let &runtimepath = &runtimepath . ',' . runtimepath_orig
" dann in vimsuite/after suchen
let &runtimepath = &runtimepath . ',' . g:vimfiles . '/after'
let &runtimepath = &runtimepath . ',' . g:vimsuite . '/vimfiles.stefan/after'
" packages liegen unter vimsuite/pack
execute "set packpath+=".g:vimsuite
" Laden weiterer Einstellungen:
if (has("win32") || has("win64"))
let g:os ='dos'
execute 'source ' . expand(g:vimfiles . '/vimrc.dos')
else
let g:os = 'linux'
execute 'source ' . expand(g:vimfiles . '/vimrc.linux')
endif
if !exists('nobmsk')
execute 'source ' . expand(g:vimfiles . '/vimrc.bmsk')
endif
" global settings
" ---------------
set nobackup " keep no backup file
set history=50 " keep 50 lines of command line history
set ruler " show the cursor position all the time
set showcmd " display incomplete commands
" filetype detection
filetype on
filetype plugin on
filetype plugin indent on
"syntax highlighing
"syntax on
syntax enable
" no syntax highliting when printing
set printoptions+=syntax:n
"highlite search
set incsearch
set hlsearch
" set global option for substitute
set gdefault
" case sensitive search
set noignorecase
" ignore some pattern in filesearch
set wildignore+=.git
set wildignore+=.svn
" set very intelligent formatting
set formatoptions=croqwan2
" --------
" Changing
" --------
" overwrite selected text
vnoremap p s<C-R>0<ESC>
vnoremap P s<C-R>0<ESC>
" -------
" Display
" -------
" switchbuffer: use open window, split if new
"set switchbuf=useopen,split
set switchbuf=useopen
" wrap long lines
set wrap
" show line-numbers
set number
" show title
set title
" show matching bracket
set showmatch
" matchtime in 1/10 seconds
set matchtime=5
" show wrapped line
set showbreak=-->
" show position of cursor
set ruler
" show incomplete command
set showcmd
" match braces
"nnoremap g4 /[\(\{\[]<CR>:nohls<CR>v%o
"vnoremap g4 vg4
" set textwidth to 78
set textwidth=100
" special characters
" list special characters
set list
" special characters:
set listchars=eol:$
set listchars+=tab:>\
set listchars+=trail:_
set listchars+=extends:<3A>
set listchars+=precedes:<3A>
" special characters for keywords
" set iskeyword+=
" ------------
" diff options
" ------------
if &diff
set guioptions+=b
" turn off csv ftplugin in diff mode
au! filetypedetect * *.csv,*.dat,*.tsv,*.tab
endif
" horizontal scrollbar in diff-mode
set diffopt=filler,vertical
" don't switch on DiffChar by default
let g:DiffExpr = ''
" turn diff off
command DiffClose call DiffClose()
function DiffClose()
diffoff!
:quit
endfunction
" options for DirDiff
let g:DirDiffCommand = expand($VIMRUNTIME . '/diff')
let g:DirDiffExcludes = '*.log,*.pyc,.svn,.git*,.asc,_ccmwaid.inf,.static_wa,out,Build,build,tags,cscope.out,.directory'
"let g:DirDiffDynamicDiffText = 1
" ------
" Moving
" ------
" scrollwith at ^U and ^D
set scroll=5
" lines around the cursor
set scrolloff=10
" wrap line at (b=<BS>, s=<space>, h, l, <, >, [, ])
set whichwrap=
" backspace deletes: (indent,eol,start)
set backspace=indent
set backspace+=start
" mark word under cursor
nnoremap gm :let @/ = "<C-R><C-W>"<CR>:set hlsearch<CR>
vnoremap gm y:let @/ = "<C-R>0"<CR>:set hlsearch<CR>
" go to tag under cursor
nnoremap tt g<C-]>
" find next error
nnoremap <C-N> :cn<CR>
" go back to previous edited file
nnoremap gb :call GotoLastFile()<CR>
" -----------
" come and go
" -----------
set sessionoptions-=blank
set sessionoptions+=buffers
set sessionoptions+=curdir
set sessionoptions+=folds
set sessionoptions-=help
set sessionoptions+=resize
set sessionoptions+=tabpages
set sessionoptions-=terminal
set sessionoptions+=winsize
" open window size
if &diff
autocmd GUIEnter * set lines=60 columns=200
else
autocmd GUIEnter * set lines=60 columns=100
endif
" read and write files automatically
set autoread
set autowrite
set autowriteall
" keep original files for these filetypes
set patchmode=
" jump to '" when reading a file
"autocmd BufEnter *
"autocmd BufReadPost *
" \ if line("'\"") > 0 && line("'\"") <= line("$") |
" \ execute "normal g'\"" |
" \ endif
" set nomodifiable on writeprotected files
autocmd BufReadPost *
\ if &readonly == 1 |
\ execute ':set nomodifiable' |
\ else |
\ execute ':set modifiable' |
\ endif
" read all files on got of focus
" autocmd FocusGained * execute
" save all files on loss of focus
autocmd FocusLost * execute ':silent! wa'
" since we always save, don't use a swapfile
set noswapfile
" -----------
" spell check
" -----------
set spelllang=de,en
let &spellfile=g:vimfiles.'/spell/myspell.add'
" ----------
" Completion
" ----------
set completeopt=longest
set completeopt+=menuone
" --------------
" DoxygenToolkit
" --------------
"let g:DoxygenToolkit_commandTag = "\\"
let g:DoxygenToolkit_authorName = "Stefan Liebl"
"let g:DoxygenToolkit_briefTag_pre = g:DoxygenToolkit_commandTag . "brief "
"let g:DoxygenToolkit_briefTag_post = ""
"let g:DoxygenToolkit_paramTag_pre = g:DoxygenToolkit_commandTag . "param "
"let g:DoxygenToolkit_paramTag_post = " "
"let g:DoxygenToolkit_returnTag = g:DoxygenToolkit_commandTag . "return "
"let g:DoxygenToolkit_blockHeader = ""
"let g:DoxygenToolkit_blockFooter = ""
"let g:DoxygenToolkit_licenseTag = s:licenseTag
"let g:DoxygenToolkit_fileTag = g:DoxygenToolkit_commandTag . "file "
"let g:DoxygenToolkit_authorTag = g:DoxygenToolkit_commandTag . "author "
"let g:DoxygenToolkit_dateTag = g:DoxygenToolkit_commandTag . "date "
"let g:DoxygenToolkit_dateFormat = "%d.%m.%Y"
"let g:DoxygenToolkit_undocTag = "DOX_SKIP_BLOCK"
"let g:DoxygenToolkit_blockTag = g:DoxygenToolkit_commandTag . "name "
"let g:DoxygenToolkit_classTag = g:DoxygenToolkit_commandTag . "class "
"let g:DoxygenToolkit_cinoptions = "c1C1"
"let g:DoxygenToolkit_startCommentTag = "/****************************************************************//*!"
"let g:DoxygenToolkit_startCommentBlock = "/*! "
"let g:DoxygenToolkit_interCommentTag = "* "
"let g:DoxygenToolkit_endCommentTag = "********************************************************************/"
"let g:DoxygenToolkit_endCommentBlock = " */"
"let g:DoxygenToolkit_descriptionTag = "Beschreibung"
"let g:DoxygenToolkit_attentionTag = g:DoxygenToolkit_commandTag . "attention "
"let g:DoxygenToolkit_saTag = g:DoxygenToolkit_commandTag . "sa "
"let g:DoxygenToolkit_ignoreForReturn = "inline static virtual void"
" Maximum number of lines to check for function parameters
"let g:DoxygenToolkit_maxFunctionProtoLines = 10
" Add name of function after pre brief tag if you want
"let g:DoxygenToolkit_briefTag_funcName = "no"
" Add description to DoxAuthor if you want
"let g:DoxygenToolkit_author_description = "yes"
" Add description to Dox if you want
"let g:DoxygenToolkit_dox_description = "yes"
" Add attention to Dox if you want
"let g:DoxygenToolkit_dox_attention = "yes"
" Add sa to Dox if you want
"let g:DoxygenToolkit_dox_sa = "yes"
" -----
" netrw
" -----
"let g:netrw_keepdir = 0
" ---------
" T-Comment
" ---------
let g:tcomment#options = {'col': 1, 'whitespace': 'no'}
" ---------
" VC plugin
" ---------
let g:vc_log_name = '~/vc.log'
" ----
" gitv
" ----
let g:Gitv_OpenHorizontal = 1
" ------
" flake8
" ------
command Flake8 call Flake8()
command PyFlake Flake8
" -----
" Isort
" -----
command PyIsort Isort
" ----------
" Conque GDB
" ----------
let g:ConqueGdb_GdbExe = '/opt/OSELAS.Toolchain-2012.12.1/arm-cortexa8-linux-gnueabi/gcc-4.7.3-glibc-2.16.0-binutils-2.22-kernel-3.6-sanitized/bin/arm-cortexa8-linux-gnueabi-gdb'
" ------------------
" packages / plugins
" ------------------
packadd! asyncrun
packadd! conque
"packadd! diffchar
packadd! dirdiff
packadd! DoxygenToolkit
packadd! flake8
packadd! fugitive
"packadd! gdb-from-vim
packadd! gitv
packadd! gundo
packadd! isort
packadd! linediff
packadd! merginal
"packadd! pyclewn
"packadd! pylint
packadd! python-pep8-indent
packadd! rtags
packadd! sessionman
packadd! SrchRplcHiGrp
packadd! syntastic
packadd! tagbar
"packadd! tail
packadd! tcomment
packadd! vc
packadd! vimagit
packadd! VisIncr
packadd! xml
packadd! yapf
packadd! YouCompleteMe
if exists('g:debug')
if (g:debug > 0)
echo 'loaded vimrc'
endif
endif