From 5c08cd964b9c20087a454d38b2e62561ea7f0561 Mon Sep 17 00:00:00 2001 From: Sarah Burns Date: Sun, 5 Dec 2021 14:47:25 -0800 Subject: BQN mode entry in order and description from website --- editors/kak/autoload/filetype/bqn.kak | 111 ++++++++++++++++++++++++++++------ 1 file changed, 92 insertions(+), 19 deletions(-) (limited to 'editors') diff --git a/editors/kak/autoload/filetype/bqn.kak b/editors/kak/autoload/filetype/bqn.kak index 19676fe7..f85f6431 100644 --- a/editors/kak/autoload/filetype/bqn.kak +++ b/editors/kak/autoload/filetype/bqn.kak @@ -18,25 +18,98 @@ hook global WinSetOption filetype=bqn %¹ declare-user-mode bqn map buffer insert '\' ':enter-user-mode bqn' -docstring 'enter bqn character' - evaluate-commands %sh² - a='`1234567890=' ;a+='~!@#$%^&*()_+' - a+='qwertyuiop[]';a+='QWERTYUIOP{}' - a+='asdfghjkl;\' ;a+='ASDFGHJKL:"|' - a+='zxcvbnm,./' ;a+='ZXCVBNM<>?' - - b='˜˘¨⁼⌜´˝7∞¯•×' ;b+='¬⎉⚇⍟◶⊘⎊⍎⍕⟨⟩√⋆' - b+='⌽𝕨∊↑∧y⊔⊏⊐π←→';b+='↙𝕎⍷𝕣⍋YU⊑⊒⍳⊣⊢' - b+='⍉𝕤↕𝕗𝕘⊸∘○⟜⋄\' ;b+='↖𝕊D𝔽𝔾«J⌾»·˙|' - b+='⥊𝕩↓∨⌊n≡∾≍≠' ;b+='⋈𝕏C⍒⌈N≢≤≥⇐' - - for (( i=0; i<${#a}; i++ )); do - o=${b:$i:1} - echo "map buffer bqn '${a:$i:1}' ':exec i$o' -docstring '$o'" - done - ² - map buffer bqn ':exec i÷' -docstring '÷' - map buffer bqn "'" ':exec i↩' -docstring '↩' - map buffer bqn ':exec i‿' -docstring '‿' + # + + + Conjugate | Add + # - - - Negate | Subtract + map buffer bqn '=' ':exec i×' -docstring '× Sign | Multiply' + map buffer bqn ':exec i÷' -docstring '÷ Recipical | Divide' + map buffer bqn '+' ':exec i⋆' -docstring '⋆ Exponential | Power' + map buffer bqn '_' ':exec i√' -docstring '√ Square root | Root' + map buffer bqn 'b' ':exec i⌊' -docstring '⌊ Floor | Minimum' + map buffer bqn 'B' ':exec i⌈' -docstring '⌈ Ceiling | Maximum' + map buffer bqn 't' ':exec i∧' -docstring '∧ SortUp | And' + map buffer bqn 'v' ':exec i∨' -docstring '∨ SortDown | Or' + map buffer bqn '~' ':exec i¬' -docstring '¬ Not | Span' + # | | | AbsoluteValue | Modulus + map buffer bqn '<' ':exec i≤' -docstring '≤ | LessOrEqual' + # < < < Enclose | LessThan + # > > > Merge | GreaterThan + map buffer bqn '>' ':exec i>' -docstring '> | GreaterOrEqual' + # = = = Rank | Equal + map buffer bqn '/' ':exec i≠' -docstring '≠ Length | NotEqual' + map buffer bqn 'm' ':exec i≡' -docstring '≡ Depth | Match' + map buffer bqn 'M' ':exec i≢' -docstring '≢ Shape | NotMatch' + map buffer bqn '{' ':exec i⊣' -docstring '⊣ Identity | Left' + map buffer bqn '}' ':exec i⊢' -docstring '⊢ Identity | Right' + map buffer bqn 'z' ':exec i⥊' -docstring '⥊ Deshape | Reshape' + map buffer bqn ',' ':exec i∾' -docstring '∾ Join | JoinTo' + map buffer bqn '.' ':exec i≍' -docstring '≍ Solo | Couple' + map buffer bqn 'Z' ':exec i⋈' -docstring '⋈ Enclose | Pair' + map buffer bqn 'r' ':exec i↑' -docstring '↑ Prefixes | Take' + map buffer bqn 'c' ':exec i↓' -docstring '↓ Suffixes | Drop' + map buffer bqn 'd' ':exec i↕' -docstring '↕ Range | Windows' + map buffer bqn 'H' ':exec i«' -docstring '« ShiftBefore | ReplaceEnd' + map buffer bqn 'L' ':exec i»' -docstring '» ShiftAfter | ReplaceStart' + map buffer bqn 'q' ':exec i⌽' -docstring '⌽ Reverse | Rotate' + map buffer bqn 'a' ':exec i⍉' -docstring '⍉ Transpose | ReorderAxis' + map buffer bqn 'T' ':exec i⍋' -docstring '⍋ GradeUp | BinsUp' + map buffer bqn 'V' ':exec i⍒' -docstring '⍒ GradeDown | BinsDown' + map buffer bqn 'i' ':exec i⊏' -docstring '⊏ FirstCell | Select' + map buffer bqn 'I' ':exec i⊑' -docstring '⊑ First | Pick' + map buffer bqn 'o' ':exec i⊐' -docstring '⊐ Classify | IndexOf' + map buffer bqn 'O' ':exec i⊒' -docstring '⊒ VisitCount | AdvanceIndexOf' + map buffer bqn 'e' ':exec i∊' -docstring '∊ MarkFirst | MemberOf' + map buffer bqn 'E' ':exec i⍷' -docstring '⍷ Deduplicate | Find' + map buffer bqn 'u' ':exec i⊔' -docstring '⊔ GroupIndices | Group' + # / / / Indices | Replicate + # ! ! ! Assert | AssertMsg + + map buffer bqn '"' ':exec i˙' -docstring '˙ _constant' + map buffer bqn '`' ':exec i˜' -docstring '˜ _self | _swap' + map buffer bqn '1' ':exec i˘' -docstring '˘ _cells' + map buffer bqn '2' ':exec i¨' -docstring '¨ _each' + map buffer bqn '3' ':exec i⁼' -docstring '⁼ _undo' + map buffer bqn '4' ':exec i⌜' -docstring '⌜ _table' + map buffer bqn '5' ':exec i´' -docstring '´ _fold' + map buffer bqn '6' ':exec i˝' -docstring '˝ _insert' + # ` ` ` _scan + map buffer bqn 'j' ':exec i∘' -docstring '∘ _atop_' + map buffer bqn 'k' ':exec i○' -docstring '○ _over_' + map buffer bqn 'h' ':exec i⊸' -docstring '⊸ _bind_before_' + map buffer bqn 'l' ':exec i⟜' -docstring '⟜ _bind_after_' + map buffer bqn 'K' ':exec i⌾' -docstring '⌾ _under_' + map buffer bqn '%' ':exec i⊘' -docstring '⊘ _valences_' + map buffer bqn '$' ':exec i◶' -docstring '◶ _choose_' + map buffer bqn '^' ':exec i⎊' -docstring '⎊ _catch_' + map buffer bqn '!' ':exec i⎉' -docstring '⎉ _rank_' + map buffer bqn '@' ':exec i⚇' -docstring '⚇ _depth_' + map buffer bqn '#' ':exec i⍟' -docstring '⍟ _repeat_' + map buffer bqn '[' ':exec i←' -docstring '← DEFINE' + map buffer bqn '?' ':exec i⇐' -docstring '⇐ EXPORT' + map buffer bqn "'" ':exec i↩' -docstring '↩ CHANGE' + map buffer bqn ';' ':exec i⋄' -docstring '⋄ SEPERATOR' + map buffer bqn '(' ':exec i⟨' -docstring '⟨ BEGIN LIST' + map buffer bqn ')' ':exec i⟩' -docstring '⟩ END LIST' + map buffer bqn ':exec i‿' -docstring '‿ STRAND' + map buffer bqn ':' ':exec i·' -docstring '· NOTHING' + map buffer bqn '0' ':exec i•' -docstring '• SYSTEM' + + map buffer bqn 'w' ':exec i𝕨' -docstring '𝕨 left argument' + map buffer bqn 'W' ':exec i𝕎' -docstring '𝕎 left argument function' + map buffer bqn 'x' ':exec i𝕩' -docstring '𝕩 right argument' + map buffer bqn 'X' ':exec i𝕏' -docstring '𝕏 right argument function' + map buffer bqn 'f' ':exec i𝕗' -docstring '𝕗 left operand' + map buffer bqn 'F' ':exec i𝔽' -docstring '𝔽 left operand function' + map buffer bqn 'g' ':exec i𝕘' -docstring '𝕘 right operand' + map buffer bqn 'G' ':exec i𝔾' -docstring '𝔾 right operand function' + map buffer bqn 's' ':exec i𝕤' -docstring '𝕤 self' + map buffer bqn 'S' ':exec i𝕊' -docstring '𝕊 self function' + map buffer bqn 'R' ':exec i𝕣' -docstring '𝕣 self modifier' + + map buffer bqn '9' ':exec i¯' -docstring '¯ minus' + map buffer bqn 'p' ':exec iπ' -docstring 'π constant pi' + map buffer bqn '8' ':exec i∞' -docstring '∞ constant infinity' + # @ constant null character + # # COMMENT hook -once -always window WinSetOption filetype=.* %{ remove-hooks window bqn-.+ } ¹ -- cgit v1.2.3