dotfiles/.vimrc
Tobias Schmidl 90b6fb2b80 vim: big update
- removed unnecessary plugins
- moved to lsp
- added vimrc
2024-11-05 10:28:12 +01:00

126 lines
3.5 KiB
VimL

set nocompatible
filetype off
let g:polyglot_disabled = ['sensible'] " we disable vim-sensible from polyglot, as we want the real deal from tpope
" 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 'APZelos/blamer.nvim'
Plugin 'airblade/vim-gitgutter'
Plugin 'Chiel92/vim-autoformat'
Plugin 'editorconfig/editorconfig-vim'
Plugin 'junegunn/fzf'
Plugin 'junegunn/fzf.vim'
Plugin 'junegunn/goyo.vim'
Plugin 'junegunn/limelight.vim'
Plugin 'frankier/neovim-colors-solarized-truecolor-only'
Plugin 'mhinz/vim-startify'
Plugin 'preservim/nerdtree'
Plugin 'sheerun/vim-polyglot'
Plugin 'tpope/vim-fugitive'
Plugin 'tpope/vim-sleuth'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'wincent/terminus'
Plugin 'Xuyuanp/nerdtree-git-plugin'
if !has('nvim')
Plugin 'roxma/nvim-yarp'
Plugin 'roxma/vim-hug-neovim-rpc'
else
Plugin 'mfussenegger/nvim-dap'
Plugin 'mfussenegger/nvim-lint'
Plugin 'mhartington/formatter.nvim'
Plugin 'nvim-neotest/nvim-nio'
Plugin 'rcarriga/nvim-dap-ui'
" the following order is important
Plugin 'williamboman/mason.nvim'
Plugin 'williamboman/mason-lspconfig.nvim'
Plugin 'neovim/nvim-lspconfig'
endif
call vundle#end()
augroup XML
autocmd!
autocmd FileType xml let g:xml_syntax_folding=1
autocmd FileType xml setlocal foldmethod=syntax
autocmd FileType xml :syntax on
autocmd FileType xml :%foldopen!
augroup END
if $VIM_COLORSCHEME == "light"
set background=light
endif
set termguicolors
colorscheme solarized
call togglebg#map("<Leader>t")
let load_doxygen_syntax = 1
let g:airline_powerline_fonts = 1
if !exists('g:airline_symbols')
let g:airline_symbols = {}
endif
let g:airline_symbols.colnr = ' C'
let g:airline_theme='solarized'
let g:airline#extensions#tabline#enabled = 1
let g:blamer_enabled = 1
let g:blamer_date_format = '%c'
let g:blamer_delay = 500
let g:blamer_prefix = ' > '
let g:gitgutter_highlight_lines = 1
let g:gitgutter_highlight_linenrs = 1
let g:goyo_width = 120
let g:startify_fortune_use_unicode = 1
let g:startify_session_autoload = 1
let g:startify_session_persistence = 1
set encoding=utf-8
set icon
set smartcase
set spelllang=de,en
set shiftwidth=4
set tabstop=4
set linebreak
set breakindent
" set colorcolumn=75
highlight ColorColumn guibg=Black ctermbg=0
set wrap
set number
set foldmethod=syntax
set foldnestmax=10
set foldlevelstart=1
set listchars=eol,tab:\»\ ,trail:~,extends:>,precedes:<,nbsp:+
set list
set updatetime=750
" 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>
nnoremap <Leader>b :BlamerToggle<CR>
nnoremap <Leader>g :Goyo<CR>
nnoremap <Leader>l :Limelight!!<CR>
" Activate Limelight when Goyo is entered
autocmd! User GoyoEnter Limelight
autocmd! User GoyoLeave Limelight!