dotfiles/.vimrc
2021-09-08 08:23:45 +02:00

130 lines
3.5 KiB
VimL

set nocompatible
filetype off
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
" load sensible defaults first
Plugin 'tpope/vim-sensible'
Plugin 'airblade/vim-gitgutter'
Plugin 'Chiel92/vim-autoformat'
Plugin 'deoplete-plugins/deoplete-clang'
Plugin 'deoplete-plugins/deoplete-docker'
Plugin 'deoplete-plugins/deoplete-jedi'
Plugin 'frankier/neovim-colors-solarized-truecolor-only'
Plugin 'ludovicchabant/vim-gutentags'
Plugin 'majutsushi/tagbar'
Plugin 'mhinz/vim-startify'
Plugin 'preservim/nerdtree'
Plugin 'sakhnik/nvim-gdb'
Plugin 'sheerun/vim-polyglot'
Plugin 'Shougo/deoplete.nvim'
Plugin 'Shougo/neoinclude.vim'
Plugin 'suan/vim-instant-markdown'
Plugin 'tpope/vim-fugitive'
Plugin 'tpope/vim-sleuth'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'wincent/terminus'
Plugin 'wokalski/autocomplete-flow'
Plugin 'Xuyuanp/nerdtree-git-plugin'
if !has('nvim')
Plugin 'roxma/nvim-yarp'
Plugin 'roxma/vim-hug-neovim-rpc'
endif
call vundle#end()
set background=dark
colorscheme solarized
call togglebg#map("<F5>")
let load_doxygen_syntax = 1
let g:airline_theme='solarized'
let g:airline_solarized_bg='dark'
let g:airline#extensions#tabline#enabled = 1
let g:deoplete#enable_at_startup = 1
let g:deoplete#sources#clang#libclang_path = '/usr/lib/llvm-default/lib/libclang.so.1'
let g:deoplete#sources#clang#clang_header = '/usr/lib/llvm-default/lib/clang/default/include'
let g:gitgutter_highlight_linenrs = 1
let g:gutentags_generate_on_new = 1
let g:gutentags_generate_on_missing = 1
let g:gutentags_generate_on_write = 1
let g:gutentags_generate_on_empty_buffer = 0
let g:gutentags_ctags_extra_args = [
\ '--tag-relative=yes',
\ '--quiet=yes',
\ '--c++-kinds=+UA',
\ '--fields=+SailmnKz',
\ '--extras=+qf',
\ '--exclude=@.gitignore',
\ ]
let g:gutentags_ctags_exclude = [
\ '*-lock.json',
\ '*.bak',
\ '*.cache',
\ '*.hg',
\ '*.lock',
\ '*.map',
\ '*.tmp',
\ '*/tests/*',
\ '.git',
\ '.tags*',
\ 'CMakeCache.txt',
\ 'CMakeFiles',
\ 'CMakeLists.txt.user',
\ 'CMakeScripts',
\ 'CTestTestfile.cmake',
\ 'Makefile',
\ 'Testing',
\ 'cmake_install.cmake',
\ 'compile_commands.json',
\ 'docs',
\ 'install_manifest.txt',
\ 'bin',
\ 'build',
\ ]
let g:startify_fortune_use_unicode = 1
let g:startify_session_autoload = 1
let g:startify_session_persistence = 1
call deoplete#custom#var('omni', 'functions', {'lua': 'xolox#lua#omnifunc',})
set encoding=utf-8
set icon
set smartcase
set spelllang=de,en
set softtabstop=4
set tabstop=4
set nowrap
set number
set foldmethod=indent
set foldnestmax=10
set nofoldenable
set listchars=eol,tab:\»\ ,trail:~,extends:>,precedes:<,nbsp:+
set list
set tags+=$HOME/.cache/cpp_tags
" Fast split/window navigation with <Ctrl-hjkl>
noremap <C-h> <C-w><C-h>
noremap <C-j> <C-w><C-j>
noremap <C-k> <C-w><C-k>
noremap <C-l> <C-w><C-l>
"
tnoremap <C-h> <C-w><C-h>
tnoremap <C-j> <C-w><C-j>
tnoremap <C-k> <C-w><C-k>
tnoremap <C-l> <C-w><C-l>
"
inoremap <C-h> <C-o><C-w><C-h>
inoremap <C-j> <C-o><C-w><C-j>
inoremap <C-k> <C-o><C-w><C-k>
inoremap <C-l> <C-o><C-w><C-l>
" Folding toggle
inoremap <F9> <C-O>za
nnoremap <F9> za
onoremap <F9> <C-C>za
vnoremap <F9> zf
map <C-n> :NERDTreeToggle<CR>
map <C-b> :TagbarToggle<CR>