summaryrefslogtreecommitdiff
path: root/.vim
diff options
context:
space:
mode:
authorUrbain Vaes <urbain@vaes.uk>2015-08-08 20:08:42 +0200
committerUrbain Vaes <urbain@vaes.uk>2015-08-08 20:08:42 +0200
commit8df9472e0cdbab0d12211c2bc77918e8f515c409 (patch)
treef420b705adfec42bb33191c44c8fe252fca0f785 /.vim
parentb8a9b07b741cddbf6e0476e70c94aa186d62b6ae (diff)
Improve installation and organization
Diffstat (limited to '.vim')
-rw-r--r--.vim/after/ftplugin/tex/folding.vim0
-rw-r--r--.vim/after/ftplugin/tex/mappings.vim59
-rw-r--r--.vim/after/ftplugin/tex/unilatex.vim675
-rw-r--r--.vim/after/ftplugin/vim/folding.vim25
-rw-r--r--.vim/after/syntax/cpp.vim3
-rw-r--r--.vim/after/syntax/cpp.vim~0
-rw-r--r--.vim/after/syntax/tex.vim6
-rw-r--r--.vim/after/syntax/tex.vim~6
-rw-r--r--.vim/colors/mine.vim29
-rw-r--r--.vim/colors/mine.vim~29
-rw-r--r--.vim/mySnippets/all.snippets25
-rw-r--r--.vim/mySnippets/cpp.snippets35
-rw-r--r--.vim/mySnippets/mail.snippets33
-rw-r--r--.vim/mySnippets/python.snippets4
-rw-r--r--.vim/mySnippets/tex.snippets110
-rw-r--r--.vim/mySnippets/vim.snippets0
-rw-r--r--.vim/spell/en.utf-8.add28
-rw-r--r--.vim/spell/en.utf-8.add.splbin0 -> 462 bytes
-rw-r--r--.vim/spell/en.utf-8.splbin0 -> 570549 bytes
-rw-r--r--.vim/spell/en.utf-8.sugbin0 -> 556477 bytes
-rw-r--r--.vim/vimrc314
21 files changed, 1381 insertions, 0 deletions
diff --git a/.vim/after/ftplugin/tex/folding.vim b/.vim/after/ftplugin/tex/folding.vim
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.vim/after/ftplugin/tex/folding.vim
diff --git a/.vim/after/ftplugin/tex/mappings.vim b/.vim/after/ftplugin/tex/mappings.vim
new file mode 100644
index 0000000..e7dd610
--- /dev/null
+++ b/.vim/after/ftplugin/tex/mappings.vim
@@ -0,0 +1,59 @@
+inoremap <buffer> (( \left(
+inoremap <buffer> )) \right)
+inoremap <buffer> {{ \left\{
+inoremap <buffer> }} \right\}
+inoremap <buffer> [[ \left[
+inoremap <buffer> ]] \right]
+inoremap <buffer> == \,=\,
+inoremap <buffer> >> \,\geq\,
+inoremap <buffer> << \,\leq\,
+inoremap <buffer> ++ \,+\,
+inoremap <buffer> -- \,-\,
+
+iabbrev <buffer> ga \alpha
+iabbrev <buffer> gb \beta
+iabbrev <buffer> gg \gamma
+iabbrev <buffer> gd \delta
+iabbrev <buffer> ge \varepsilon
+iabbrev <buffer> gz \zeta
+iabbrev <buffer> gh \eta
+iabbrev <buffer> gt \theta
+iabbrev <buffer> gi \iota
+iabbrev <buffer> gk \kappa
+iabbrev <buffer> gl \lambda
+iabbrev <buffer> gm \mu
+iabbrev <buffer> gn \nu
+iabbrev <buffer> gx \xi
+iabbrev <buffer> gr \rho
+iabbrev <buffer> gs \sigma
+iabbrev <buffer> gf \phi
+iabbrev <buffer> gp \pi
+iabbrev <buffer> gw \omega
+iabbrev <buffer> dd \d
+
+" function! SynctexShow()
+" let synctex = glob("*.synctex.gz")
+" if strlen(synctex) == 0
+" echom "no synctex file found"
+" else
+" let pdffile = substitute(synctex,"synctex.gz","pdf","")
+" let execline = printf(":!zathura --synctex-forward %d:%d:%s %s", line('.'), col('.'), shellescape(bufname("%")), shellescape(pdffile))
+" exec execline
+" end
+" endfunction
+
+" nnoremap <buffer> <LocalLeader>a :call SynctexShow()<CR><CR>
+" nnoremap <buffer> <LocalLeader>i :Latexmk<CR>
+" nnoremap <buffer> <LocalLeader>e :LatexErrors<CR>
+" nnoremap <buffer> <LocalLeader>o :LatexView<CR>
+" noremap <buffer> <LocalLeader>k :LatexmkStop<CR>:LatexmkClean<CR>
+" nnoremap <buffer> <LocalLeader>h :split header.sty<CR>
+
+
+nnoremap <buffer> <LocalLeader>i :VimtexCompile<CR>
+nnoremap <buffer> <LocalLeader>e :VimtexErrors<CR>
+nnoremap <buffer> <LocalLeader>o :VimtexView<CR>
+nnoremap <buffer> <LocalLeader>k :VimtexStop<CR>:VimtexClean<CR>
+nnoremap <buffer> <LocalLeader>t :VimtexTocToggle<CR>
+nnoremap <buffer> <LocalLeader>h :split header.sty<CR>
+nnoremap <buffer> <LocalLeader>h :split header.sty<CR>
diff --git a/.vim/after/ftplugin/tex/unilatex.vim b/.vim/after/ftplugin/tex/unilatex.vim
new file mode 100644
index 0000000..69358fc
--- /dev/null
+++ b/.vim/after/ftplugin/tex/unilatex.vim
@@ -0,0 +1,675 @@
+function! UTF8toLaTeX()
+ " store cursor position
+ let s:line = line(".")
+ let s:column = col(".")
+ silent %s/α/\\alpha/eg
+ silent %s/β/\\beta/eg
+ silent %s/γ/\\gamma/eg
+ silent %s/δ/\\delta/eg
+ silent %s/∊/\\epsilon/eg
+ silent %s/ε/\\varepsilon/eg
+ silent %s/ζ/\\zeta/eg
+ silent %s/η/\\eta/eg
+ silent %s/θ/\\theta/eg
+ silent %s/ϑ/\\vartheta/eg
+ silent %s/ι/\\iota/eg
+ silent %s/κ/\\kappa/eg
+ silent %s/λ/\\lambda/eg
+ silent %s/μ/\\mu/eg
+ silent %s/ν/\\nu/eg
+ silent %s/ξ/\\xi/eg
+ silent %s/π/\\pi/eg
+ silent %s/ϖ/\\varpi/eg
+ silent %s/ρ/\\rho/eg
+ silent %s/ϱ/\\varrho/eg
+ silent %s/σ/\\sigma/eg
+ silent %s/ς/\\varsigma/eg
+ silent %s/τ/\\tau/eg
+ silent %s/υ/\\upsilon/eg
+ silent %s/φ/\\phi/eg
+ silent %s/ϕ/\\varphi/eg
+ silent %s/χ/\\chi/eg
+ silent %s/ψ/\\psi/eg
+ silent %s/ω/\\omega/eg
+ silent %s/Γ/\\Gamma/eg
+ silent %s/Δ/\\Delta/eg
+ silent %s/Θ/\\Theta/eg
+ silent %s/Λ/\\Lambda/eg
+ silent %s/Ξ/\\Xi/eg
+ silent %s/Π/\\Pi/eg
+ silent %s/Υ/\\Upsilon/eg
+ silent %s/Φ/\\Phi/eg
+ silent %s/Ψ/\\Psi/eg
+ silent %s/Ω/\\Omega/eg
+ silent %s/≤/\\leq/eg
+ silent %s/≪/\\ll/eg
+ silent %s/≺/\\prec/eg
+ silent %s/≼/\\preceq/eg
+ silent %s/⊂/\\subset/eg
+ silent %s/⊆/\\subseteq/eg
+ silent %s/⊏/\\sqsubset/eg
+ silent %s/⊑/\\sqsubseteq/eg
+ silent %s/∈/\\in/eg
+ silent %s/⊢/\\vdash/eg
+ silent %s/∣/\\mid/eg
+ silent %s/⌣/\\smile/eg
+ silent %s/≥/\\geq/eg
+ silent %s/≫/\\gg/eg
+ silent %s/≻/\\succ/eg
+ silent %s/≽/\\succeq/eg
+ silent %s/⊃/\\supset/eg
+ silent %s/⊇/\\supseteq/eg
+ silent %s/⊐/\\sqsupset/eg
+ silent %s/⊒/\\sqsupseteq/eg
+ silent %s/∋/\\ni/eg
+ silent %s/⊣/\\dashv/eg
+ silent %s/∥/\\parallel/eg
+ silent %s/⌢/\\frown/eg
+ silent %s/∉/\\notin/eg
+ silent %s/≡/\\equiv/eg
+ silent %s/≐/\\doteq/eg
+ silent %s/∼/\\sim/eg
+ silent %s/≃/\\simeq/eg
+ silent %s/≈/\\approx/eg
+ silent %s/≅/\\cong/eg
+ silent %s/⋈/\\Join/eg
+ silent %s/⋈/\\bowtie/eg
+ silent %s/∝/\\propto/eg
+ silent %s/⊨/\\models/eg
+ silent %s/⊥/\\perp/eg
+ silent %s/≍/\\asymp/eg
+ silent %s/≠/\\neq/eg
+ silent %s/±/\\pm/eg
+ silent %s/⋅/\\cdot/eg
+ silent %s/×/\\times/eg
+ silent %s/∪/\\cup/eg
+ silent %s/⊔/\\sqcup/eg
+ silent %s/∨/\\vee/eg
+ silent %s/⊕/\\oplus/eg
+ silent %s/⊙/\\odot/eg
+ silent %s/⊗/\\otimes/eg
+ silent %s/△/\\bigtriangleup/eg
+ silent %s/⊲/\\lhd/eg
+ silent %s/⊴/\\unlhd/eg
+ silent %s/∓/\\mp/eg
+ silent %s/÷/\\div/eg
+ silent %s/∖/\\setminus/eg
+ silent %s/∩/\\cap/eg
+ silent %s/⊓/\\sqcap/eg
+ silent %s/∧/\\wedge/eg
+ silent %s/⊖/\\ominus/eg
+ silent %s/⊘/\\oslash/eg
+ silent %s/○/\\bigcirc/eg
+ silent %s/▽/\\bigtriangledown/eg
+ silent %s/⊳/\\rhd/eg
+ silent %s/⊵/\\unrhd/eg
+ silent %s/◁/\\triangleleft/eg
+ silent %s/▷/\\triangleright/eg
+ silent %s/⋆/\\star/eg
+ silent %s/∗/\\ast/eg
+ silent %s/∘/\\circ/eg
+ silent %s/∙/\\bullet/eg
+ silent %s/⋄/\\diamond/eg
+ silent %s/⊎/\\uplus/eg
+ silent %s/†/\\dagger/eg
+ silent %s/‡/\\ddagger/eg
+ silent %s/≀/\\wr/eg
+ silent %s/∑/\\sum/eg
+ silent %s/∏/\\prod/eg
+ silent %s/∐/\\coprod/eg
+ silent %s/∫/\\int/eg
+ silent %s/⋃/\\bigcup/eg
+ silent %s/⋂/\\bigcap/eg
+ silent %s/⊔/\\bigsqcup/eg
+ silent %s/∮/\\oint/eg
+ silent %s/⋁/\\bigvee/eg
+ silent %s/⋀/\\bigwedge/eg
+ silent %s/⊕/\\bigoplus/eg
+ silent %s/⊗/\\bigotimes/eg
+ silent %s/⊙/\\bigodot/eg
+ silent %s/⊎/\\biguplus/eg
+ silent %s/←/\\leftarrow/eg
+ silent %s/→/\\rightarrow/eg
+ silent %s/↔/\\leftrightarrow/eg
+ silent %s/⇐/\\Leftarrow/eg
+ silent %s/⇒/\\Rightarrow/eg
+ silent %s/⇔/\\Leftrightarrow/eg
+ silent %s/↦/\\mapsto/eg
+ silent %s/↩/\\hookleftarrow/eg
+ silent %s/↼/\\leftharpoonup/eg
+ silent %s/↽/\\leftharpoondown/eg
+ silent %s/↪/\\hookrightarrow/eg
+ silent %s/⇀/\\rightharpoonup/eg
+ silent %s/⇁/\\rightharpoondown/eg
+ silent %s/←/\\longleftarrow/eg
+ silent %s/→/\\longrightarrow/eg
+ silent %s/↔/\\longleftrightarrow/eg
+ silent %s/⇐/\\Longleftarrow/eg
+ silent %s/⇒/\\Longrightarrow/eg
+ silent %s/⇔/\\Longleftrightarrow/eg
+ silent %s/⇖/\\longmapsto/eg
+ silent %s/↑/\\uparrow/eg
+ silent %s/↓/\\downarrow/eg
+ silent %s/↕/\\updownarrow/eg
+ silent %s/⇑/\\Uparrow/eg
+ silent %s/⇓/\\Downarrow/eg
+ silent %s/⇕/\\Updownarrow/eg
+ silent %s/↗/\\nearrow/eg
+ silent %s/↘/\\searrow/eg
+ silent %s/↙/\\swarrow/eg
+ silent %s/↖/\\nwarrow/eg
+ silent %s/↝/\\leadsto/eg
+ silent %s/…/\\dots/eg
+ silent %s/⋯/\\cdots/eg
+ silent %s/⋮/\\vdots/eg
+ silent %s/⋱/\\ddots/eg
+ silent %s/ℏ/\\hbar/eg
+ silent %s/ℓ/\\ell/eg
+ silent %s/ℜ/\\Re/eg
+ silent %s/ℑ/\\Im/eg
+ silent %s/א/\\aleph/eg
+ silent %s/℘/\\wp/eg
+ silent %s/∀/\\forall/eg
+ silent %s/∃/\\exists/eg
+ silent %s/℧/\\mho/eg
+ silent %s/∂/\\partial/eg
+ silent %s/′/\\prime/eg
+ silent %s/∅/\\emptyset/eg
+ silent %s/∞/\\infty/eg
+ silent %s/∇/\\nabla/eg
+ silent %s/△/\\triangle/eg
+ silent %s/□/\\Box/eg
+ silent %s/◇/\\Diamond/eg
+ silent %s/⊥/\\bot/eg
+ silent %s/⊤/\\top/eg
+ silent %s/∠/\\angle/eg
+ silent %s/√/\\surd/eg
+ silent %s/♢/\\diamondsuit/eg
+ silent %s/♡/\\heartsuit/eg
+ silent %s/♣/\\clubsuit/eg
+ silent %s/♠/\\spadesuit/eg
+ silent %s/¬/\\neg/eg
+ silent %s/♭/\\flat/eg
+ silent %s/♮/\\natural/eg
+ silent %s/♯/\\sharp/eg
+ silent %s/Ϝ/\\digamma/eg
+ silent %s/ϰ/\\varkappa/eg
+ silent %s/ב/\\beth/eg
+ silent %s/ד/\\daleth/eg
+ silent %s/ג/\\gimel/eg
+ silent %s/⋖/\\lessdot/eg
+ silent %s/≤/\\leqslant/eg
+ silent %s/≦/\\leqq/eg
+ silent %s/⋘/\\lll/eg
+ silent %s/≲/\\lesssim/eg
+ silent %s/≶/\\lessgtr/eg
+ silent %s/⋚/\\lesseqgtr/eg
+ silent %s/≼/\\preccurlyeq/eg
+ silent %s/⋞/\\curlyeqprec/eg
+ silent %s/≾/\\precsim/eg
+ silent %s/⋐/\\Subset/eg
+ silent %s/⊏/\\sqsubset/eg
+ silent %s/∴/\\therefore/eg
+ silent %s/⌣/\\smallsmile/eg
+ silent %s/⊲/\\vartriangleleft/eg
+ silent %s/⊴/\\trianglelefteq/eg
+ silent %s/⋗/\\gtrdot/eg
+ silent %s/≧/\\geqq/eg
+ silent %s/⋙/\\ggg/eg
+ silent %s/≳/\\gtrsim/eg
+ silent %s/≷/\\gtrless/eg
+ silent %s/⋛/\\gtreqless/eg
+ silent %s/≽/\\succcurlyeq/eg
+ silent %s/⋟/\\curlyeqsucc/eg
+ silent %s/≿/\\succsim/eg
+ silent %s/⋑/\\Supset/eg
+ silent %s/⊐/\\sqsupset/eg
+ silent %s/∵/\\because/eg
+ silent %s/∥/\\shortparallel/eg
+ silent %s/⌢/\\smallfrown/eg
+ silent %s/⊳/\\vartriangleright/eg
+ silent %s/⊵/\\trianglerighteq/eg
+ silent %s/≑/\\doteqdot/eg
+ silent %s/≓/\\risingdotseq/eg
+ silent %s/≒/\\fallingdotseq/eg
+ silent %s/≖/\\eqcirc/eg
+ silent %s/≗/\\circeq/eg
+ silent %s/≜/\\triangleq/eg
+ silent %s/≏/\\bumpeq/eg
+ silent %s/≎/\\Bumpeq/eg
+ silent %s/∼/\\thicksim/eg
+ silent %s/≈/\\thickapprox/eg
+ silent %s/≊/\\approxeq/eg
+ silent %s/∽/\\backsim/eg
+ silent %s/⊨/\\vDash/eg
+ silent %s/⊩/\\Vdash/eg
+ silent %s/⊪/\\Vvdash/eg
+ silent %s/∍/\\backepsilon/eg
+ silent %s/∝/\\varpropto/eg
+ silent %s/≬/\\between/eg
+ silent %s/⋔/\\pitchfork/eg
+ silent %s/◀/\\blacktriangleleft/eg
+ silent %s/▷/\\blacktriangleright/eg
+ silent %s/⇠/\\dashleftarrow/eg
+ silent %s/⇇/\\leftleftarrows/eg
+ silent %s/⇆/\\leftrightarrows/eg
+ silent %s/⇚/\\Lleftarrow/eg
+ silent %s/↞/\\twoheadleftarrow/eg
+ silent %s/↢/\\leftarrowtail/eg
+ silent %s/⇋/\\leftrightharpoons/eg
+ silent %s/↰/\\Lsh/eg
+ silent %s/↫/\\looparrowleft/eg
+ silent %s/↶/\\curvearrowleft/eg
+ silent %s/↺/\\circlearrowleft/eg
+ silent %s/⇢/\\dashrightarrow/eg
+ silent %s/⇉/\\rightrightarrows/eg
+ silent %s/⇄/\\rightleftarrows/eg
+ silent %s/⇛/\\Rrightarrow/eg
+ silent %s/↠/\\twoheadrightarrow/eg
+ silent %s/↣/\\rightarrowtail/eg
+ silent %s/⇌/\\rightleftharpoons/eg
+ silent %s/↱/\\Rsh/eg
+ silent %s/↬/\\looparrowright/eg
+ silent %s/↷/\\curvearrowright/eg
+ silent %s/↻/\\circlearrowright/eg
+ silent %s/⊸/\\multimap/eg
+ silent %s/⇈/\\upuparrows/eg
+ silent %s/⇊/\\downdownarrows/eg
+ silent %s/↿/\\upharpoonleft/eg
+ silent %s/↾/\\upharpoonright/eg
+ silent %s/⇃/\\downharpoonleft/eg
+ silent %s/⇂/\\downharpoonright/eg
+ silent %s/⇝/\\rightsquigarrow/eg
+ silent %s/↭/\\leftrightsquigarrow/eg
+ silent %s/∔/\\dotplus/eg
+ silent %s/⋉/\\ltimes/eg
+ silent %s/⋓/\\Cup/eg
+ silent %s/⊻/\\veebar/eg
+ silent %s/⊞/\\boxplus/eg
+ silent %s/⊠/\\boxtimes/eg
+ silent %s/⋋/\\leftthreetimes/eg
+ silent %s/⋎/\\curlyvee/eg
+ silent %s/⋅/\\centerdot/eg
+ silent %s/⋈/\\rtimes/eg
+ silent %s/⋒/\\Cap/eg
+ silent %s/⊼/\\barwedge/eg
+ silent %s/⊟/\\boxminus/eg
+ silent %s/⊡/\\boxdot/eg
+ silent %s/⋌/\\rightthreetimes/eg
+ silent %s/⋏/\\curlywedge/eg
+ silent %s/⊺/\\intercal/eg
+ silent %s/⋇/\\divideontimes/eg
+ silent %s/∖/\\smallsetminus/eg
+ silent %s/⊝/\\circleddash/eg
+ silent %s/⊚/\\circledcirc/eg
+ silent %s/⊛/\\circledast/eg
+ silent %s/ℏ/\\hbar/eg
+ silent %s/ℏ/\\hslash/eg
+ silent %s/□/\\square/eg
+ silent %s/■/\\blacksquare/eg
+ silent %s/Ⓢ/\\circledS/eg
+ silent %s/△/\\vartriangle/eg
+ silent %s/▲/\\blacktriangle/eg
+ silent %s/∁/\\complement/eg
+ silent %s/▽/\\triangledown/eg
+ silent %s/▼/\\blacktriangledown/eg
+ silent %s/◊/\\lozenge/eg
+ silent %s/◆/\\blacklozenge/eg
+ silent %s/★/\\bigstar/eg
+ silent %s/∠/\\angle/eg
+ silent %s/∡/\\measuredangle/eg
+ silent %s/∢/\\sphericalangle/eg
+ silent %s/‵/\\backprime/eg
+ silent %s/∄/\\nexists/eg
+ silent %s/Ⅎ/\\Finv/eg
+ silent %s/∅/\\varnothing/eg
+ silent %s/ð/\\eth/eg
+ silent %s/℧/\\mho/eg
+
+ call cursor(s:line,s:column)
+endfunction
+
+function! LaTeXtoUTF8()
+ let s:line = line(".")
+ let s:column = col(".")
+
+ let s:oldencoding = &l:fileencoding
+ set fileencoding=utf-8
+
+ " convert latex commands to unicode
+ silent %s/\\alpha\>/α/eg
+ silent %s/\\beta\>/β/eg
+ silent %s/\\gamma\>/γ/eg
+ silent %s/\\delta\>/δ/eg
+ silent %s/\\epsilon\>/∊/eg
+ silent %s/\\varepsilon\>/ε/eg
+ silent %s/\\zeta\>/ζ/eg
+ silent %s/\\eta\>/η/eg
+ silent %s/\\theta\>/θ/eg
+ silent %s/\\vartheta\>/ϑ/eg
+ silent %s/\\iota\>/ι/eg
+ silent %s/\\kappa\>/κ/eg
+ silent %s/\\lambda\>/λ/eg
+ silent %s/\\mu\>/μ/eg
+ silent %s/\\nu\>/ν/eg
+ silent %s/\\xi\>/ξ/eg
+ silent %s/\\pi\>/π/eg
+ silent %s/\\varpi\>/ϖ/eg
+ silent %s/\\rho\>/ρ/eg
+ silent %s/\\varrho\>/ϱ/eg
+ silent %s/\\sigma\>/σ/eg
+ silent %s/\\varsigma\>/ς/eg
+ silent %s/\\tau\>/τ/eg
+ silent %s/\\upsilon\>/υ/eg
+ silent %s/\\phi\>/φ/eg
+ silent %s/\\varphi\>/ϕ/eg
+ silent %s/\\chi\>/χ/eg
+ silent %s/\\psi\>/ψ/eg
+ silent %s/\\omega\>/ω/eg
+ silent %s/\\Gamma\>/Γ/eg
+ silent %s/\\Delta\>/Δ/eg
+ silent %s/\\Theta\>/Θ/eg
+ silent %s/\\Lambda\>/Λ/eg
+ silent %s/\\Xi\>/Ξ/eg
+ silent %s/\\Pi\>/Π/eg
+ silent %s/\\Upsilon\>/Υ/eg
+ silent %s/\\Phi\>/Φ/eg
+ silent %s/\\Psi\>/Ψ/eg
+ silent %s/\\Omega\>/Ω/eg
+ silent %s/\\leq\>/≤/eg
+ silent %s/\\ll\>/≪/eg
+ silent %s/\\prec\>/≺/eg
+ silent %s/\\preceq\>/≼/eg
+ silent %s/\\subset\>/⊂/eg
+ silent %s/\\subseteq\>/⊆/eg
+ silent %s/\\sqsubset\>/⊏/eg
+ silent %s/\\sqsubseteq\>/⊑/eg
+ silent %s/\\in\>/∈/eg
+ silent %s/\\vdash\>/⊢/eg
+ silent %s/\\mid\>/∣/eg
+ silent %s/\\smile\>/⌣/eg
+ silent %s/\\geq\>/≥/eg
+ silent %s/\\gg\>/≫/eg
+ silent %s/\\succ\>/≻/eg
+ silent %s/\\succeq\>/≽/eg
+ silent %s/\\supset\>/⊃/eg
+ silent %s/\\supseteq\>/⊇/eg
+ silent %s/\\sqsupset\>/⊐/eg
+ silent %s/\\sqsupseteq\>/⊒/eg
+ silent %s/\\ni\>/∋/eg
+ silent %s/\\dashv\>/⊣/eg
+ silent %s/\\parallel\>/∥/eg
+ silent %s/\\frown\>/⌢/eg
+ silent %s/\\notin\>/∉/eg
+ silent %s/\\equiv\>/≡/eg
+ silent %s/\\doteq\>/≐/eg
+ silent %s/\\sim\>/∼/eg
+ silent %s/\\simeq\>/≃/eg
+ silent %s/\\approx\>/≈/eg
+ silent %s/\\cong\>/≅/eg
+ silent %s/\\Join\>/⋈/eg
+ silent %s/\\bowtie\>/⋈/eg
+ silent %s/\\propto\>/∝/eg
+ silent %s/\\models\>/⊨/eg
+ silent %s/\\perp\>/⊥/eg
+ silent %s/\\asymp\>/≍/eg
+ silent %s/\\neq\>/≠/eg
+ silent %s/\\pm\>/±/eg
+ silent %s/\\cdot\>/⋅/eg
+ silent %s/\\times\>/×/eg
+ silent %s/\\cup\>/∪/eg
+ silent %s/\\sqcup\>/⊔/eg
+ silent %s/\\vee\>/∨/eg
+ silent %s/\\oplus\>/⊕/eg
+ silent %s/\\odot\>/⊙/eg
+ silent %s/\\otimes\>/⊗/eg
+ silent %s/\\bigtriangleup\>/△/eg
+ silent %s/\\lhd\>/⊲/eg
+ silent %s/\\unlhd\>/⊴/eg
+ silent %s/\\mp\>/∓/eg
+ silent %s/\\div\>/÷/eg
+ silent %s/\\setminus\>/∖/eg
+ silent %s/\\cap\>/∩/eg
+ silent %s/\\sqcap\>/⊓/eg
+ silent %s/\\wedge\>/∧/eg
+ silent %s/\\ominus\>/⊖/eg
+ silent %s/\\oslash\>/⊘/eg
+ silent %s/\\bigcirc\>/○/eg
+ silent %s/\\bigtriangledown\>/▽/eg
+ silent %s/\\rhd\>/⊳/eg
+ silent %s/\\unrhd\>/⊵/eg
+ silent %s/\\triangleleft\>/◁/eg
+ silent %s/\\triangleright\>/▷/eg
+ silent %s/\\star\>/⋆/eg
+ silent %s/\\ast\>/∗/eg
+ silent %s/\\circ\>/∘/eg
+ silent %s/\\bullet\>/∙/eg
+ silent %s/\\diamond\>/⋄/eg
+ silent %s/\\uplus\>/⊎/eg
+ silent %s/\\dagger\>/†/eg
+ silent %s/\\ddagger\>/‡/eg
+ silent %s/\\wr\>/≀/eg
+ silent %s/\\sum\>/∑/eg
+ silent %s/\\prod\>/∏/eg
+ silent %s/\\coprod\>/∐/eg
+ silent %s/\\int\>/∫/eg
+ silent %s/\\bigcup\>/⋃/eg
+ silent %s/\\bigcap\>/⋂/eg
+ silent %s/\\bigsqcup\>/⊔/eg
+ silent %s/\\oint\>/∮/eg
+ silent %s/\\bigvee\>/⋁/eg
+ silent %s/\\bigwedge\>/⋀/eg
+ silent %s/\\bigoplus\>/⊕/eg
+ silent %s/\\bigotimes\>/⊗/eg
+ silent %s/\\bigodot\>/⊙/eg
+ silent %s/\\biguplus\>/⊎/eg
+ silent %s/\\leftarrow\>/←/eg
+ silent %s/\\rightarrow\>/→/eg
+ silent %s/\\leftrightarrow\>/↔/eg
+ silent %s/\\Leftarrow\>/⇐/eg
+ silent %s/\\Rightarrow\>/⇒/eg
+ silent %s/\\Leftrightarrow\>/⇔/eg
+ silent %s/\\mapsto\>/↦/eg
+ silent %s/\\hookleftarrow\>/↩/eg
+ silent %s/\\leftharpoonup\>/↼/eg
+ silent %s/\\leftharpoondown\>/↽/eg
+ silent %s/\\hookrightarrow\>/↪/eg
+ silent %s/\\rightharpoonup\>/⇀/eg
+ silent %s/\\rightharpoondown\>/⇁/eg
+ silent %s/\\longleftarrow\>/←/eg
+ silent %s/\\longrightarrow\>/→/eg
+ silent %s/\\longleftrightarrow\>/↔/eg
+ silent %s/\\Longleftarrow\>/⇐/eg
+ silent %s/\\Longrightarrow\>/⇒/eg
+ silent %s/\\Longleftrightarrow\>/⇔/eg
+ silent %s/\\longmapsto\>/⇖/eg
+ silent %s/\\uparrow\>/↑/eg
+ silent %s/\\downarrow\>/↓/eg
+ silent %s/\\updownarrow\>/↕/eg
+ silent %s/\\Uparrow\>/⇑/eg
+ silent %s/\\Downarrow\>/⇓/eg
+ silent %s/\\Updownarrow\>/⇕/eg
+ silent %s/\\nearrow\>/↗/eg
+ silent %s/\\searrow\>/↘/eg
+ silent %s/\\swarrow\>/↙/eg
+ silent %s/\\nwarrow\>/↖/eg
+ silent %s/\\leadsto\>/↝/eg
+ silent %s/\\dots\>/…/eg
+ silent %s/\\cdots\>/⋯/eg
+ silent %s/\\vdots\>/⋮/eg
+ silent %s/\\ddots\>/⋱/eg
+ silent %s/\\hbar\>/ℏ/eg
+ silent %s/\\ell\>/ℓ/eg
+ silent %s/\\Re\>/ℜ/eg
+ silent %s/\\Im\>/ℑ/eg
+ silent %s/\\aleph\>/א/eg
+ silent %s/\\wp\>/℘/eg
+ silent %s/\\forall\>/∀/eg
+ silent %s/\\exists\>/∃/eg
+ silent %s/\\mho\>/℧/eg
+ silent %s/\\partial\>/∂/eg
+ silent %s/\\prime\>/′/eg
+ silent %s/\\emptyset\>/∅/eg
+ silent %s/\\infty\>/∞/eg
+ silent %s/\\nabla\>/∇/eg
+ silent %s/\\triangle\>/△/eg
+ silent %s/\\Box\>/□/eg
+ silent %s/\\Diamond\>/◇/eg
+ silent %s/\\bot\>/⊥/eg
+ silent %s/\\top\>/⊤/eg
+ silent %s/\\angle\>/∠/eg
+ silent %s/\\surd\>/√/eg
+ silent %s/\\diamondsuit\>/♢/eg
+ silent %s/\\heartsuit\>/♡/eg
+ silent %s/\\clubsuit\>/♣/eg
+ silent %s/\\spadesuit\>/♠/eg
+ silent %s/\\neg\>/¬/eg
+ silent %s/\\flat\>/♭/eg
+ silent %s/\\natural\>/♮/eg
+ silent %s/\\sharp\>/♯/eg
+ silent %s/\\digamma\>/Ϝ/eg
+ silent %s/\\varkappa\>/ϰ/eg
+ silent %s/\\beth\>/ב/eg
+ silent %s/\\daleth\>/ד/eg
+ silent %s/\\gimel\>/ג/eg
+ silent %s/\\lessdot\>/⋖/eg
+ silent %s/\\leqslant\>/≤/eg
+ silent %s/\\leqq\>/≦/eg
+ silent %s/\\lll\>/⋘/eg
+ silent %s/\\lesssim\>/≲/eg
+ silent %s/\\lessgtr\>/≶/eg
+ silent %s/\\lesseqgtr\>/⋚/eg
+ silent %s/\\preccurlyeq\>/≼/eg
+ silent %s/\\curlyeqprec\>/⋞/eg
+ silent %s/\\precsim\>/≾/eg
+ silent %s/\\Subset\>/⋐/eg
+ silent %s/\\sqsubset\>/⊏/eg
+ silent %s/\\therefore\>/∴/eg
+ silent %s/\\smallsmile\>/⌣/eg
+ silent %s/\\vartriangleleft\>/⊲/eg
+ silent %s/\\trianglelefteq\>/⊴/eg
+ silent %s/\\gtrdot\>/⋗/eg
+ silent %s/\\geqq\>/≧/eg
+ silent %s/\\ggg\>/⋙/eg
+ silent %s/\\gtrsim\>/≳/eg
+ silent %s/\\gtrless\>/≷/eg
+ silent %s/\\gtreqless\>/⋛/eg
+ silent %s/\\succcurlyeq\>/≽/eg
+ silent %s/\\curlyeqsucc\>/⋟/eg
+ silent %s/\\succsim\>/≿/eg
+ silent %s/\\Supset\>/⋑/eg
+ silent %s/\\sqsupset\>/⊐/eg
+ silent %s/\\because\>/∵/eg
+ silent %s/\\shortparallel\>/∥/eg
+ silent %s/\\smallfrown\>/⌢/eg
+ silent %s/\\vartriangleright\>/⊳/eg
+ silent %s/\\trianglerighteq\>/⊵/eg
+ silent %s/\\doteqdot\>/≑/eg
+ silent %s/\\risingdotseq\>/≓/eg
+ silent %s/\\fallingdotseq\>/≒/eg
+ silent %s/\\eqcirc\>/≖/eg
+ silent %s/\\circeq\>/≗/eg
+ silent %s/\\triangleq\>/≜/eg
+ silent %s/\\bumpeq\>/≏/eg
+ silent %s/\\Bumpeq\>/≎/eg
+ silent %s/\\thicksim\>/∼/eg
+ silent %s/\\thickapprox\>/≈/eg
+ silent %s/\\approxeq\>/≊/eg
+ silent %s/\\backsim\>/∽/eg
+ silent %s/\\vDash\>/⊨/eg
+ silent %s/\\Vdash\>/⊩/eg
+ silent %s/\\Vvdash\>/⊪/eg
+ silent %s/\\backepsilon\>/∍/eg
+ silent %s/\\varpropto\>/∝/eg
+ silent %s/\\between\>/≬/eg
+ silent %s/\\pitchfork\>/⋔/eg
+ silent %s/\\blacktriangleleft\>/◀/eg
+ silent %s/\\blacktriangleright\>/▷/eg
+ silent %s/\\dashleftarrow\>/⇠/eg
+ silent %s/\\leftleftarrows\>/⇇/eg
+ silent %s/\\leftrightarrows\>/⇆/eg
+ silent %s/\\Lleftarrow\>/⇚/eg
+ silent %s/\\twoheadleftarrow\>/↞/eg
+ silent %s/\\leftarrowtail\>/↢/eg
+ silent %s/\\leftrightharpoons\>/⇋/eg
+ silent %s/\\Lsh\>/↰/eg
+ silent %s/\\looparrowleft\>/↫/eg
+ silent %s/\\curvearrowleft\>/↶/eg
+ silent %s/\\circlearrowleft\>/↺/eg
+ silent %s/\\dashrightarrow\>/⇢/eg
+ silent %s/\\rightrightarrows\>/⇉/eg
+ silent %s/\\rightleftarrows\>/⇄/eg
+ silent %s/\\Rrightarrow\>/⇛/eg
+ silent %s/\\twoheadrightarrow\>/↠/eg
+ silent %s/\\rightarrowtail\>/↣/eg
+ silent %s/\\rightleftharpoons\>/⇌/eg
+ silent %s/\\Rsh\>/↱/eg
+ silent %s/\\looparrowright\>/↬/eg
+ silent %s/\\curvearrowright\>/↷/eg
+ silent %s/\\circlearrowright\>/↻/eg
+ silent %s/\\multimap\>/⊸/eg
+ silent %s/\\upuparrows\>/⇈/eg
+ silent %s/\\downdownarrows\>/⇊/eg
+ silent %s/\\upharpoonleft\>/↿/eg
+ silent %s/\\upharpoonright\>/↾/eg
+ silent %s/\\downharpoonleft\>/⇃/eg
+ silent %s/\\downharpoonright\>/⇂/eg
+ silent %s/\\rightsquigarrow\>/⇝/eg
+ silent %s/\\leftrightsquigarrow\>/↭/eg
+ silent %s/\\dotplus\>/∔/eg
+ silent %s/\\ltimes\>/⋉/eg
+ silent %s/\\Cup\>/⋓/eg
+ silent %s/\\veebar\>/⊻/eg
+ silent %s/\\boxplus\>/⊞/eg
+ silent %s/\\boxtimes\>/⊠/eg
+ silent %s/\\leftthreetimes\>/⋋/eg
+ silent %s/\\curlyvee\>/⋎/eg
+ silent %s/\\centerdot\>/⋅/eg
+ silent %s/\\rtimes\>/⋈/eg
+ silent %s/\\Cap\>/⋒/eg
+ silent %s/\\barwedge\>/⊼/eg
+ silent %s/\\boxminus\>/⊟/eg
+ silent %s/\\boxdot\>/⊡/eg
+ silent %s/\\rightthreetimes\>/⋌/eg
+ silent %s/\\curlywedge\>/⋏/eg
+ silent %s/\\intercal\>/⊺/eg
+ silent %s/\\divideontimes\>/⋇/eg
+ silent %s/\\smallsetminus\>/∖/eg
+ silent %s/\\circleddash\>/⊝/eg
+ silent %s/\\circledcirc\>/⊚/eg
+ silent %s/\\circledast\>/⊛/eg
+ silent %s/\\hbar\>/ℏ/eg
+ silent %s/\\hslash\>/ℏ/eg
+ silent %s/\\square\>/□/eg
+ silent %s/\\blacksquare\>/■/eg
+ silent %s/\\circledS\>/Ⓢ/eg
+ silent %s/\\vartriangle\>/△/eg
+ silent %s/\\blacktriangle\>/▲/eg
+ silent %s/\\complement\>/∁/eg
+ silent %s/\\triangledown\>/▽/eg
+ silent %s/\\blacktriangledown\>/▼/eg
+ silent %s/\\lozenge\>/◊/eg
+ silent %s/\\blacklozenge\>/◆/eg
+ silent %s/\\bigstar\>/★/eg
+ silent %s/\\angle\>/∠/eg
+ silent %s/\\measuredangle\>/∡/eg
+ silent %s/\\sphericalangle\>/∢/eg
+ silent %s/\\backprime\>/‵/eg
+ silent %s/\\nexists\>/∄/eg
+ silent %s/\\Finv\>/Ⅎ/eg
+ silent %s/\\varnothing\>/∅/eg
+ silent %s/\\eth\>/ð/eg
+ silent %s/\\mho\>/℧/eg
+ call cursor(s:line,s:column)
+endfunction
+
+nnoremap <buffer> <LocalLeader>cl :call UTF8toLaTeX()<CR>
+nnoremap <buffer> <LocalLeader>cu :call LaTeXtoUTF8()<CR>
+command! Convert2Latex :call UTF8toLaTeX()
+command! Convert2UTF8 :call LaTeXtoUTF8()
+
+" augroup LaTeX
+" au!
+" autocmd BufWritePre *.tex :Convert2Latex
+" autocmd BufWritePost *.tex :Convert2UTF8
+" augroup END
diff --git a/.vim/after/ftplugin/vim/folding.vim b/.vim/after/ftplugin/vim/folding.vim
new file mode 100644
index 0000000..1454cbe
--- /dev/null
+++ b/.vim/after/ftplugin/vim/folding.vim
@@ -0,0 +1,25 @@
+function! VimFolds()
+ let thisline = getline(v:lnum)
+ if match(thisline,'^"" ') >= 0
+ return ">1"
+ elseif match(thisline,'^" ') >=0
+ return ">1"
+ else
+ return "="
+ endif
+endfunction
+
+function! VimFoldText()
+ let startline = getline(v:foldstart)
+ if match(startline,'^"" ') >= 0
+ let title = substitute(startline,'^"" \(.*\)$','\1',"")
+ return '# ' . title
+ elseif match(startline,'^" ') >=0
+ let title = substitute(startline,'^" \(.*\)$','\1',"")
+ return ' ## ' .title
+ endif
+endfunction
+
+setlocal foldmethod=expr
+setlocal foldexpr=VimFolds()
+setlocal foldtext=VimFoldText()
diff --git a/.vim/after/syntax/cpp.vim b/.vim/after/syntax/cpp.vim
new file mode 100644
index 0000000..4da741d
--- /dev/null
+++ b/.vim/after/syntax/cpp.vim
@@ -0,0 +1,3 @@
+syntax keyword mPigroup pi
+hi def link mPigroup Todo
+
diff --git a/.vim/after/syntax/cpp.vim~ b/.vim/after/syntax/cpp.vim~
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.vim/after/syntax/cpp.vim~
diff --git a/.vim/after/syntax/tex.vim b/.vim/after/syntax/tex.vim
new file mode 100644
index 0000000..a40cc30
--- /dev/null
+++ b/.vim/after/syntax/tex.vim
@@ -0,0 +1,6 @@
+syn match texMathSymbol '\\arr\>' contained conceal cchar=←
+syn match texMathSymbol '\\,' contained conceal cchar=
+syn match texMathSymbol '\\mathcal' contained conceal cchar=
+syn match texMathSymbol '\\text' contained conceal cchar=
+syn match texMathSymbol '\\mathbb' contained conceal cchar=
+syn match texMathSymbol '\\quad' contained conceal cchar=
diff --git a/.vim/after/syntax/tex.vim~ b/.vim/after/syntax/tex.vim~
new file mode 100644
index 0000000..4e1d112
--- /dev/null
+++ b/.vim/after/syntax/tex.vim~
@@ -0,0 +1,6 @@
+syn match texMathSymbol '\\arr\>' contained conceal cchar=←
+syn match texMathSymbol '\\,' contained conceal cchar=
+syn match texMathSymbol '\\mathcal' contained conceal cchar=
+syn match texMathSymbol '\\text' contained conceal cchar=
+syn match texMathSymbol '\\mathbb' contained conceal cchar=
+syn match texMathSymbol '\\quad' contained conceal cchar=
diff --git a/.vim/colors/mine.vim b/.vim/colors/mine.vim
new file mode 100644
index 0000000..653682e
--- /dev/null
+++ b/.vim/colors/mine.vim
@@ -0,0 +1,29 @@
+" Vim color file
+" Maintainer: Urbain
+" Last Change: 2002/10/14 Mon 16:41.
+" version: 1.0
+" This color scheme uses a light background.
+
+set background=light
+hi clear
+if exists("syntax_on")
+ syntax reset
+endif
+
+let colors_name = "mine"
+
+" Syntax group
+hi Comment gui=none guifg=#af5f00
+hi Normal guibg=white guifg=Black
+hi Type gui=none guifg=#005f00
+hi Statement gui=none guifg=#5f0000
+hi Special guifg=Black
+hi Constant guifg=Gray
+hi Error guifg=Red guibg=White
+hi Preproc guifg=Blue "\end
+hi Constant guifg=Green "\ $$
+hi Identifier guifg=Blue "\begin
+hi LineNr gui=none guifg=Gray
+hi FoldColumn guibg=#F5F4FD
+hi Todo guibg=white gui=underline,italic guifg=Red
+hi Conceal guibg=White guifg=DarkGreen
diff --git a/.vim/colors/mine.vim~ b/.vim/colors/mine.vim~
new file mode 100644
index 0000000..653682e
--- /dev/null
+++ b/.vim/colors/mine.vim~
@@ -0,0 +1,29 @@
+" Vim color file
+" Maintainer: Urbain
+" Last Change: 2002/10/14 Mon 16:41.
+" version: 1.0
+" This color scheme uses a light background.
+
+set background=light
+hi clear
+if exists("syntax_on")
+ syntax reset
+endif
+
+let colors_name = "mine"
+
+" Syntax group
+hi Comment gui=none guifg=#af5f00
+hi Normal guibg=white guifg=Black
+hi Type gui=none guifg=#005f00
+hi Statement gui=none guifg=#5f0000
+hi Special guifg=Black
+hi Constant guifg=Gray
+hi Error guifg=Red guibg=White
+hi Preproc guifg=Blue "\end
+hi Constant guifg=Green "\ $$
+hi Identifier guifg=Blue "\begin
+hi LineNr gui=none guifg=Gray
+hi FoldColumn guibg=#F5F4FD
+hi Todo guibg=white gui=underline,italic guifg=Red
+hi Conceal guibg=White guifg=DarkGreen
diff --git a/.vim/mySnippets/all.snippets b/.vim/mySnippets/all.snippets
new file mode 100644
index 0000000..8094025
--- /dev/null
+++ b/.vim/mySnippets/all.snippets
@@ -0,0 +1,25 @@
+global !p
+def make_comment():
+ b, e = vim.eval("&commentstring").split( '%s' )
+ return b, e
+endglobal
+
+snippet todo "A universal TODO reminder" b
+`!p
+comment = make_comment()
+snip.rv = comment[ 0 ]
+` TODO: ${1:desc} (`!v $USER`, `!v strftime("%c")`) `!p
+comment = make_comment()
+snip.rv = comment[ 1 ]`
+$0
+endsnippet
+
+snippet fix "A universal FIXME reminder" b
+`!p
+comment = make_comment()
+snip.rv = comment[ 0 ]
+` FIXME: ${1:desc} (`!v $USER`, `!v strftime("%c")`) `!p
+comment = make_comment()
+snip.rv = comment[ 1 ]`
+$0
+endsnippet
diff --git a/.vim/mySnippets/cpp.snippets b/.vim/mySnippets/cpp.snippets
new file mode 100644
index 0000000..d314641
--- /dev/null
+++ b/.vim/mySnippets/cpp.snippets
@@ -0,0 +1,35 @@
+snippet print_mat "Print matrix" b
+for (unsigned int iii = 0; iii < ${1:mat}.size(); ++iii) {
+ cout << setw(12) << $1[iii][0];
+ for (unsigned int jjj = 1; jjj < $1.size(); ++jjj) {
+ cout << ", ";
+ cout << setw(12) << $1[iii][jjj];
+ }
+ cout << endl;
+}
+$0
+endsnippet
+
+snippet print_vec "Print vector" b
+for (unsigned int iii = 0; iii < ${1:mat}.size(); ++iii) {
+ cout << setw(12) << $1[iii];
+ cout << endl;
+}
+$0
+endsnippet
+
+snippet forij "Matrix iteration" b
+for (int ${2:i} = 0; $2 < ${1:count}; $2++) {
+ for (int ${4:j} = 0; $4 < $1; $4++) {
+ ${5}
+ }
+}
+endsnippet
+
+snippet vec "vector" i
+vector<${1:double}> $0
+endsnippet
+
+snippet mat "matrix" i
+vector< vector<${1:double}> > $0
+endsnippet
diff --git a/.vim/mySnippets/mail.snippets b/.vim/mySnippets/mail.snippets
new file mode 100644
index 0000000..9839916
--- /dev/null
+++ b/.vim/mySnippets/mail.snippets
@@ -0,0 +1,33 @@
+snippet best "Best wishes" b
+Best wishes,
+
+Urbain
+endsnippet
+
+snippet dear "Email template" b
+Dear ${1:Greg},
+
+${2:# Body of the message}
+
+Best wishes,
+
+${3:Urbain}
+endsnippet
+
+snippet sign "Signature" b
+Best wishes,
+
+Urbain Vaes
+Department of Mathematics
+Office 6M09
+endsnippet
+
+snippet bisous "Gros bisous" b
+Gros bisous,
+
+Urbain
+endsnippet
+
+snippet look "I'm looking forward to ..." b
+I am looking forward to hearing from you,
+endsnippet
diff --git a/.vim/mySnippets/python.snippets b/.vim/mySnippets/python.snippets
new file mode 100644
index 0000000..6dbc272
--- /dev/null
+++ b/.vim/mySnippets/python.snippets
@@ -0,0 +1,4 @@
+snippet fori "for loop over range" b
+for ${1:i} in range(${2:n}):
+ ${0:pass}
+endsnippet
diff --git a/.vim/mySnippets/tex.snippets b/.vim/mySnippets/tex.snippets
new file mode 100644
index 0000000..9c74845
--- /dev/null
+++ b/.vim/mySnippets/tex.snippets
@@ -0,0 +1,110 @@
+snippet real "Field of real numbers" i
+\real
+endsnippet
+
+snippet grad "Gradient" i
+\grad
+endsnippet
+
+snippet div "Divergence" i
+\dive
+endsnippet
+
+snippet new "New command" b
+\newcommand{$1}[$2]{$3}$0
+endsnippet
+
+snippet op "Operator style" i
+\op
+endsnippet
+
+snippet pard "Partial derivative" i
+\pardl{$1}{$2}$0
+endsnippet
+
+snippet pardd "Double partial derivative" i
+\parddl{$1}{$2}$0
+endsnippet
+
+snippet herm "Hermite polynomials" i
+\hermite
+endsnippet
+
+snippet red "Red text" i
+\red{$1}$0
+endsnippet
+
+snippet sumi "Sum over index set" i
+\sum_{${1:i} \in ${2:I}}$0
+endsnippet
+
+snippet int "Integral" i
+\int_{$1}
+endsnippet
+
+snippet ip "Inner product" i
+\ip{$1}{$2}$0
+endsnippet
+
+snippet ipw "Inner product" i
+\wip{$1}{$2}{$3}$0
+endsnippet
+
+snippet norm "Norm" i
+\norm{$1}$0
+endsnippet
+
+snippet normw "Weighted norm" i
+\wnorm{$1}{${2:\gamma}}
+endsnippet
+
+snippet test "Test functions" i
+\test{${1:\real^n}}$0
+endsnippet
+
+snippet lp "Lp spaces" w
+\lp{${1:exponent}}{${2:domain}}${3/^.+$/[/}${3:weight}${3/^.+$/]/}$0
+endsnippet
+
+snippet sob "Sobolev spaces" w
+\sobolev{${1:exponent}}{${2:domain}}${3/^.+$/[/}${3:weight}${3/^.+$/]/}$0
+endsnippet
+
+snippet cont "Continuous function" w
+\cont{$1}{$2}$0
+endsnippet
+
+snippet mean "Expectation" w
+\expect $0
+endsnippet
+
+snippet dot "Dot product" w
+\dotx
+endsnippet
+
+snippet abs "Absolute value" w
+\abs{ $1 }$0
+endsnippet
+
+snippet sum "Sum" w
+\sum_{${1:i=1}}^{${2:n}}
+endsnippet
+
+snippet smooth "Smooth function" w
+\smooth{${1:\real^n}} $0
+endsnippet
+
+snippet ref "Clever reference" w
+\cref{$1}$0
+endsnippet
+
+snippet frame "My frame snippet" b
+\begin{frame}
+ \frametitle{$1}
+ $0
+\end{frame}
+endsnippet
+
+snippet gauss "Gaussian density" w
+\gaussian{${1:\mu}}{${2:\Sigma}}$0
+endsnippet
diff --git a/.vim/mySnippets/vim.snippets b/.vim/mySnippets/vim.snippets
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.vim/mySnippets/vim.snippets
diff --git a/.vim/spell/en.utf-8.add b/.vim/spell/en.utf-8.add
new file mode 100644
index 0000000..460c1ea
--- /dev/null
+++ b/.vim/spell/en.utf-8.add
@@ -0,0 +1,28 @@
+Plugin
+Colorscheme
+vim
+multiscale
+SDEs
+SPDEs
+Abdulle
+Pavliotis
+Ornstein
+Uhlenbeck
+MRes
+Galerkin
+ODEs
+PDEs
+Kolmogorov
+SDE
+Maruyama
+advective
+eqref
+Milgram
+Cea's
+Lyapunov
+Gnuplot
+Cholesky
+Assyr
+EPFL
+SymPy
+CMake
diff --git a/.vim/spell/en.utf-8.add.spl b/.vim/spell/en.utf-8.add.spl
new file mode 100644
index 0000000..a300e1e
--- /dev/null
+++ b/.vim/spell/en.utf-8.add.spl
Binary files differ
diff --git a/.vim/spell/en.utf-8.spl b/.vim/spell/en.utf-8.spl
new file mode 100644
index 0000000..a41bf79
--- /dev/null
+++ b/.vim/spell/en.utf-8.spl
Binary files differ
diff --git a/.vim/spell/en.utf-8.sug b/.vim/spell/en.utf-8.sug
new file mode 100644
index 0000000..b82667d
--- /dev/null
+++ b/.vim/spell/en.utf-8.sug
Binary files differ
diff --git a/.vim/vimrc b/.vim/vimrc
new file mode 100644
index 0000000..13b520a
--- /dev/null
+++ b/.vim/vimrc
@@ -0,0 +1,314 @@
+"" Plugins
+call plug#begin('~/.vim/plugged')
+Plug 'airblade/vim-gitgutter', { 'on' : 'GitGutterToggle' }
+Plug 'altercation/vim-colors-solarized'
+Plug 'AndrewRadev/splitjoin.vim'
+Plug 'beloglazov/vim-online-thesaurus'
+Plug 'benekastah/neomake' , { 'for' : 'cpp' }
+Plug 'bling/vim-airline'
+Plug 'christoomey/vim-tmux-navigator'
+Plug 'freeo/vim-kalisi'
+Plug 'godlygeek/tabular' , { 'on' : 'Tab' }
+Plug 'gregsexton/gitv', { 'on' : 'Gitv' }
+Plug 'honza/vim-snippets'
+Plug 'itchyny/calendar.vim', { 'on' : 'Calendar' }
+Plug 'klen/python-mode'
+Plug 'jamessan/vim-gnupg'
+Plug 'junegunn/fzf'
+Plug 'junegunn/seoul256.vim'
+Plug 'junegunn/vim-pseudocl'
+Plug 'junegunn/vim-oblique'
+Plug 'junegunn/vim-peekaboo'
+Plug 'junegunn/rainbow_parentheses.vim'
+Plug 'justinmk/vim-sneak'
+Plug 'kassio/neoterm', { 'on' : 'T' }
+Plug 'kien/ctrlp.vim'
+Plug 'lervag/vimtex'
+Plug 'majutsushi/tagbar'
+Plug 'mileszs/ack.vim', { 'on' : 'Ack' }
+Plug 'rdnetto/YCM-Generator', { 'branch' : 'stable' , 'on' : 'YcmGenerateConfig' }
+Plug 'ryanss/vim-hackernews', { 'on' : 'HackerNews' }
+Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
+Plug 'scrooloose/syntastic'
+Plug 'SirVer/ultisnips'
+Plug 'sjl/Gundo.vim', { 'on' : 'GundoToggle' }
+Plug 'terryma/vim-multiple-cursors'
+Plug 'tomasr/molokai'
+Plug 'tommcdo/vim-exchange'
+Plug 'ton/vim-bufsurf'
+Plug 'tpope/vim-abolish', { 'for' : 'tex' }
+Plug 'tpope/vim-commentary'
+Plug 'tpope/vim-flagship'
+Plug 'tpope/vim-fugitive'
+Plug 'tpope/vim-git'
+Plug 'tpope/vim-obsession'
+Plug 'tpope/vim-repeat'
+Plug 'tpope/vim-sensible'
+Plug 'tpope/vim-surround'
+Plug 'tpope/vim-unimpaired'
+Plug 'tpope/vim-vinegar'
+Plug 'troydm/zoomwintab.vim'
+Plug 'Valloric/YouCompleteMe', { 'do' : './install.sh --clang-completer' }
+Plug 'xolox/vim-misc'
+Plug 'xolox/vim-notes'
+call plug#end()
+
+let g:vimtex_fold_enabled=0
+let g:vimtex_view_method='zathura'
+let g:vimtex_latexmk_continuous=1
+let g:vimtex_quickfix_mode=0
+
+let g:UltiSnipsEditSplit="horizontal"
+let g:UltiSnipsExpandTrigger="<tab>"
+let g:UltiSnipsJumpBackwardTrigger="<s-tab>"
+let g:UltiSnipsJumpForwardTrigger="<tab>"
+let g:UltiSnipsListSnippets="<c-l>"
+let g:UltiSnipsSnippetDirectories=['UltiSnips', 'mySnippets']
+let g:UltiSnipsSnippetsDir="~/.vim/mySnippets"
+
+let g:airline_left_sep=''
+let g:airline_right_sep=''
+let g:airline_section_c = '%f%m'
+let g:airline_section_y = ''
+let g:airline_section_z = '%3p%%|%3l|%3c'
+let g:airline_theme='solarized'
+let g:airline#extensions#tabline#enabled = 0
+let g:airline_exclude_preview = 0
+
+let g:bufferline_active_buffer_left = ''
+let g:bufferline_active_buffer_right = ''
+let g:bufferline_echo = 0
+let g:bufferline_modified = '+'
+let g:bufferline_rotate = 0
+
+let g:ctrlp_by_filename = 1
+let g:ctrlp_cmd = 'CtrlP'
+let g:ctrlp_map = '<c-p>'
+let g:ctrlp_open_new_file = 't'
+let g:ctrlp_show_hidden = 1
+let g:ctrlp_user_command = ['.git/', 'git --git-dir=%s/.git ls-files -oc --exclude-standard']
+let g:ctrlp_working_path_mode = 'r'
+let g:ctrlp_prompt_mappings = {
+ \ 'PrtSelectMove("j")': ['<c-n>'],
+ \ 'PrtSelectMove("k")': ['<c-p>'],
+ \ 'PrtHistory(-1)': ['<c-j>'],
+ \ 'PrtHistory(1)': ['<c-k>'],}
+
+let g:pymode_rope=0
+
+let g:syntastic_cpp_compiler = "g++"
+let g:syntastic_cpp_compiler_options = "-std=c++11 -Wall -Wextra -Wpedantic"
+let g:syntastic_error_symbol = "✗"
+let g:syntastic_warning_symbol = "W"
+
+let g:tagbar_width = 30
+let g:tagbar_show_linenumbers=1
+let g:tagbar_autofocus=1
+
+
+let g:tex_conceal= 'adgm'
+let g:tex_flavor='latex'
+ let g:tex_fast="1"
+
+let NERDTreeIgnore=['\.pdf$', '\~$','\.toc$',
+ \ '\.fls$','\.bbl$','\.blg$',
+ \ '\.out$', '\.log$','\.aux$','\.sty$',
+ \ '\.fdb_latexmk$', '\.synctex.gz$','\.latexmain$']
+
+let g:ycm_key_list_select_completion = ['<C-n>', '<Down>']
+let g:ycm_key_list_previous_completion = ['<C-p>', '<Up>']
+let g:ycm_add_preview_to_completeopt = 0
+let g:ycm_confirm_extra_conf = 0
+let g:ycm_auto_trigger = 1
+if !exists('g:ycm_semantic_triggers')
+ let g:ycm_semantic_triggers = {}
+endif
+let g:ycm_semantic_triggers.tex = ['re!\\[A-Za-z]*(ref|cite)[A-Za-z]*([^]]*])?{([^}]*, ?)*' ]
+
+let g:calendar_google_calendar = 1
+let g:calendar_google_task = 1
+
+let g:tabprefix = ""
+
+
+"" Vim options
+
+" Tabs and indent
+set smartindent
+set expandtab
+set tabstop=4
+set softtabstop=4
+set shiftwidth=4
+
+" Folds
+set foldcolumn=0
+set nofoldenable
+set foldmethod=expr
+set foldlevel=0
+
+" Back up files
+set noswapfile
+set nowritebackup
+set undofile
+set undodir=/home/urbain/.nvim/vimundo/
+
+" Layout window
+set nonumber
+set diffopt=filler,vertical
+set listchars=tab:▸\ ,eol:¬,trail:-
+set fillchars=fold:\ ,vert:\ ,
+set breakindent
+let &showbreak='--> '
+set colorcolumn=0
+set scrolloff=0
+set t_Co=256
+set guitablabel=%N\ %t\ %M
+set showcmd
+
+" Layout text
+set nowrap
+set linebreak
+set textwidth=0
+set conceallevel=2
+set formatprg=par\ w72
+set guifont=Monaco\ 11
+
+" Case and spell
+set nospell
+" set spellfile="/home/urbain/.vim/spell/en.utf-8.add"
+set smartcase
+set ignorecase
+
+" Misc
+set noautochdir
+set cpoptions+=Iq
+set encoding=utf-8
+set mouse=a
+set clipboard=unnamedplus
+set lazyredraw
+set hidden
+
+" Colorscheme
+if $COLORSCHEME=="light"
+ silent! colo solarized
+ set background=light
+elseif $COLORSCHEME=="dark"
+ silent! colo solarized
+ set background=dark
+elseif $COLORSCHEME=="default"
+ silent! colo seoul256
+ set background=dark
+endif
+
+highlight Comment cterm=italic
+set t_ZH=
+set t_ZR=
+
+"" Maps
+
+" Definition of leaders
+let mapleader = " "
+let maplocalleader = "\\"
+
+" New pages
+nnoremap <Leader>pe :tabedit
+nnoremap <Leader>pn :tabnew<cr>
+nnoremap <Leader>po :tabonly<cr>
+
+" Plugin Management
+nnoremap <Leader>pi :PlugInstall<cr>
+nnoremap <Leader>pu :PlugUpdate<cr>
+nnoremap <Leader>pc :PlugClean<cr>
+nnoremap <Leader>pd :PlugDiff<cr>
+nnoremap <Leader>ps :PlugStatus<cr>
+
+" Toggles
+nnoremap cop :set paste!<cr>
+nnoremap cof :set foldenable!<cr>
+nnoremap cpg :GitGutterToggle<cr>
+nnoremap cpn :NERDTreeToggle<cr>
+nnoremap cpt :TagbarToggle<cr>
+nnoremap cpu :GundoToggle<cr>
+
+" Sourcing
+nnoremap <Leader>sv :source ~/.vimrc<cr>
+nnoremap <Leader>sc :source %<cr>
+
+" File edits
+nnoremap <Leader>es :UltiSnipsEdit<cr>
+nnoremap <Leader>em :e ~/dotfiles/mutt/muttrc<cr>
+nnoremap <Leader>en :e ~/dotfiles/nvimrc<cr>
+nnoremap <Leader>ev :e ~/dotfiles/vimrc<cr>
+nnoremap <Leader>ez :e ~/dotfiles/zshrc<cr>
+nnoremap <Leader>et :e ~/dotfiles/tmux.conf<cr>
+
+" Formatting
+nnoremap <Leader>fw :%s/\s\+$//<cr>
+nnoremap <Leader>fi zzmxgg=G'x
+
+" Navigation
+nnoremap (( :BufSurfBack<CR>
+nnoremap )) :BufSurfForward<CR>
+nnoremap <c-y> 3<c-y>
+nnoremap <c-e> 3<c-e>
+nnoremap <Return> o<Esc>
+nnoremap <s-Return> O<Esc>
+
+" Git
+nnoremap <Leader>gs :Gstatus<cr>
+nnoremap <Leader>gr :Gread<cr>
+nnoremap <Leader>gd :Gdiff<cr>
+nnoremap <Leader>gv :Gitv<cr>
+
+" Misc
+nnoremap <tab> <C-^>
+nnoremap Q :bd!<cr>
+nnoremap <Leader>w :w<cr>
+nnoremap <Leader>q :q!<cr>
+nnoremap <LocalLeader>h :e %:p:s,.hpp$,.X123X,:s,.cpp$,.hpp,:s,.X123X$,.cpp,<CR>
+nnoremap J mzJ`z
+nnoremap Y y$
+nnoremap + za
+nnoremap K :OnlineThesaurusCurrentWord<CR>
+
+" Dvorak specific
+nnoremap : ,
+vnoremap : ,
+nnoremap , :
+vnoremap , :
+
+" Neovim specific
+if has("nvim")
+ tnoremap <C-_> <C-\><C-n><C-^>:ZoomWinTabOut<cr>
+ nnoremap <C-_> :ZoomWinTabIn<cr>:b term<cr>i
+ inoremap <C-_> <Esc>:b term<cr>i
+ nnoremap ym :Neomake!<cr>
+endif
+
+"" Restore cursor position
+augroup vimrc
+ au!
+ autocmd BufWritePost *vimrc source %
+ autocmd BufWritePost *.cpp Neomake!
+ autocmd BufReadPost *
+ \ if line("'\"") > 1 && line("'\"") <= line("$") |
+ \ exe "normal! g`\"" |
+ \ endif
+augroup END
+
+"" Taken from Junegunn Chong
+nnoremap <silent> <Leader>C :call fzf#run({
+\ 'source':
+\ map(split(globpath(&rtp, "colors/*.vim"), "\n"),
+\ "substitute(fnamemodify(v:val, ':t'), '\\..\\{-}$', '', '')"),
+\ 'sink': 'colo',
+\ 'options': '+m',
+\ 'left': 30,
+\ 'launcher': 'iterm2-launcher 20 30 %s'
+\ })<CR>
+
+"" Experimental
+let g:notes_directories = ['~/.notes']
+let g:pymode=0
+
+" Idea: instant download colorscheme