Recently I adjusted my environment to use utf8 encoding. One of the motivation for this was to use Unicode math symbols while writing text files. I am using vim/gvim as editor and for a moment the solution for me to enter Unicode characters are abbreviations in insert mode (the tag are set to minimize the risk of collision with ordinary words or variable/function names).
Here is snippet of my .vimrc
" ABBREVIATIONS " iab yRn <C-V>u211D<C-V>u207F iab yR1 <C-V>u211D<C-V>u00B9 iab yR3 <C-V>u211D<C-V>u00B3 iab yR2 <C-V>u211D<C-V>u00B2 iab ySub <C-V>u2282 iab yIn <C-V>u2208 iab yFun <C-V>u2192
Whit these abbreviations the stream of characters:
f: X yFun Y, where X ySub yR1 and Y ySub yR2
is automatically expanded into:
f: X → Y, where X ⊂ ℝ¹ and Y ⊂ ℝ²