let mapleader="," " Plugins call plug#begin('~/.vim/plugged') Plug 'mbbill/undotree' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'jiangmiao/auto-pairs' call plug#end() " Some basics: "set bg=light set go=a set mouse=a set nohlsearch set clipboard=unnamedplus set tabstop=4 set softtabstop=4 set shiftwidth=4 nnoremap c "_c set nocompatible filetype plugin indent on set encoding=utf-8 set number set relativenumber set ruler syntax on colo peachpuff set hidden " Enable autocompletion: set wildmode=longest,list,full " Previous / next buffer noremap :bprevious noremap :bnext noremap w :w :bp :bd # " Airline let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tabline#fnamemod = ':t' let g:airline_detect_modified = 1 let g:airline_detect_paste = 1 let g:airline_detect_crypt = 1 let g:airline_theme = 'term' "let g:airline_powerline_fonts = 1 let g:airline_symbols_ascii = 1 let g:airline#parts#ffenc#skip_expected_string='utf-8[unix]' " Cursor mode let g:airline#extensions#cursormode#enabled = 1 let g:cursormode_color_map = { \ "i": "#7da9c7", \ "n": "#eac179", \ "R": "#bb5653", \ "r": "#bb5653", \ "v": "#b06597", \ "V": "#b06597", \ "\": "#b06597", \} " 10 buffers jump let g:airline#extensions#tabline#buffer_idx_mode = 1 nmap 1 AirlineSelectTab1 nmap 2 AirlineSelectTab2 nmap 3 AirlineSelectTab3 nmap 4 AirlineSelectTab4 nmap 5 AirlineSelectTab5 nmap 6 AirlineSelectTab6 nmap 7 AirlineSelectTab7 nmap 8 AirlineSelectTab8 nmap 9 AirlineSelectTab9 nmap 0 AirlineSelectTab10 " Disables automatic commenting on newline: autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o " Powerline set laststatus=2 set t_Co=256 " Runs a script that cleans out tex build files whenever I close out of a .tex file. autocmd VimLeave *.tex !texclear % " Compile document, be it groff/LaTeX/markdown/etc. "map c :w! \| !compiler % autocmd BufWritePost *.tex !compiler % " Compile C file autocmd FileType c noremap :w :!clear :!~/.vim/c/f5.sh; autocmd FileType c noremap :w :!clear :!~/.vim/c/f6.sh; autocmd FileType c noremap :w:!gcc-Wall-Wextra-Werror % autocmd FileType c noremap :w :!clear :!~/.vim/c/f9.sh % autocmd FileType c noremap :w :!clear :!~/.vim/c/f10.sh % " Compile C++ file autocmd FileType cpp noremap :w :!clear :!~/.vim/cpp/f5.sh; autocmd FileType cpp noremap :w :!clear :!~/.vim/cpp/f6.sh; autocmd FileType cpp noremap :w:!g++-Wall-Wextra-Werror % autocmd FileType cpp noremap :w :!clear :!~/.vim/cpp/f9.sh % autocmd FileType cpp noremap :w :!clear :!~/.vim/cpp/f10.sh % " === Comfy === " C "autocmd FileType c inoremap " "" "autocmd FileType c inoremap ' '' "autocmd FileType c inoremap ( () "autocmd FileType c inoremap [ [] "autocmd FileType c inoremap { {} "autocmd FileType c inoremap < <> "autocmd FileType c inoremap { {}O "autocmd FileType c inoremap {; {};O "autocmd FileType c inoremap < < "autocmd FileType c inoremap > > "autocmd FileType c inoremap <= <= autocmd FileType c nnoremap m o#include#include#include#includeintmain(void){return0;}O autocmd FileType c nnoremap M o#include#include#include#includeintmain(intargc,char*argv[]){if(argc!=1){printf("NOTENOUGHARGS\n");return1;}return0;}Oprintf(); " C++ autocmd FileType cpp noremap :w:!g++-Wall-Wextra-Werror -O3 % autocmd FileType cpp noremap :w:!g++ -Wall -Wextra -Werror -O3 %; ./a.out ; echo "~>\n\n.vimrc 2.3.1-release Tilde Edition by Joe"; rm a.out autocmd FileType cpp noremap :w:!g++ -Wall -Wextra -Werror -O3 %; ./a.out; echo "~>\n\n.vimrc 2.3.1-release Tilde Edition by Joe"; rm a.out ""autocmd FileType cpp inoremap " "" ""autocmd FileType cpp inoremap ' '' ""autocmd FileType cpp inoremap ( () ""autocmd FileType cpp inoremap [ [] ""autocmd FileType cpp inoremap { {} ""autocmd FileType cpp inoremap < <> ""autocmd FileType cpp inoremap { {}O ""autocmd FileType cpp inoremap {; {};O ""autocmd FileType cpp inoremap < < ""autocmd FileType cpp inoremap << << ""autocmd FileType cpp inoremap > > ""autocmd FileType cpp inoremap >> >> ""autocmd FileType cpp inoremap <= <= autocmd FileType cpp nnoremap m ointmain(void){return0;}O autocmd FileType cpp nnoremap M ointmain(intargc,char*argv[]){if(argc!=1)return0;if(argv[]){}return0;}O autocmd FileType cpp nnoremap M ointmain(intargc,char*argv[]){if(argc!=1){cout<<"NOTENOUGHARGS"<<endl;return1;}return0;}O " Java ""autocmd FileType java inoremap " "" ""autocmd FileType java inoremap ' '' ""autocmd FileType java inoremap ( () ""autocmd FileType java inoremap [ [] ""autocmd FileType java inoremap { {} ""autocmd FileType java inoremap < <> ""autocmd FileType java inoremap { {}O ""autocmd FileType java inoremap {; {};O ""autocmd FileType java inoremap < < ""autocmd FileType java inoremap > > ""autocmd FileType java inoremap <= <= " = Web = " HTML "autocmd FileType html inoremap " "" "autocmd FileType html inoremap ' '' "autocmd FileType html inoremap ( () "autocmd FileType html inoremap [ [] "autocmd FileType html inoremap { {} "autocmd FileType html inoremap { {}O "autocmd FileType html inoremap < <> " PHP ""autocmd FileType php inoremap " "" ""autocmd FileType php inoremap ' '' ""autocmd FileType php inoremap ( () ""autocmd FileType php inoremap [ [] ""autocmd FileType php inoremap { {} ""autocmd FileType php inoremap { {}O ""autocmd FileType php inoremap < <> ""autocmd FileType php inoremap ""autocmd FileType php inoremap ?>O " CSS "autocmd FileType css inoremap " "" "autocmd FileType css inoremap ' '' "autocmd FileType css inoremap ( () "autocmd FileType css inoremap [ [] "autocmd FileType css inoremap { {} "autocmd FileType css inoremap { {}O " Just in case "inoremap " "" "inoremap ' '' "inoremap ( () "inoremap [ [] "inoremap { {} "inoremap "" "" "inoremap '' '' "inoremap () () "inoremap [] [] "inoremap {} {} "inoremap <> <> " .vimrc 2.4.1-release | Copyright Joe 2k19