set nocompatible " be iMproved, required filetype off " required """""""""""""""""""""""""""""""""""""""""""""""""""""" " ___ _ _ _____ _____ ____ _____ _ ____ _____ " |_ _| \ | |_ _| ____| _ \| ___/ \ / ___| ____| " | || \| | | | | _| | |_) | |_ / _ \| | | _| " | || |\ | | | | |___| _ <| _/ ___ \ |___| |___ " |___|_| \_| |_| |_____|_| \_\_|/_/ \_\____|_____| " """""""""""""""""""""""""""""""""""""""""""""""""""""" " UTF-8 set encoding=utf8 "syntax highlighting syntax on set synmaxcol=512 filetype off " stop unnecessary rendering set lazyredraw " show line numbers set number " no line wrapping set nowrap " start NERDTree if no file is pass as arg autocmd StdinReadPre * let s:std_in=1 autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif " close vim if the only window left open is a NERDTree autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif " Allow saving of files as sudo when I forgot to start vim using sudo. cnoremap w!! w !sudo tee > /dev/null % " Start in insert mode for ALL files "au BufRead,BufNewFile * startinsert "startinsert """"""""""""""""""""""""""""""""""""""""""""""" " __ _____ __ __ ____ _ _ _ ____ " \ \ / /_ _| \/ | | _ \| | | | | |/ ___| " \ \ / / | || |\/| | | |_) | | | | | | | _ " \ V / | || | | | | __/| |__| |_| | |_| | " \_/ |___|_| |_| |_| |_____\___/ \____| " """"""""""""""""""""""""""""""""""""""""""""""" " Install vim-plug if we don't already have it if empty(glob('~/.vim/autoload/plug.vim')) silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim autocmd VimEnter * PlugInstall --sync | source ~/.vimrc endif " Specify a directory for plugins " - For Neovim: ~/.local/share/nvim/plugged " - Avoid using standard Vim directory names like 'plugin' call plug#begin('~/.vim/plugged') Plug 'flazz/vim-colorschemes' Plug 'xero/sourcerer.vim' Plug 'romainl/apprentice' Plug 'dracula/vim' Plug 'plasticboy/vim-markdown', { 'for': 'markdown' } Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' } " Initialize plugin system call plug#end() """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" " ____ _____ _ _____ _ _ ____ _ ___ _ _ _____ " / ___|_ _|/ \|_ _| | | / ___|| | |_ _| \ | | ____| " \___ \ | | / _ \ | | | | | \___ \| | | || \| | _| " ___) || |/ ___ \| | | |_| |___) | |___ | || |\ | |___ " |____/ |_/_/ \_\_| \___/|____/|_____|___|_| \_|_____| " """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" set noshowmode set laststatus=2 if !has('gui_running') set t_Co=256 endif let g:lightline = { \ 'colorscheme': 'jellybeans', \ 'active': { \ 'left': [ [ 'mode', 'paste' ], \ [ 'readonly', 'filename', 'modified' ] ] \ }, \ 'component': { \ 'readonly': '%{&readonly?"⭤":""}', \ }, \ 'separator': { 'left': '⮀', 'right': '⮂' }, \ 'subseparator': { 'left': '⮁', 'right': '⮃' } \ } """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " ____ ___ _ ___ ____ ____ ____ _ _ _____ __ __ _____ " / ___/ _ \| | / _ \| _ \/ ___| / ___| | | | ____| \/ | ____| " | | | | | | | | | | | |_) \___ \| | | |_| | _| | |\/| | _| " | |__| |_| | |__| |_| | _ < ___) | |___| _ | |___| | | | |___ " \____\___/|_____\___/|_| \_\____/ \____|_| |_|_____|_| |_|_____| " """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" colorscheme dracula """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " _ _ _ _ _ " _ __ | |_ _ __ _(_)_ __ ___ ___ ___| |_| |_(_)_ __ __ _ ___ " | '_ \| | | | |/ _` | | '_ \/ __| / __|/ _ \ __| __| | '_ \ / _` / __| " | |_) | | |_| | (_| | | | | \__ \ \__ \ __/ |_| |_| | | | | (_| \__ \ " | .__/|_|\__,_|\__, |_|_| |_|___/ |___/\___|\__|\__|_|_| |_|\__, |___/ " |_| |___/ |___/ " """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let vim_markdown_preview_toggle=1 let vim_markdown_preview_toggle=2 let vim_markdown_preview_browser='firefox'