From fe22a1e23348e266b77aa65d0ce63e19e74c604e Mon Sep 17 00:00:00 2001 From: Luke Date: Sun, 21 Jan 2018 19:44:23 -0700 Subject: [PATCH] vimrc additions and deadkeys --- .vim/luke/deadkeys.vim | 136 ++++++++++++++++++++++ .vim/luke/ipa.vim | 257 +++++++++++++++++++++++++++++++++++++++++ .vimrc | 135 ++++++++++------------ 3 files changed, 456 insertions(+), 72 deletions(-) create mode 100644 .vim/luke/deadkeys.vim create mode 100644 .vim/luke/ipa.vim diff --git a/.vim/luke/deadkeys.vim b/.vim/luke/deadkeys.vim new file mode 100644 index 0000000..87ca321 --- /dev/null +++ b/.vim/luke/deadkeys.vim @@ -0,0 +1,136 @@ +let g:DeadKeysOn=0 + +function! ToggleDeadKeys() + if !g:DeadKeysOn + call DeadKeys() + else + call DeadKeysOff() + endif +endfunction + +function! DeadKeys() + echo "Dead Keys: On" + let g:DeadKeysOn=1 + " grave accents + imap `a à + imap `e è + imap `i ì + imap `o ò + imap `u ù + imap `A À + imap `E È + imap `I Ì + imap `O Ò + imap `U Ù + imap ` ` + + " umlaut + imap "a ä + imap "e ë + imap "i ï + imap "o ö + imap "u ü + imap "A Ä + imap "E Ë + imap "I Ï + imap "O Ö + imap "U Ü + imap " " + + " macrons + imap :a ā + imap :e ē + imap :i ī + imap :o ō + imap :u ū + imap :A Ā + imap :E Ē + imap :I Ī + imap :O Ō + imap :U Ū + + " acute accents + imap 'a á + imap 'A Á + imap 'C Ć + imap 'c ć + imap 'e é + imap 'E É + imap 'i í + imap 'I Í + imap 'N Ń + imap 'n ń + imap 'o ó + imap 'R Ŕ + imap 'r ŕ + imap 'S Ś + imap 's ś + imap 'O Ó + imap 'u ú + imap 'U Ú + imap ' ' +endfunction "deadkeys() + +function! DeadKeysOff() + echo "Dead Keys: Off" + let g:DeadKeysOn=0 + + " unmapping graves + iunmap `a + iunmap `e + iunmap `i + iunmap `o + iunmap `u + iunmap `A + iunmap `E + iunmap `I + iunmap `O + iunmap `U + iunmap ` + + " unmapping umlauts + iunmap "a + iunmap "e + iunmap "i + iunmap "o + iunmap "u + iunmap "A + iunmap "E + iunmap "I + iunmap "O + iunmap "U + iunmap " + + " unmapping macrons + iunmap :a + iunmap :e + iunmap :i + iunmap :o + iunmap :u + iunmap :A + iunmap :E + iunmap :I + iunmap :O + iunmap :U + + " unmapping acutes + iunmap 'a + iunmap 'A + iunmap 'C + iunmap 'c + iunmap 'e + iunmap 'E + iunmap 'i + iunmap 'I + iunmap 'N + iunmap 'n + iunmap 'o + iunmap 'R + iunmap 'r + iunmap 'S + iunmap 's + iunmap 'O + iunmap 'u + iunmap 'U + iunmap ' +endfunction diff --git a/.vim/luke/ipa.vim b/.vim/luke/ipa.vim new file mode 100644 index 0000000..c6cb509 --- /dev/null +++ b/.vim/luke/ipa.vim @@ -0,0 +1,257 @@ +"m̥ + +"ɱ + +"n̼ + +"n̥ + +"ɳ̊ + +"ɳ + +inoremap ;nn ɲ̊ + +inoremap ;gn ɲ + +"ŋ̊ + +inoremap ;ng ŋ + +"ɴ + +"p̪ + +"b̪ + +"t̼ + +"d̼ + +"ʈ + +"ɖ + +"ɟ + +"ɡ + +"ɢ + +"ʡ + +inoremap ;' ʔ + +inoremap ;sh ʃ + +inoremap ;zh ʒ + +"ʂ + +"ʐ + +inoremap ;xi ɕ + +inoremap ;zi ʑ + +inoremap ;ph ɸ + +inoremap ;bh β + +"θ̼ + +"ð̼ + +inoremap ;th θ + +inoremap ;dh ð + +"θ̠ + +"ð̠ + +"ɹ̠̊ + +"ɹ̠ + +"ɻ + +inoremap ;cc ç + +inoremap ;jj ʝ + +inoremap ;gh ɣ + +inoremap ;xx χ + +inoremap ;fr ʁ + +inoremap ;HH ħ + +"ʕ + +"ʢ + +inoremap ;hh ɦ + +"ʋ̥ + +inoremap ;vv ʋ + +"ɹ̥ + +inoremap ;er ɹ + +"ɻ̊ + +"ɻ + +"j̊ + +"ɰ̊ + +"ɰ + +"ʔ̞ + +"ⱱ̟ + +"ⱱ + +"ɾ̼ + +"ɾ̥ + +inoremap ;fl ɾ + +"ɽ̊ + +"ɽ + +"ɢ̆ + +"ʡ̮ + +"ʙ̥ + +inoremap ;bb ʙ + +"r̼ + +"r̥ + +"ɽ̊ + +"ɽ + +"ʀ̥ + +"ʀ + +"ʜ + +"ʢ + +"ɬ + +"ɮ + +"ɭ̊ + +"ʎ̥ + +"ʎ̝ + +"ʟ̝̊ + +"ʟ̝ + +"l̥ + +"ɭ̊ + +"ɭ + +"ʎ̥ + +"ʎ + +"ʟ̥ + +"ʟ + +"ʟ̠ + +"ɺ + +"ɺ̢ + +"ʎ̮ + +"ʟ̆ + +inoremap ;ih ɨ + +"ʉ + +"ɯ + +inoremap ;ii ɪ + +"ʏ + +"ɪ̈ + +"ʊ̈ + +inoremap ;eu ɯ̽ + +inoremap ;uu ʊ + +"ø + +"ɘ + +"ɵ + +"ɤ + +"e̞ + +"ø̞ + +inoremap ;uh ə + +"ɵ̞ + +"ɤ̞ + +"o̞ + +inoremap ;eh ɛ + +inoremap ;oe œ + +"ɜ + +"ɞ + +"ʌ + +inoremap ;au ɔ + +inoremap ;ae æ + +inoremap ;aa ɐ + +"ɞ̞ + +inoremap ;OE ɶ + +"ä + +"ɒ̈ + +inoremap ;ah ɑ + +inoremap ;ba ɒ diff --git a/.vimrc b/.vimrc index dce8cbb..d742574 100644 --- a/.vimrc +++ b/.vimrc @@ -1,3 +1,9 @@ +" _ _ ____ _ _ _ _ _ +" | | _ _| | _____ / ___| _ __ ___ (_) |_| |__ ( )___ __ _(_)_ __ ___ _ __ ___ +" | | | | | | |/ / _ \ \___ \| '_ ` _ \| | __| '_ \|// __| \ \ / / | '_ ` _ \| '__/ __| +" | |__| |_| | < __/ ___) | | | | | | | |_| | | | \__ \ \ V /| | | | | | | | | (__ +" |_____\__,_|_|\_\___| |____/|_| |_| |_|_|\__|_| |_| |___/ \_/ |_|_| |_| |_|_| \___| + " Load Pathogen for plugins: execute pathogen#infect() execute pathogen#helptags() @@ -5,45 +11,49 @@ " Some basics: set nocompatible filetype plugin on - "colorscheme wal syntax on + "colorscheme wal set encoding=utf-8 set number - set relativenumber + "set relativenumber -"au BufWinLeave * mkview -"au BufWinEnter * silent loadview -let g:instant_markdown_autostart = 0 +"For saving view folds: + "au BufWinLeave * mkview + "au BufWinEnter * silent loadview 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: +" Make calcurse notes markdown compatible: autocmd BufRead,BufNewFile /tmp/calcurse*,~/.calcurse/notes/* set filetype=markdown -"Spell-check set to F6: +" Spell-check set to F6: map :setlocal spell! spelllang=en_us,es -"Toggle DeadKeys set to F7 (for accent marks): +" 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: +" Goyo plugin makes text more readable when writing prose: map :Goyo inoremap :Goyoa -"Enable Goyo by default for mutt writting +" Source my IPA shorcuts: + so ~/.vim/luke/ipa.vim + +" Enable Goyo by default for mutt writting autocmd BufRead,BufNewFile /tmp/neomutt* let g:goyo_width=72 autocmd BufRead,BufNewFile /tmp/neomutt* :Goyo + " Goyo's width will be the line limit in mutt. -"Enable autocompletion: +" Enable autocompletion: set wildmode=longest,list,full set wildmenu -"Automatically deletes all tralling whitespace on save. +" 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: +" 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. @@ -55,18 +65,22 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd "Copy selected text to system clipboard (requires gvim installed): vnoremap "+y -"C-T for new tab +" Disables automatic commenting on newline: + autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o + +" C-T for new tab nnoremap :tabnew -"""BASIC TOOLS -"Navigating with guides +" 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) + +" 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 @@ -84,8 +98,8 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd 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% + 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 @@ -93,9 +107,6 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd 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 @@ -154,49 +165,36 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd 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 --- — + 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 + 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 --- @@ -215,14 +213,9 @@ autocmd FileType bib inoremap ;c @incollection{author="<++> 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') - + "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" vmap ++ VMATH_YankAndAnalyse() nmap ++ vip++ @@ -231,5 +224,3 @@ vnoremap K xkP`[V`] vnoremap J xp`[V`] vnoremap L >gv vnoremap H