Major cleanup, added submodules

This commit is contained in:
Trey Blancher 2023-08-13 14:01:46 -04:00
parent 4a77ad1617
commit 5d3d2c3b21
22 changed files with 3066 additions and 602 deletions

3
.gitignore vendored
View File

@ -1,2 +1,5 @@
*.sw[mnop]
bundle/*
.netrwhist
spell/*
staging/*

21
.gitmodules vendored Normal file
View File

@ -0,0 +1,21 @@
[submodule ".plugged"]
path = .plugged
url = https://github.com/prabirshrestha/asyncomplete.vim.git
[submodule "plugged/asyncomplete.vim"]
path = plugged/asyncomplete.vim
url = https://github.com/prabirshrestha/asyncomplete.vim.git
[submodule "plugged/asyncomplete-lsp.vim"]
path = plugged/asyncomplete-lsp.vim
url = https://github.com/prabirshrestha/asyncomplete-lsp.vim.git
[submodule "plugged/gruvbox"]
path = plugged/gruvbox
url = https://github.com/morhetz/gruvbox.git
[submodule "plugged/vim-airline"]
path = plugged/vim-airline
url = https://github.com/vim-airline/vim-airline.git
[submodule "plugged/vim-lsp"]
path = plugged/vim-lsp
url = https://github.com/prabirshrestha/vim-lsp.git
[submodule "plugged/vim-lsp-settings"]
path = plugged/vim-lsp-settings
url = https://github.com/mattn/vim-lsp-settings.git

View File

@ -1,5 +0,0 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhistcnt =3
let g:netrw_dirhist_3='/home/trey/.tmuxp'
let g:netrw_dirhist_2='/home/trey/.keychain'
let g:netrw_dirhist_1='/home/trey/src/bashcrawl/entrance/cellar/armoury/chamber'

1
.plugged Submodule

@ -0,0 +1 @@
Subproject commit b3fbac1930be2c9cdf956f4a0346c1dd0e9abd44

101
.vimrc
View File

@ -1,101 +0,0 @@
set t_Co=256
"set t_Co=16
set t_ut=
set ai
set background=dark
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set number
"set textwidth=80
set hlsearch
"color asu1dark
"set t_ut=
let g:solarized_italic=0
let g:solarized_bold=0
let g:solarized_underline=0
"colorscheme sorcerer
let g:csv_delim=','
" Pathogen
filetype off " Pathogen needs to run before plugin indent on
execute pathogen#infect()
"call pathogen#runtime_append_all_bundles()
"call pathogen#helptags() " generate help tags for everything in 'runtimepath'
filetype plugin indent on
filetype plugin on
colorscheme gruvbox
let g:tmuxline_preset = tmux
syntax on
nnoremap <F2> :GundoToggle<CR>
nnoremap <C-j> <C-w>w
imap  <End>
imap  <Home>
"nnoremap  $
"nnoremap  <bar>
nmap Y y$
nmap C c$
inoremap jj <Esc>
inoremap kk <Esc>
inoremap hh <Esc>
inoremap lll <Esc>
inoremap :wq <Esc>:wq
inoremap :w <Esc>:w
inoremap :q! <Esc>:q!
inoremap :q <Esc>:q
inoremap yy <Esc>yy
inoremap ddd <Esc>dd
" Force me to stop using arrow keys
inoremap <Left> <Nop>
nnoremap <Left> <Nop>
inoremap <Right> <Nop>
nnoremap <Right> <Nop>
inoremap <Up> <Nop>
nnoremap <Up> <Nop>
inoremap <Down> <Nop>
nnoremap <Down> <Nop>
" Fix Home/End/Delete
set backspace=indent,eol,start
"fixdel
" Idle timeout, exit insert mode after thirty seconds:
"au CursorHoldI * stopinsert
"set updatetime=30000
set clipboard=unnamedplus
set laststatus=2
set statusline=[%n]\ %<%F\ \ \ [%M%R%H%W%Y][%{&ff}]\ \ %=\ line:%l/%L\ col:%c\ \ \ %p%%\ \ \ @%{strftime(\"%H:%M:%S\")}
"set spell spelllang=en
"
" Force me to stop using arrow keys
inoremap <Left> <Esc>
nnoremap <Left> <Nop>
inoremap <Right> <Esc>
nnoremap <Right> <Nop>
inoremap <Up> <Esc>
nnoremap <Up> <Nop>
inoremap <Down> <Esc>
nnoremap <Down> <Nop>
" Change cursor from block to vertical pipe when in insert mode
if &term =~ "screen-256color"
if exists('$TMUX')
let &t_SI = "\<Esc>Ptmux;\<Esc>\<Esc>[5 q\x7\<Esc>\\"
let &t_SR = "\<Esc>Ptmux;\<Esc>\<Esc>[3 q\x7\<Esc>\\"
let &t_EI = "\<Esc>Ptmux;\<Esc>\<Esc>[1 q\x7\<Esc>\\"
else
let &t_SI = "\<Esc>[5 q"
let &t_SR = "\<Esc>[3 q"
let &t_EI = "\<Esc>[1 q"
endif
endif
autocmd BufRead,BufNewFile ~/Private/academic/certs/lf/LFS211/2017-12-16_study_materials/*.txt source ~/.muttvimrc

3
after/syntax/tex.vim Normal file
View File

@ -0,0 +1,3 @@
syntax spell toplevel
set spell spelllang=en_us
let g:tex_verbspell= 1

View File

@ -1,255 +0,0 @@
" pathogen.vim - path option manipulation
" Maintainer: Tim Pope <http://tpo.pe/>
" Version: 2.0
" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
"
" For management of individually installed plugins in ~/.vim/bundle (or
" ~\vimfiles\bundle), adding `call pathogen#infect()` to the top of your
" .vimrc is the only other setup necessary.
"
" The API is documented inline below. For maximum ease of reading,
" :set foldmethod=marker
if exists("g:loaded_pathogen") || &cp
finish
endif
let g:loaded_pathogen = 1
" Point of entry for basic default usage. Give a directory name to invoke
" pathogen#runtime_append_all_bundles() (defaults to "bundle"), or a full path
" to invoke pathogen#runtime_prepend_subdirectories(). Afterwards,
" pathogen#cycle_filetype() is invoked.
function! pathogen#infect(...) abort " {{{1
let source_path = a:0 ? a:1 : 'bundle'
if source_path =~# '[\\/]'
call pathogen#runtime_prepend_subdirectories(source_path)
else
call pathogen#runtime_append_all_bundles(source_path)
endif
call pathogen#cycle_filetype()
return ''
endfunction " }}}1
" Split a path into a list.
function! pathogen#split(path) abort " {{{1
if type(a:path) == type([]) | return a:path | endif
let split = split(a:path,'\\\@<!\%(\\\\\)*\zs,')
return map(split,'substitute(v:val,''\\\([\\,]\)'',''\1'',"g")')
endfunction " }}}1
" Convert a list to a path.
function! pathogen#join(...) abort " {{{1
if type(a:1) == type(1) && a:1
let i = 1
let space = ' '
else
let i = 0
let space = ''
endif
let path = ""
while i < a:0
if type(a:000[i]) == type([])
let list = a:000[i]
let j = 0
while j < len(list)
let escaped = substitute(list[j],'[,'.space.']\|\\[\,'.space.']\@=','\\&','g')
let path .= ',' . escaped
let j += 1
endwhile
else
let path .= "," . a:000[i]
endif
let i += 1
endwhile
return substitute(path,'^,','','')
endfunction " }}}1
" Convert a list to a path with escaped spaces for 'path', 'tag', etc.
function! pathogen#legacyjoin(...) abort " {{{1
return call('pathogen#join',[1] + a:000)
endfunction " }}}1
" Remove duplicates from a list.
function! pathogen#uniq(list) abort " {{{1
let i = 0
let seen = {}
while i < len(a:list)
if (a:list[i] ==# '' && exists('empty')) || has_key(seen,a:list[i])
call remove(a:list,i)
elseif a:list[i] ==# ''
let i += 1
let empty = 1
else
let seen[a:list[i]] = 1
let i += 1
endif
endwhile
return a:list
endfunction " }}}1
" \ on Windows unless shellslash is set, / everywhere else.
function! pathogen#separator() abort " {{{1
return !exists("+shellslash") || &shellslash ? '/' : '\'
endfunction " }}}1
" Convenience wrapper around glob() which returns a list.
function! pathogen#glob(pattern) abort " {{{1
let files = split(glob(a:pattern),"\n")
return map(files,'substitute(v:val,"[".pathogen#separator()."/]$","","")')
endfunction "}}}1
" Like pathogen#glob(), only limit the results to directories.
function! pathogen#glob_directories(pattern) abort " {{{1
return filter(pathogen#glob(a:pattern),'isdirectory(v:val)')
endfunction "}}}1
" Turn filetype detection off and back on again if it was already enabled.
function! pathogen#cycle_filetype() " {{{1
if exists('g:did_load_filetypes')
filetype off
filetype on
endif
endfunction " }}}1
" Checks if a bundle is 'disabled'. A bundle is considered 'disabled' if
" its 'basename()' is included in g:pathogen_disabled[]' or ends in a tilde.
function! pathogen#is_disabled(path) " {{{1
if a:path =~# '\~$'
return 1
elseif !exists("g:pathogen_disabled")
return 0
endif
let sep = pathogen#separator()
return index(g:pathogen_disabled, strpart(a:path, strridx(a:path, sep)+1)) != -1
endfunction "}}}1
" Prepend all subdirectories of path to the rtp, and append all 'after'
" directories in those subdirectories.
function! pathogen#runtime_prepend_subdirectories(path) " {{{1
let sep = pathogen#separator()
let before = filter(pathogen#glob_directories(a:path.sep."*"), '!pathogen#is_disabled(v:val)')
let after = filter(pathogen#glob_directories(a:path.sep."*".sep."after"), '!pathogen#is_disabled(v:val[0:-7])')
let rtp = pathogen#split(&rtp)
let path = expand(a:path)
call filter(rtp,'v:val[0:strlen(path)-1] !=# path')
let &rtp = pathogen#join(pathogen#uniq(before + rtp + after))
return &rtp
endfunction " }}}1
" For each directory in rtp, check for a subdirectory named dir. If it
" exists, add all subdirectories of that subdirectory to the rtp, immediately
" after the original directory. If no argument is given, 'bundle' is used.
" Repeated calls with the same arguments are ignored.
function! pathogen#runtime_append_all_bundles(...) " {{{1
let sep = pathogen#separator()
let name = a:0 ? a:1 : 'bundle'
if "\n".s:done_bundles =~# "\\M\n".name."\n"
return ""
endif
let s:done_bundles .= name . "\n"
let list = []
for dir in pathogen#split(&rtp)
if dir =~# '\<after$'
let list += filter(pathogen#glob_directories(substitute(dir,'after$',name,'').sep.'*[^~]'.sep.'after'), '!pathogen#is_disabled(v:val[0:-7])') + [dir]
else
let list += [dir] + filter(pathogen#glob_directories(dir.sep.name.sep.'*[^~]'), '!pathogen#is_disabled(v:val)')
endif
endfor
let &rtp = pathogen#join(pathogen#uniq(list))
return 1
endfunction
let s:done_bundles = ''
" }}}1
" Invoke :helptags on all non-$VIM doc directories in runtimepath.
function! pathogen#helptags() " {{{1
let sep = pathogen#separator()
for dir in pathogen#split(&rtp)
if (dir.sep)[0 : strlen($VIMRUNTIME)] !=# $VIMRUNTIME.sep && filewritable(dir.sep.'doc') == 2 && !empty(filter(split(glob(dir.sep.'doc'.sep.'*'),"\n>"),'!isdirectory(v:val)')) && (!filereadable(dir.sep.'doc'.sep.'tags') || filewritable(dir.sep.'doc'.sep.'tags'))
helptags `=dir.'/doc'`
endif
endfor
endfunction " }}}1
command! -bar Helptags :call pathogen#helptags()
" Like findfile(), but hardcoded to use the runtimepath.
function! pathogen#runtime_findfile(file,count) "{{{1
let rtp = pathogen#join(1,pathogen#split(&rtp))
let file = findfile(a:file,rtp,a:count)
if file ==# ''
return ''
else
return fnamemodify(file,':p')
endif
endfunction " }}}1
" Backport of fnameescape().
function! pathogen#fnameescape(string) " {{{1
if exists('*fnameescape')
return fnameescape(a:string)
elseif a:string ==# '-'
return '\-'
else
return substitute(escape(a:string," \t\n*?[{`$\\%#'\"|!<"),'^[+>]','\\&','')
endif
endfunction " }}}1
if exists(':Vedit')
finish
endif
function! s:find(count,cmd,file,lcd) " {{{1
let rtp = pathogen#join(1,pathogen#split(&runtimepath))
let file = pathogen#runtime_findfile(a:file,a:count)
if file ==# ''
return "echoerr 'E345: Can''t find file \"".a:file."\" in runtimepath'"
elseif a:lcd
let path = file[0:-strlen(a:file)-2]
execute 'lcd `=path`'
return a:cmd.' '.pathogen#fnameescape(a:file)
else
return a:cmd.' '.pathogen#fnameescape(file)
endif
endfunction " }}}1
function! s:Findcomplete(A,L,P) " {{{1
let sep = pathogen#separator()
let cheats = {
\'a': 'autoload',
\'d': 'doc',
\'f': 'ftplugin',
\'i': 'indent',
\'p': 'plugin',
\'s': 'syntax'}
if a:A =~# '^\w[\\/]' && has_key(cheats,a:A[0])
let request = cheats[a:A[0]].a:A[1:-1]
else
let request = a:A
endif
let pattern = substitute(request,'/\|\'.sep,'*'.sep,'g').'*'
let found = {}
for path in pathogen#split(&runtimepath)
let path = expand(path, ':p')
let matches = split(glob(path.sep.pattern),"\n")
call map(matches,'isdirectory(v:val) ? v:val.sep : v:val')
call map(matches,'expand(v:val, ":p")[strlen(path)+1:-1]')
for match in matches
let found[match] = 1
endfor
endfor
return sort(keys(found))
endfunction " }}}1
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Ve :execute s:find(<count>,'edit<bang>',<q-args>,0)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vedit :execute s:find(<count>,'edit<bang>',<q-args>,0)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vopen :execute s:find(<count>,'edit<bang>',<q-args>,1)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vsplit :execute s:find(<count>,'split',<q-args>,<bang>1)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vvsplit :execute s:find(<count>,'vsplit',<q-args>,<bang>1)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vtabedit :execute s:find(<count>,'tabedit',<q-args>,<bang>1)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vpedit :execute s:find(<count>,'pedit',<q-args>,<bang>1)
command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vread :execute s:find(<count>,'read',<q-args>,<bang>1)
" vim:set et sw=2:

2812
autoload/plug.vim Normal file

File diff suppressed because it is too large Load Diff

@ -1 +0,0 @@
Subproject commit 06da921608b971fb47603671bcafdb2843992eb3

11
basic Normal file
View File

@ -0,0 +1,11 @@
inoremap jj <Esc>
inoremap kk <Esc>
set expandtab
set tabstop=4
set softtabstop=4
set shiftwidth=4
inoremap hh <Esc>
inoremap lll <Esc>
inoremap ddd <Esc>
inoremap wwww <Esc>
inoremap eeee <Esc>

View File

@ -1,10 +0,0 @@
if exists("did_load_csvfiletype")
finish
endif
let did_load_csvfiletype=1
augroup filetypedetect
au! BufRead,BufNewFile *.csv,*.dat setfiletype csv
augroup END
au BufNewFile,BufRead *.conf setf conf

@ -0,0 +1 @@
Subproject commit cc5247bc268fb2c79d8b127bd772514554efb3ee

@ -0,0 +1 @@
Subproject commit b3fbac1930be2c9cdf956f4a0346c1dd0e9abd44

1
plugged/gruvbox Submodule

@ -0,0 +1 @@
Subproject commit bf2885a95efdad7bd5e4794dd0213917770d79b7

1
plugged/vim-airline Submodule

@ -0,0 +1 @@
Subproject commit e6bb8427dc2d2dc3583ed1bf5ff6a9682c854d32

1
plugged/vim-lsp Submodule

@ -0,0 +1 @@
Subproject commit 2be2b07b53c4c58001ca52d2fc48c4088c5761f0

@ -0,0 +1 @@
Subproject commit 13fc03c6950e8b3f0f6f2dcd25b470a9adf0d37b

View File

@ -1 +0,0 @@
crawfish

Binary file not shown.

View File

@ -1,229 +0,0 @@
SpiderOak
Bluetooth
AVOXI
DIDs
crawfish
Vivat
Debian
Support's
SpiderOak's
mic
hostname
traceroute
crawfish
Mableton
multifactor
LastPass
Austell
Pindrop
KofC
Floersh
USAA
th
Boehm
Pefianco
DGK
PGK
KCIC
Youngers
LifeTeen
YTD
Yorio
Simcox
PGA
Grone
preorders
Boehm's
Rabidou
datacenter
datacenter's
CoB
MWDC
SWDC
filesystem
btrfs
anacron
Wordpress
Conyers
Vianney's
trifold
Lovello
Gamez
Veritas
Wicklander
Rainville
Salette
JSON
SpiderOakONE
config
timestamp
SmyrnaKofC
crontab
Coats4All
PCH
blockchain
Coinbase
Carnoustie
SSDNodes
ext4
ZFS
LVM
VDO
ILO
iDRAC
Filtrete
HVAC
x20x1
SSDNode
VPS
deltachunk
hypervisor
kofc
cp
pandoc
previousmonth
tex
stackexchange
yyyy
SJN
Syler
McGivney
SJNTV
SJNCS
Coats4Kids
COVID
lector
lectors
Wicke
Marek
Pagel
Scoggins
narthex
tmux
sudo
commento
eldon
treyandapril
aprilandtrey
CNAME
CNAMEs
yml
Postgres
gammachunk
certbot
QNAP
fwknop
filewalld
AUR
Epi
Blancher
CCETN
systemd
casper
evangelization
JJ
Bivens
Kos
Szabat
frontend
backend
Dolan
helpdesk
RuralMetro
SNI
GoDaddy
CloudFlare
Cutco
UKnight
EVOFit
MacBook
Backblaze
tennessine
ferrum
borg
Cataldi
Belk
Schreyer
SJNCC
Parsly
Frana
Diehl
CY
voicemails
DCS
GMail
FSA
ambo
Digium's
ITSP
E911
ipset
DPMA
Sangoma
D60
LTS
DIY
VoIP
PKGBUILD
motd
bashcrawl
macOS
md
PTSD
D285387
HTML5
Vimeo
TurboTax
AGI
CP12
cPanel
WRS
src
MP4
M4A
TN145308127
Terminix
Hamby
ENT
tblancher
qutebrowser
subvolume
MySQL
B2
TFACTS
Hamby's
EPSDT
du
BitWarden
TEIS
Bitwarden
mnt
Aetna
TMIY
OG
ccetn
ectospasm
tcp
whm
TDS
AIT
sshd
PuTTY
LCUB
IPv6
FQDN
TBD
DHCPv6
IPv4
DHCP
IoT
VLAN
speedtest
tds
LAN1
Calix
WireGuard
Neyland
KCHS
TennCare
IncrediBundles

Binary file not shown.

209
vimrc Normal file
View File

@ -0,0 +1,209 @@
" Set up plug-vim
"let data_dir = has('nvim') ? stdpath('data') . '/site' : '~/.vim'
"if empty(glob(data_dir . '/autoload/plug.vim'))
" silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
" autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
"endif
set nocompatible " be iMproved, required
"set rtp+=~/.vim/bundle/Vundle.vim
"call vundle#begin()
call plug#begin(has('nvim') ? stdpath('data') . '/plugged' : '~/.vim/plugged')
" ==== plugin manager
"Plugin 'VundleVim/Vundle.vim'
" ==== helpers
"Plug 'vim-scripts/L9'
" ==== File tree
"Plug 'scrooloose/nerdtree'
" ==== Completion
"Plug 'Valloric/YouCompleteMe'
Plug 'prabirshrestha/vim-lsp'
Plug 'mattn/vim-lsp-settings'
Plug 'prabirshrestha/asyncomplete.vim'
Plug 'prabirshrestha/asyncomplete-lsp.vim'
"Plug '~/src/vim/asyncomplete-muttgoobook.vim'
" ==== muttgoobook
Plug 'https://git.eldon.me/trey/asyncomplete-muttgoobook.vim'
" ==== Git
"Plug 'airblade/vim-gitgutter'
"Plug 'tpope/vim-fugitive'
" ==== syntax helpers
"Plug 'scrooloose/syntastic'
"Plug 'tpope/vim-surround'
"Plug 'cakebaker/scss-syntax.vim'
"Plug 'othree/yajs.vim'
"Plug 'mitsuhiko/vim-jinja'
"Plug 'octol/vim-cpp-enhanced-highlight'
"Plug 'ap/vim-css-color'
"Plug 'Vimjas/vim-python-pep8-indent'
"Plug 'python-rope/rope'
"Plug 'python-rope/ropemode'
"Plug 'python-rope/ropevim'
"Plug 'klen/pylama'
" ==== moving / searching
"Plug 'easymotion/vim-easymotion'
"Plug 'kien/ctrlp.vim'
"Plug 'ervandew/supertab'
"Plug 'terryma/vim-multiple-cursors'
"
" ==== snippets
"Plug 'SirVer/ultisnips'
"Plug 'thomasfaingnaert/vim-lsp-ultisnips'
" Status bar on bottom
Plug 'vim-airline/vim-airline'
" ==== PLUGIN THEMES
Plug 'morhetz/gruvbox'
"call vundle#end()
call plug#end()
"filetype plugin indent on
" ==== Colors and other basic settings
"filetype off " required
set exrc
"
" goobook stuff
"source ~/src/vim/asyncomplete-muttgoobook.vim/autoload/asyncomplete/sources/muttgoobook.vim
let g:asyncomplete_log_file = expand('~/bugs/asyncomplete.log')
let g:goobookrc='~/.goobookrc'
autocmd User asyncomplete_setup call asyncomplete#register_source({
\ 'name': 'muttgoobook',
\ 'allowlist': ['mail'],
\ 'completor': function('asyncomplete#sources#muttgoobook#completor'),
\ })
set encoding=UTF-8
" lsp asyncomplete
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
inoremap <expr> <cr> pumvisible() ? asyncomplete#close_popup() : "\<cr>"
colorscheme gruvbox
set guifont=Monospace\ 10
set fillchars+=vert:\$
"syntax enable
set background=dark
set ruler
set hidden
set number
set laststatus=1
set smartindent
"hset st=4 sw=4 et
set expandtab
set tabstop=4
set softtabstop=4
set shiftwidth=4
let &colorcolumn="80"
" ==== NERDTREE
"let NERDTreeIgnore = ['__pycache__', '\.pyc$', '\.o$', '\.so$', '\.a$', '\.swp', '*\.swp', '\.swo', '\.swn', '\.swh', '\.swm', '\.swl', '\.swk', '\.sw*$', '[a-zA-Z]*egg[a-zA-Z]*', '.DS_Store']
"let NERDTreeShowHidden=1
"let g:NERDTreeWinPos="left"
"let g:NERDTreeDirArrows=0
"map <C-t> :NERDTreeToggle<CR>
" ==== Syntastic
"let g:syntastic_always_populate_loc_list = 1
"let g:syntastic_auto_loc_list = 1
"let g:syntastic_check_on_open = 1
"let g:syntastic_check_on_wq = 0
"set statusline+=%#warningmsg#
"set statusline+=%{SyntasticStatuslineFlag()}
"set statusline+=%*
"let g:syntastic_javascript_checkers = ['eslint']
"let g:syntastic_javascript_mri_args = "--config=$HOME/.jshintrc"
"let g:syntastic_python_checkers = [ 'pylint', 'flake8', 'pep8', 'python']
"let g:syntastic_yaml_checkers = ['jsyaml']
"let g:syntastic_html_tidy_exec = 'tidy5'
"
" === flake8
"let g:flake8_show_in_file=1
" ==== snippets
" If you want :UltiSnipsEdit to split your window.
"let g:UltiSnipsEditSplit="vertical"
" make YCM compatible with UltiSnips (using supertab)
"let g:ycm_key_list_select_completion = ['<C-n>', '<Down>']
"let g:ycm_key_list_previous_completion = ['<C-p>', '<Up>']
"let g:SuperTabDefaultCompletionType = '<C-n>'
" better key bindings for UltiSnipsExpandTrigger
"let g:UltiSnipsExpandTrigger = "<tab>"
"let g:UltiSnipsJumpForwardTrigger = "<tab>"
"let g:UltiSnipsJumpBackwardTrigger = "<s-tab>"
" ==== Easymotion
"let g:EasyMotion_do_mapping = 0
"let g:EasyMotion_smartcase = 1
"nmap f <Plug>(easymotion-s)
" ==== moving around
"nmap <silent> <A-Up> :wincmd k<CR>
"nmap <silent> <A-Down> :wincmd j<CR>
"nmap <silent> <A-Left> :wincmd h<CR>
"nmap <silent> <A-Right> :wincmd l<CR>
" ==== disable mouse
set mouse=c
" ==== disable swap file warning
"set shortmess+=A
" ==== custom commands
command JsonPretty execute ":%!jq ."
set secure
set hlsearch
imap  <End>
imap  <Home>
nmap Y y$
nmap C c$
inoremap jj <Esc>
inoremap kk <Esc>
inoremap hh <Esc>
inoremap lll <Esc>
inoremap :wq <Esc>:wq
inoremap :w <Esc>:w
inoremap :q! <Esc>:q!
inoremap :q <Esc>:q
inoremap yy <Esc>yy
inoremap ddd <Esc>dd
" Force me to stop using arrow keys
noremap <Left> <Nop>
noremap <Right> <Nop>
noremap <Up> <Nop>
noremap <Down> <Nop>
" clear search
nmap <silent> <C-l> :noh<CR>
" Fix Home/End/Delete
set backspace=indent,eol,start
set clipboard=unnamedplus
" Change cursor from block to vertical pipe when in insert mode
if &term =~ "tmux-256color"
let &t_SI = "\<Esc>[6 q"
let &t_SR = "\<Esc>[4 q"
let &t_EI = "\<Esc>[0 q"
endif
" search history stuff
autocmd BufReadPost * silent! normal! g`"zv
"autocmd BufRead,BufNewFile ~/Private/academic/certs/lf/LFS211/2017-12-16_study_materials/*.txt source ~/.muttvimrc