vimrc additions and deadkeys

This commit is contained in:
Luke 2018-01-21 19:44:23 -07:00
parent a977b8b5f5
commit fe22a1e233
3 changed files with 456 additions and 72 deletions

136
.vim/luke/deadkeys.vim Normal file
View file

@ -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 `<space> `
" umlaut
imap "a ä
imap "e ë
imap "i ï
imap "o ö
imap "u ü
imap "A Ä
imap "E Ë
imap "I Ï
imap "O Ö
imap "U Ü
imap "<space> "
" 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 '<space> '
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 `<space>
" unmapping umlauts
iunmap "a
iunmap "e
iunmap "i
iunmap "o
iunmap "u
iunmap "A
iunmap "E
iunmap "I
iunmap "O
iunmap "U
iunmap "<space>
" 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 '<space>
endfunction

257
.vim/luke/ipa.vim Normal file
View file

@ -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 ɒ

49
.vimrc
View file

@ -1,3 +1,9 @@
" _ _ ____ _ _ _ _ _
" | | _ _| | _____ / ___| _ __ ___ (_) |_| |__ ( )___ __ _(_)_ __ ___ _ __ ___
" | | | | | | |/ / _ \ \___ \| '_ ` _ \| | __| '_ \|// __| \ \ / / | '_ ` _ \| '__/ __|
" | |__| |_| | < __/ ___) | | | | | | | |_| | | | \__ \ \ V /| | | | | | | | | (__
" |_____\__,_|_|\_\___| |____/|_| |_| |_|_|\__|_| |_| |___/ \_/ |_|_| |_| |_|_| \___|
" Load Pathogen for plugins: " Load Pathogen for plugins:
execute pathogen#infect() execute pathogen#infect()
execute pathogen#helptags() execute pathogen#helptags()
@ -5,15 +11,15 @@
" Some basics: " Some basics:
set nocompatible set nocompatible
filetype plugin on filetype plugin on
"colorscheme wal
syntax on syntax on
"colorscheme wal
set encoding=utf-8 set encoding=utf-8
set number set number
set relativenumber "set relativenumber
"For saving view folds:
"au BufWinLeave * mkview "au BufWinLeave * mkview
"au BufWinEnter * silent loadview "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 let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markdown', '.markdown': 'markdown', '.mdown': 'markdown'} "Interpret .md files, etc. as .markdown
@ -31,9 +37,13 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd
map <F10> :Goyo<CR> map <F10> :Goyo<CR>
inoremap <F10> <esc>:Goyo<CR>a inoremap <F10> <esc>:Goyo<CR>a
" Source my IPA shorcuts:
so ~/.vim/luke/ipa.vim
" Enable Goyo by default for mutt writting " Enable Goyo by default for mutt writting
autocmd BufRead,BufNewFile /tmp/neomutt* let g:goyo_width=72 autocmd BufRead,BufNewFile /tmp/neomutt* let g:goyo_width=72
autocmd BufRead,BufNewFile /tmp/neomutt* :Goyo 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 wildmode=longest,list,full
@ -55,18 +65,22 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd
"Copy selected text to system clipboard (requires gvim installed): "Copy selected text to system clipboard (requires gvim installed):
vnoremap <C-c> "+y vnoremap <C-c> "+y
" Disables automatic commenting on newline:
autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
" C-T for new tab " C-T for new tab
nnoremap <C-t> :tabnew<cr> nnoremap <C-t> :tabnew<cr>
"""BASIC TOOLS
" Navigating with guides " Navigating with guides
inoremap <Space><Tab> <Esc>/<++><Enter>"_c4l inoremap <Space><Tab> <Esc>/<++><Enter>"_c4l
vnoremap <Space><Tab> <Esc>/<++><Enter>"_c4l vnoremap <Space><Tab> <Esc>/<++><Enter>"_c4l
map <Space><Tab> <Esc>/<++><Enter>"_c4l map <Space><Tab> <Esc>/<++><Enter>"_c4l
inoremap ;gui <++> 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 <Esc> inoremap jw <Esc>
inoremap wj <Esc> inoremap wj <Esc>
"Shortcutting split navigation, saving a keypress: "Shortcutting split navigation, saving a keypress:
map <C-h> <C-w>h map <C-h> <C-w>h
map <C-j> <C-w>j map <C-j> <C-w>j
@ -84,8 +98,8 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd
autocmd FileType tex map <F3> :w !detex \| wc -w<CR> autocmd FileType tex map <F3> :w !detex \| wc -w<CR>
autocmd FileType tex inoremap <F3> <Esc>:w !detex \| wc -w<CR> autocmd FileType tex inoremap <F3> <Esc>:w !detex \| wc -w<CR>
" Compile document using xelatex: " Compile document using xelatex:
autocmd FileType tex inoremap <F5> <Esc>:!xelatex<spacE><c-r>%<Enter>a autocmd FileType tex inoremap <F5> <Esc>:!xelatex<space><c-r>%<Enter>a
autocmd FileType tex nnoremap <F5> :!xelatex<spacE><c-r>%<Enter> autocmd FileType tex nnoremap <F5> :!xelatex<space><c-r>%<Enter>
" Code snippets " Code snippets
autocmd FileType tex inoremap ;fr \begin{frame}<Enter>\frametitle{}<Enter><Enter><++><Enter><Enter>\end{frame}<Enter><Enter><++><Esc>6kf}i autocmd FileType tex inoremap ;fr \begin{frame}<Enter>\frametitle{}<Enter><Enter><++><Enter><Enter>\end{frame}<Enter><Enter><++><Esc>6kf}i
autocmd FileType tex inoremap ;fi \begin{fitch}<Enter><Enter>\end{fitch}<Enter><Enter><++><Esc>3kA autocmd FileType tex inoremap ;fi \begin{fitch}<Enter><Enter>\end{fitch}<Enter><Enter><++><Esc>3kA
@ -93,9 +107,6 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd
autocmd FileType tex inoremap ;em \emph{}<++><Esc>T{i autocmd FileType tex inoremap ;em \emph{}<++><Esc>T{i
autocmd FileType tex inoremap ;bf \textbf{}<++><Esc>T{i autocmd FileType tex inoremap ;bf \textbf{}<++><Esc>T{i
autocmd FileType tex vnoremap ; <ESC>`<i\{<ESC>`>2la}<ESC>?\\{<Enter>a autocmd FileType tex vnoremap ; <ESC>`<i\{<ESC>`>2la}<ESC>?\\{<Enter>a
"autocmd FileType tex vnoremap : <ESC>`<i{\<ESC>`>2la}<ESC>?{\\<Enter>la
autocmd FileType tex inoremap {{ <Esc>F{i
autocmd FileType tex inoremap }} <Esc>f}a
autocmd FileType tex inoremap ;it \textit{}<++><Esc>T{i autocmd FileType tex inoremap ;it \textit{}<++><Esc>T{i
autocmd FileType tex inoremap ;ct \textcite{}<++><Esc>T{i autocmd FileType tex inoremap ;ct \textcite{}<++><Esc>T{i
autocmd FileType tex inoremap ;cp \parencite{}<++><Esc>T{i autocmd FileType tex inoremap ;cp \parencite{}<++><Esc>T{i
@ -154,19 +165,6 @@ let g:vimwiki_ext2syntax = {'.Rmd': 'markdown', '.rmd': 'markdown','.md': 'markd
autocmd Filetype tex inoremap ;inst {\textsc{inst}} autocmd Filetype tex inoremap ;inst {\textsc{inst}}
autocmd FileType tex inoremap ;tipa \textipa{}<Space><++><Esc>T{i autocmd FileType tex inoremap ;tipa \textipa{}<Space><++><Esc>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 """PHP
autocmd FileType php,html inoremap ;b <b></b><Space><++><Esc>FbT>i autocmd FileType php,html inoremap ;b <b></b><Space><++><Esc>FbT>i
autocmd FileType php,html inoremap ;i <em></em><Space><++><Esc>FeT>i autocmd FileType php,html inoremap ;i <em></em><Space><++><Esc>FeT>i
@ -219,11 +217,6 @@ autocmd FileType bib inoremap ;c @incollection{<Enter>author<Space>=<Space>"<++>
autocmd FileType xml inoremap ;e <item><Enter><title><++></title><Enter><pubDate><Esc>:put<Space>=strftime('%c')<Enter>A</pubDate><Enter><link><++></link><Enter><description><![CDATA[<++>]]></description><Enter></item><Esc>5kcit autocmd FileType xml inoremap ;e <item><Enter><title><++></title><Enter><pubDate><Esc>:put<Space>=strftime('%c')<Enter>A</pubDate><Enter><link><++></link><Enter><description><![CDATA[<++>]]></description><Enter></item><Esc>5kcit
autocmd FileType xml inoremap ;a <a href="<++>"><++></a><++><Esc>F"ci" autocmd FileType xml inoremap ;a <a href="<++>"><++></a><++><Esc>F"ci"
"Insert the time:
noremap ;time :put<Space>=strftime('%c')<Enter>
inoremap ;time <esc>:put<Space>=strftime('%c')<Enter>
vmap <expr> ++ VMATH_YankAndAnalyse() vmap <expr> ++ VMATH_YankAndAnalyse()
nmap ++ vip++ nmap ++ vip++
@ -231,5 +224,3 @@ vnoremap K xkP`[V`]
vnoremap J xp`[V`] vnoremap J xp`[V`]
vnoremap L >gv vnoremap L >gv
vnoremap H <gv vnoremap H <gv
so ~/.vim/luke/ipa.vim