123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- *ft_raku.txt* The Raku programming language filetype
- *vim-raku*
- Vim-raku provides syntax highlighting, indentation, and other support for
- editing Raku programs.
- 1. Using Unicode in your Raku files |raku-unicode|
- ==============================================================================
- 1. Using Unicode in your Raku files *raku-unicode*
- Defining new operators using Unicode symbols is a good way to make your
- Raku program easy to read. See:
- https://perl6advent.wordpress.com/2012/12/18/day-18-formulas-resistance-is-futile/
- While Raku does define ASCII alternatives for some common operators (see
- https://docs.raku.org/language/unicode_ascii), using the full range of
- Unicode operators is highly desirable. Your operating system provides input
- facilities, but using the features built in to Vim may be preferable.
- The natural way to produce these symbols in Vim is to use digraph shortcuts
- (:help |digraphs-use|). Many of them are defined; type `:digraphs` to get
- the list. A convenient way to read the list of digraphs is to save them in a
- file. From the shell: >
- vim +'redir >/tmp/vim-digraphs-listing.txt' +digraphs +'redir END' +q
- Some of them are available with standard Vim digraphs:
- << « /0 ∅ !< ≮ ~
- >> » Ob ∘ !> ≯ ~
- ., … 00 ∞ (C ⊂ ~
- (U ∩ -: ÷ )C ⊃ ~
- )U ∪ (_ ⊆ >= ≥ ~
- ?= ≅ )_ ⊇ =< ≤ ~
- (- ∈ ?= ≅ != ≠ ~
- -) ∋ ?- ≃ ~
- The Greek alphabet is available with '*' followed by a similar Latin symbol:
- *p π ~
- *t τ ~
- *X × ~
- Numbers, subscripts and superscripts are available with 's' and 'S':
- 0s ₀ 0S ⁰ ~
- 1s ₁ 1S ¹ ~
- 2s ₂ 9S ⁹ ~
- But some don't come defined by default. Those are digraph definitions you can
- add in your ~/.vimrc file. >
- exec 'digraph \\ ' .. char2nr('∖')
- exec 'digraph \< ' .. char2nr('≼')
- exec 'digraph \> ' .. char2nr('≽')
- exec 'digraph (L ' .. char2nr('⊈')
- exec 'digraph )L ' .. char2nr('⊉')
- exec 'digraph (/ ' .. char2nr('⊄')
- exec 'digraph )/ ' .. char2nr('⊅')
- exec 'digraph )/ ' .. char2nr('⊅')
- exec 'digraph U+ ' .. char2nr('⊎')
- exec 'digraph 0- ' .. char2nr('⊖')
- " Euler's constant
- exec 'digraph ne ' .. char2nr('𝑒')
- " Raku's atomic operations marker
- exec 'digraph @@ ' .. char2nr('⚛')
- Alternatively, you can write Insert mode abbreviations that convert ASCII-
- based operators into their single-character Unicode equivalent. >
- iabbrev <buffer> !(<) ⊄
- iabbrev <buffer> !(<=) ⊈
- iabbrev <buffer> !(>) ⊅
- iabbrev <buffer> !(>=) ⊉
- iabbrev <buffer> !(cont) ∌
- iabbrev <buffer> !(elem) ∉
- iabbrev <buffer> != ≠
- iabbrev <buffer> (&) ∩
- iabbrev <buffer> (+) ⊎
- iabbrev <buffer> (-) ∖
- iabbrev <buffer> (.) ⊍
- iabbrev <buffer> (<) ⊂
- iabbrev <buffer> (<+) ≼
- iabbrev <buffer> (<=) ⊆
- iabbrev <buffer> (>) ⊃
- iabbrev <buffer> (>+) ≽
- iabbrev <buffer> (>=) ⊇
- iabbrev <buffer> (\|) ∪
- iabbrev <buffer> (^) ⊖
- iabbrev <buffer> (atomic) ⚛
- iabbrev <buffer> (cont) ∋
- iabbrev <buffer> (elem) ∈
- iabbrev <buffer> * ×
- iabbrev <buffer> **0 ⁰
- iabbrev <buffer> **1 ¹
- iabbrev <buffer> **2 ²
- iabbrev <buffer> **3 ³
- iabbrev <buffer> **4 ⁴
- iabbrev <buffer> **5 ⁵
- iabbrev <buffer> **6 ⁶
- iabbrev <buffer> **7 ⁷
- iabbrev <buffer> **8 ⁸
- iabbrev <buffer> **9 ⁹
- iabbrev <buffer> ... …
- iabbrev <buffer> / ÷
- iabbrev <buffer> << «
- iabbrev <buffer> <<[=]<< «=«
- iabbrev <buffer> <<[=]>> «=»
- iabbrev <buffer> <= ≤
- iabbrev <buffer> =~= ≅
- iabbrev <buffer> >= ≥
- iabbrev <buffer> >> »
- iabbrev <buffer> >>[=]<< »=«
- iabbrev <buffer> >>[=]>> »=»
- iabbrev <buffer> Inf ∞
- iabbrev <buffer> atomic-add-fetch ⚛+=
- iabbrev <buffer> atomic-assign ⚛=
- iabbrev <buffer> atomic-fetch ⚛
- iabbrev <buffer> atomic-dec-fetch --⚛
- iabbrev <buffer> atomic-fetch-dec ⚛--
- iabbrev <buffer> atomic-fetch-inc ⚛++
- iabbrev <buffer> atomic-inc-fetch ++⚛
- iabbrev <buffer> atomic-sub-fetch ⚛−=
- iabbrev <buffer> e 𝑒
- iabbrev <buffer> o ∘
- iabbrev <buffer> pi π
- iabbrev <buffer> set() ∅
- iabbrev <buffer> tau τ
- <
- vim:tw=78:ts=8:noet:ft=help:norl:
|