call plug#begin('~/.vim/plugged') "{{ The Basics }} Plug 'gmarik/Vundle.vim' " Vundle Plug 'joshdick/onedark.vim' " Colors Plug 'itchyny/lightline.vim' " Lightline statusbar Plug 'suan/vim-instant-markdown', {'rtp': 'after'} " Markdown Preview Plug 'frazrepo/vim-rainbow' "{{ File management }} Plug 'vifm/vifm.vim' " Vifm Plug 'scrooloose/nerdtree' " Nerdtree Plug 'tiagofumo/vim-nerdtree-syntax-highlight' " Highlighting Nerdtree Plug 'ryanoasis/vim-devicons' " Icons for Nerdtree "{{ Tim Pope Plugins }} Plug 'tpope/vim-surround' " Change surrounding marks "{{ Syntax Highlighting and Colors }} Plug 'ap/vim-css-color' " Color previews for CSS "{{ Junegunn Choi Plugins }} Plug 'junegunn/goyo.vim' " Distraction-free viewing Plug 'junegunn/limelight.vim' " Hyperfocus on a range Plug 'junegunn/vim-emoji' " Vim needs emojis! "{{ Language specific }} Plug 'mattn/emmet-vim' " Emmet for web-gay developing call plug#end() " colorscheme syntax on " brackets inoremap " "" inoremap ' '' inoremap ( () inoremap [ [] inoremap { {} inoremap { {}O inoremap {; {};O " markdown let g:instant_markdown_browser = "st surf" " Make Vim more useful set nocompatible " Use the OS clipboard by default (on versions compiled with `+clipboard`) set clipboard+=unnamedplus " Enhance command-line completion set wildmenu " Disables automatic commenting on newline: autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o " Allow cursor keys in insert mode " Allow backspace in insert mode set backspace=indent,eol,start " Optimize for fast terminal connections set ttyfast " Add the g flag to search/replace by default set gdefault " Use UTF-8 without BOM set encoding=utf-8 " Change mapleader let mapleader="," " Don’t add empty newlines at the end of files set binary set noeol " 256 colors set t_Co=256 " Respect modeline in files set modeline set modelines=4 " Enable per-directory .vimrc files and disable unsafe commands in them set exrc set secure " Enable line numbers set number " Make tabs as wide as two spaces set tabstop=4 set shiftwidth=4 set smarttab set expandtab " Highlight searches set hlsearch " Ignore case of searches set ignorecase " Highlight dynamically as pattern is typed set incsearch " Always show status line set laststatus=2 " Enable mouse in all modes set mouse=a " Disable error bells set noerrorbells " Don’t reset cursor to start of line when moving around. set nostartofline " Show the cursor position set ruler " Don’t show the intro message when starting Vim set shortmess=atI " Show the current mode set showmode " Show the filename in the window titlebar set title " Show the (partial) command as it’s being typed set showcmd " Use relative line numbers if exists("&relativenumber") set relativenumber au BufReadPost * set relativenumber endif " Start scrolling three lines before the horizontal window border set scrolloff=3 map c :w! \| !pdflatex % map t :!st& vnoremap "+y