" https://www.freecodecamp.org/news/vimrc-configuration-guide-customize-your-vim-editor/ " Disable compatibility with vi which can cause unexpected issues. set nocompatible " Enable type file detection. Vim will be able to try to detect the type of file is use. filetype on " Enable plugins and load plugin for the detected file type. filetype plugin on " Load an indent file for the detected file type. filetype indent on " Turn syntax highlighting on. syntax on " Add numbers to the file. set number " Highlight cursor line underneath the cursor horizontally. "set cursorline " Highlight cursor line underneath the cursor vertically. "set cursorcolumn " Set shift width to 4 spaces. set shiftwidth=4 " Set tab width to 4 columns. set tabstop=4 " Use space characters instead of tabs. "set expandtab " Do not save backup files. " set nobackup set backupdir=/tmp " Do not let cursor scroll below or above N number of lines when scrolling. set scrolloff=10 " Do not wrap lines. Allow long lines to extend as far as the line goes. "set nowrap " While searching though a file incrementally highlight matching characters as you type. set incsearch " Ignore capital letters during search. set ignorecase " Override the ignorecase option if searching for capital letters. " This will allow you to search specifically for capital letters. set smartcase " Show partial command you type in the last line of the screen. set showcmd " Show the mode you are on the last line. "set showmode " Show matching words during a search. set showmatch " Use highlighting when doing a search. set hlsearch " Set the commands to save in history default number is 20. set history=1000 " Enable auto completion menu after pressing TAB. set wildmenu " Make wildmenu behave like similar to Bash completion. "set wildmode=list:longest " There are certain files that we would never want to edit with Vim. " Wildmenu will ignore files with these extensions. set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx " skeletons autocmd BufNewFile *.sh 0r ./.vim/templates/template.sh autocmd BufNewFile *.py 0r ./.vim/templates/template.py autocmd BufNewFile *.c 0r ./.vim/templates/template.c set mouse=a inoremap { {}O :nnoremap @q set rnu set directory=/tmp colorscheme koehler set tags=./tags;,tags; syntax on set tags=./tags;/ set smartindent