My .vimrc config.
" General
set confirm " Display confirmation dialog when closing unsaved files
set number " Show line numbers
set number relativenumber " Show line numbers relative to curser
set cursorline " Highlight the current line
set guicursor=
set scrolloff=23 " Number of screen lines above and below the cursor
set colorcolumn=80 " Line 76 and 80 are colored
:hi ColorColumn ctermbg=Magenta " Column colors
set nowrap " Do not wrap lines
set list
set listchars=eol:
,tab:⭾⭾,trail:~,extends:>,precedes:<,space:⎵
set showmatch " Highlight matching brace
set visualbell " Use visual bell (no beeping)
set showcmd " Show partial commands in the last line
set hlsearch " Highlight all search results
set smartcase " Enable smart-case search
set ignorecase " Always case-insensitive
set incsearch " Searches for strings incrementally
set wildmenu " Display tab complete options menu
set encoding=utf-8 " Use an encoding that supports unicode
"set autoindent " Auto-indent new lines
"set smartindent " Enable smart-indent
"set smarttab " Enable smart-tabs
set shiftwidth=4 " Number of auto-indent spaces
set softtabstop=4 " Number of spaces per Tab
set tabstop=4 " Indent using four spaces
set expandtab " Convert tabs to spaces.
" Advanced
set ruler " Show row and column ruler information
"set showtabline=2 " Show tab bar
set cmdheight=2 " Command line height
set undolevels=1000 " Number of undo levels
set backspace=indent,eol,start " Backspacing over indention, line breaks and insertion start
set dir=~/.cache/vim " Directory to store swap files
set backupdir=~/.cache/vim " Directory to store backup files
set undodir=~/.cache/vim/undo " Directory to store undo cache
nnoremap <silent> <C-l> :nohl<CR>
nnoremap <silent> <C-s> :term<CR>
nnoremap <silent> <leader>[ :bp<CR>
nnoremap <silent> <leader>] :bn<CR>
nnoremap <leader>so :so ~/.config/vim/sessions/
nnoremap <silent> <F3> :set list!<CR>
nnoremap <silent> <leader>cc :set cc-=5<CR>:set cc-=76<CR>
nnoremap <silent> <leader>cc1 :set cc+=5<CR>:set cc-=76<CR>
nnoremap <silent> <le