dotfiles-server/.vim/vimrc
2024-07-24 08:44:55 +00:00

81 lines
1.5 KiB
VimL

" =====================================
" -- Plugin management --
" =====================================
call plug#begin()
" Status line
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
" Theme
Plug 'morhetz/gruvbox'
" File manager
Plug 'lambdalisue/vim-fern'
" Comment remap
Plug 'tpope/vim-commentary'
" Git diff viewer
Plug 'airblade/vim-gitgutter'
call plug#end()
" =====================================
" -- Behavior --
" =====================================
" Line numbers
set number
set relativenumber
" Cursor line highlight
set cursorline
" Terminal title
set title
" Auto reload changes
set autoread
" Indentation
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
" Backup/info files
set nobackup
set noswapfile
set viminfofile=~/.vim/viminfo
" Performance
set lazyredraw
" Split behavior
set splitbelow
set splitright
" Visual bell
set novisualbell
" =====================================
" -- Theme options --
" =====================================
" Color scheme
set background=dark
colorscheme gruvbox
hi Normal guibg=NONE ctermbg=NONE
" Airline theme
let g:airline_theme='gruvbox'
" =====================================
" -- Remaps --
" ====================================
" Leader options
let mapleader=' '
nnoremap <Space> <Nop>
" File manager
nnoremap <Leader>pf :Fern .<CR>
nnoremap <Leader>pr :Fern %:h<CR>
" Buffer management
nnoremap <Leader>nw :bnext<CR>
nnoremap <Leader>nq :bprev<CR>
nnoremap <Leader>nc :bd<CR>
" Moving visual block
vnoremap J :m '>+1<CR>gv=gv
vnoremap K :m '<-2<CR>gv=gv