1
0
mirror of https://git.decapod.one/brethil/dotfiles synced 2024-11-24 12:31:31 +01:00
dotfiles/vim/vimrc
2021-04-05 18:12:53 +02:00

66 lines
1.8 KiB
VimL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

" Install all plugins
source $DOTFILES/vim/plugs.vim
" Sanity
set encoding=utf-8
scriptencoding utf-8
" Style
set background=dark
let g:gruvbox_contrast_dark='hard'
colorscheme gruvbox
" General stuff
set nowrap
set mouse=a
set relativenumber number
set foldlevelstart=3 foldmethod=indent foldenable "without nofoldenable all folds are closed at startup"
set ttymouse=xterm2 " fix mouse when used in tmux/byobu https://unix.stackexchange.com/q/50733
set nobackup nowb noswapfile " no need for backups of every file
set history=10000
set list listchars=tab:\ ,trail:•,extends:#,nbsp:.
set splitbelow splitright
set autoread
" Don't redraw while executing macros (good performance config)
set lazyredraw
set ignorecase smartcase " ignore case on search but be smart about it
set hlsearch "highlight search results (using *)
set expandtab shiftwidth=4 tabstop=4 "always use spaces
" Completion menu config (see :h completopt)
set completeopt=menu,menuone,noselect,noinsert
" Show completion suggestions in popups instead of preview window
set completeopt+=popup
autocmd FileType yaml,yml setlocal shiftwidth=2 softtabstop=2 expandtab
autocmd FileType vue setlocal shiftwidth=2 softtabstop=2 expandtab
autocmd FileType go setlocal noexpandtab
au BufRead,BufNewFile */playbooks/*.yml set filetype=yaml.ansible
au BufRead,BufNewFile rules.v[46] *.rules setlocal filetype=iptables
if has('persistent_undo')
set undodir=$HOME/.vim/undo
set undofile
endif
" Return to last edit position when opening files (from amix's vimrc)
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
" Bash like keys for the command line
cnoremap <C-A> <Home>
cnoremap <C-E> <End>
cnoremap <C-K> <C-U>
cnoremap <C-P> <Up>
cnoremap <C-N> <Down>
source $DOTFILES/vim/plugins_config.vim
source $DOTFILES/vim/shortcuts.vim
source $DOTFILES/vim/functions.vim