From 50adee4e79febf6f74594604e9f7083461b04227 Mon Sep 17 00:00:00 2001 From: Luke Date: Sun, 21 Jan 2018 18:29:48 -0700 Subject: "first" commit, preparing for LARBS 2.0 --- .vimrc | 235 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 235 insertions(+) create mode 100644 .vimrc (limited to '.vimrc') diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..dce8cbb --- /dev/null +++ b/.vimrc @@ -0,0 +1,235 @@ +" Load Pathogen for plugins: + execute pathogen#infect() + execute pathogen#helptags() + +" Some basics: + set nocompatible + filetype plugin on + "colorscheme wal + syntax on + set encoding=utf-8 + set number + set relativenumber + +"au BufWinLeave * mkview +"au BufWinEnter * silent loadview +let g:instant_markdown_autostart = 0 + +let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markdown', '.markdown': 'markdown', '.mdown': 'markdown'} "Interpret .md files, etc. as .markdown + +"Make calcurse notes markdown compatible: + autocmd BufRead,BufNewFile /tmp/calcurse*,~/.calcurse/notes/* set filetype=markdown + +"Spell-check set to F6: + map :setlocal spell! spelllang=en_us,es + +"Toggle DeadKeys set to F7 (for accent marks): + so ~/.vim/luke/deadkeys.vim + nm :call ToggleDeadKeys() + +"Goyo plugin makes text more readable when writing prose: + map :Goyo + inoremap :Goyoa + +"Enable Goyo by default for mutt writting + autocmd BufRead,BufNewFile /tmp/neomutt* let g:goyo_width=72 + autocmd BufRead,BufNewFile /tmp/neomutt* :Goyo + +"Enable autocompletion: + set wildmode=longest,list,full + set wildmenu + +"Automatically deletes all tralling whitespace on save. + autocmd BufWritePre * %s/\s\+$//e + +"When shortcut files are updated, renew bash and ranger configs with new +"material: + autocmd BufWritePost ~/.config/Scripts/folders,~/.config/Scripts/configs !bash ~/.config/Scripts/shortcuts.sh + +" Runs a script that cleans out tex build files whenever I close out of a .tex file. + autocmd VimLeave *.tex !texclear + +" Use urlview to choose and open a url: + :noremap u :wsilent !urlview + +"Copy selected text to system clipboard (requires gvim installed): + vnoremap "+y + +"C-T for new tab + nnoremap :tabnew + +"""BASIC TOOLS +"Navigating with guides + inoremap /<++>"_c4l + vnoremap /<++>"_c4l + map /<++>"_c4l + inoremap ;gui <++> +"For normal mode when in terminals (in X I have caps mapped to esc, this replaces it when I don't have X) + inoremap jw + inoremap wj +"Shortcutting split navigation, saving a keypress: + map h + map j + map k + map l + +"Replace all is aliased to S. Visual mode shortcut doesn't work yet for some +"reason... + nnoremap S :%s//g + vnoremap S noop + vnoremap S :s//g + +"""LATEX + " Word count: + autocmd FileType tex map :w !detex \| wc -w + autocmd FileType tex inoremap :w !detex \| wc -w + " Compile document using xelatex: + autocmd FileType tex inoremap :!xelatex%a + autocmd FileType tex nnoremap :!xelatex% + " Code snippets + autocmd FileType tex inoremap ;fr \begin{frame}\frametitle{}<++>\end{frame}<++>6kf}i + autocmd FileType tex inoremap ;fi \begin{fitch}\end{fitch}<++>3kA + autocmd FileType tex inoremap ;exe \begin{exe}\ex\end{exe}<++>3kA + autocmd FileType tex inoremap ;em \emph{}<++>T{i + autocmd FileType tex inoremap ;bf \textbf{}<++>T{i + autocmd FileType tex vnoremap ; ``>2la}?\\{a + "autocmd FileType tex vnoremap : ``>2la}?{\\la + autocmd FileType tex inoremap {{ F{i + autocmd FileType tex inoremap }} f}a + autocmd FileType tex inoremap ;it \textit{}<++>T{i + autocmd FileType tex inoremap ;ct \textcite{}<++>T{i + autocmd FileType tex inoremap ;cp \parencite{}<++>T{i + autocmd FileType tex inoremap ;glos {\gll<++>\\<++>\\\trans{``<++>''}}2k2bcw + autocmd FileType tex inoremap ;x \begin{xlist}\ex\end{xlist}kA + autocmd FileType tex inoremap ;ol \begin{enumerate}\end{enumerate}<++>3kA\item + autocmd FileType tex inoremap ;ul \begin{itemize}\end{itemize}<++>3kA\item + autocmd FileType tex inoremap ;li \item + autocmd FileType tex inoremap ;ref \ref{}<++>T{i + autocmd FileType tex inoremap ;tab \begin{tabular}<++>\end{tabular}<++>4kA{}i + autocmd FileType tex inoremap ;ot \begin{tableau}\inp{<++>}\const{<++>}<++><++>\end{tableau}<++>5kA{}i + autocmd FileType tex inoremap ;can \cand{}<++>T{i + autocmd FileType tex inoremap ;con \const{}<++>T{i + autocmd FileType tex inoremap ;v \vio{}<++>T{i + autocmd FileType tex inoremap ;a \href{}{<++>}<++>2T{i + autocmd FileType tex inoremap ;sc \textsc{}<++>T{i + autocmd FileType tex inoremap ;chap \chapter{}<++>2kf}i + autocmd FileType tex inoremap ;sec \section{}<++>2kf}i + autocmd FileType tex inoremap ;ssec \subsection{}<++>2kf}i + autocmd FileType tex inoremap ;sssec \subsubsection{}<++>2kf}i + autocmd FileType tex inoremap ;st F{i*f}i + autocmd FileType tex inoremap ;beg \begin{DELRN}<++>\end{DELRN}<++>4k0fR:MultipleCursorsFindDELRNc + autocmd FileType tex inoremap ;up /usepackageo\usepackage{}i + autocmd FileType tex nnoremap ;up /usepackageo\usepackage{}i + autocmd FileType tex inoremap ;tt \texttt{}<++>T{i + autocmd FileType tex inoremap ;bt {\blindtext} + autocmd FileType tex inoremap ;nu $\varnothing$ + autocmd FileType tex inoremap ;col \begin{columns}[T]\begin{column}{.5\textwidth}\end{column}\begin{column}{.5\textwidth}<++>\end{column}\end{columns}5kA + autocmd FileType tex inoremap ;rn (\ref{})<++>F}i + +"""LATEX Logical symbols + autocmd FileType tex inoremap ;m $$<++>2T$i + autocmd FileType tex inoremap ;M $$$$<++>2k$hi + autocmd FileType tex inoremap ;neg {\neg} + autocmd FileType tex inoremap ;V {\vee} + autocmd FileType tex inoremap ;or {\vee} + autocmd FileType tex inoremap ;L {\wedge} + autocmd FileType tex inoremap ;and {\wedge} + autocmd FileType tex inoremap ;ra {\rightarrow} + autocmd FileType tex inoremap ;la {\leftarrow} + autocmd FileType tex inoremap ;lra {\leftrightarrow} + autocmd FileType tex inoremap ;fa {\forall} + autocmd FileType tex inoremap ;ex {\exists} + autocmd FileType tex inoremap ;dia {\Diamond} + autocmd FileType tex inoremap ;box {\Box} + autocmd FileType tex inoremap ;gt {\textgreater} + autocmd FileType tex inoremap ;lt {\textless} +"""LaTeX Linguistics Shortcuts + autocmd Filetype tex inoremap ;nom {\textsc{nom}} + autocmd FileType tex inoremap ;acc {\textsc{acc}} + autocmd FileType tex inoremap ;dat {\textsc{dat}} + autocmd FileType tex inoremap ;gen {\textsc{gen}} + autocmd FileType tex inoremap ;abl {\textsc{abl}} + autocmd FileType tex inoremap ;voc {\textsc{voc}} + autocmd FileType tex inoremap ;loc {\textsc{loc}} + autocmd Filetype tex inoremap ;inst {\textsc{inst}} + autocmd FileType tex inoremap ;tipa \textipa{}<++>T{i + +"For Indo-European +"autocmd FileType tex inoremap ;dh d\textsuperscript{h} +"autocmd FileType tex inoremap ;bh b\textsuperscript{h} +"autocmd FileType tex inoremap ;gh g\textsuperscript{h} +"autocmd FileType tex inoremap ;gwh g\textsuperscript{hw} +"autocmd FileType tex inoremap ;kw k\textsuperscript{w} +"autocmd FileType tex inoremap ;gw g\textsuperscript{w} +"autocmd FileType tex inoremap ;h1 {h\textsubscript{1}} +"autocmd FileType tex inoremap ;h2 {h\textsubscript{2}} +"autocmd FileType tex inoremap ;h3 {h\textsubscript{3}} +"autocmd FileType tex inoremap ;h4 {h\textsubscript{4}} + + +"""PHP +autocmd FileType php,html inoremap ;b <++>FbT>i +autocmd FileType php,html inoremap ;i <++>FeT>i +autocmd FileType php,html inoremap ;h1

<++>2kf<++>2kf<++>2kf

<++>02kf>a +autocmd FileType php,html inoremap ;a href=""><++><++>14hi +autocmd FileType php,html inoremap ;e target="_blank"href=""><++><++>14hi +autocmd FileType php,html inoremap ;ul
<++>03kfo
  • F>a +autocmd FileType php,html inoremap ;ol
    <++>03kfclass="image">href="pix/<++>">src="pix/<++>"width="<++>"><++>4kf>a +autocmd FileType php,html inoremap ;td <++>Fdcit +autocmd FileType php,html inoremap ;tr <++>kf<++>Fhcit +autocmd FileType php,html inoremap ;tab
    O +autocmd FileType php,html inoremap ;gr F>a +autocmd FileType php,html inoremap ;rd F>a +autocmd FileType php,html inoremap ;yl F>a +autocmd FileType php,html inoremap ;dt
    <++>
    <++>2kcit +autocmd FileType php,html inoremap ;dl
    <++>3kcc +"autocmd FileType php,html inoremap -- – +"autocmd FileType php,html inoremap --- — + + +""".bib +autocmd FileType bib inoremap ;a @article{author="<++>",year="<++>",title="<++>",journal="<++>",volume="<++>",pages="<++>",}<++>8kA,i +autocmd FileType bib inoremap ;b @book{author="<++>",year="<++>",title="<++>",publisher="<++>",}<++>6kA,i +autocmd FileType bib inoremap ;c @incollection{author="<++>",title="<++>",booktitle="<++>",editor="<++>",year="<++>",publisher="<++>",}<++>8kA,i + +"MARKDOWN + autocmd Filetype markdown,rmd inoremap ;n --- + autocmd Filetype markdown,rmd inoremap ;b ****<++>F*hi + autocmd Filetype markdown,rmd inoremap ;s ~~~~<++>F~hi + autocmd Filetype markdown,rmd inoremap ;e **<++>F*i + autocmd Filetype markdown,rmd inoremap ;h ====<++>F=hi + autocmd Filetype markdown,rmd inoremap ;i ![](<++>)<++>F[a + autocmd Filetype markdown,rmd inoremap ;a [](<++>)<++>F[a + autocmd Filetype markdown,rmd inoremap ;1 #<++>kA + autocmd Filetype markdown,rmd inoremap ;2 ##<++>kA + autocmd Filetype markdown,rmd inoremap ;3 ###<++>kA + autocmd Filetype markdown,rmd inoremap ;l -------- + autocmd Filetype markdown map :!pandoc%-o%.pdf + autocmd Filetype rmd map :!echo"require(rmarkdown);render('%')"\|R--vanilla + autocmd Filetype rmd inoremap ;r ```{r,echo=TRUE}```2kO + +""".xml +"autocmd FileType xml inoremap ;e <++>:put=strftime('%c')A<++><++> +autocmd FileType xml inoremap ;e <++>:put=strftime('%c')A<++>]]>5kcit +autocmd FileType xml inoremap ;a <++><++>F"ci" + +"Insert the time: + noremap ;time :put=strftime('%c') + inoremap ;time :put=strftime('%c') + + +vmap ++ VMATH_YankAndAnalyse() +nmap ++ vip++ + +vnoremap K xkP`[V`] +vnoremap J xp`[V`] +vnoremap L >gv +vnoremap H