aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/repl.js4
-rw-r--r--editors/BQN.keylayout2
-rw-r--r--editors/XCompose1
-rw-r--r--editors/bqn4
-rw-r--r--editors/inputrc2
-rw-r--r--editors/kak/autoload/filetype/bqn.kak4
-rw-r--r--editors/vim/autoload/bqn.txt1
-rw-r--r--editors/vim/keymap/bqn.vim2
-rw-r--r--editors/vim/syntax/bqn.vim2
9 files changed, 12 insertions, 10 deletions
diff --git a/docs/repl.js b/docs/repl.js
index 8fcc435a..182f26b2 100644
--- a/docs/repl.js
+++ b/docs/repl.js
@@ -114,8 +114,8 @@ let typeChar = (t, c, ev) => {
let syncls={ v:"Value", f:"Function", m:"Modifier", d:"Modifier2", n:"Number", g:"Gets", p:"Paren", b:"Bracket", k:"Brace", l:"Ligature", n:"Nothing", s:"Separator", c:"Comment", a:"String" };
let keydesc='f+Conjugate;Add_f-Negate;Subtract_f×Sign;Multiply_f÷Reciprocal;Divide_f⋆Exponential;Power_f√Square Root;Root_f⌊Floor;Minimum_f⌈Ceiling;Maximum_f∧Sort Up;And_f∨Sort Down;Or_f¬Not;Span_f|Absolute Value;Modulus_f≤Less Than or Equal to_f<Enclose;Less Than_f>Merge;Greater Than_f≥Greater Than or Equal to_f=Rank;Equals_f≠Length;Not Equals_f≡Depth;Match_f≢Shape;Not Match_f⊣Identity;Left_f⊢Identity;Right_f⥊Deshape;Reshape_f∾Join;Join to_f≍Solo;Couple_f↑Prefixes;Take_f↓Suffixes;Drop_f↕Range;Windows_f«Shift Before_f»Shift After_f⌽Reverse;Rotate_f⍉Transpose;Reorder axes_f/Indices;Replicate_f⍋Grade Up;Bins Up_f⍒Grade Down;Bins Down_f⊏First Cell;Select_f⊑First;Pick_f⊐Classify;Index of_f⊒Occurrence Count;Progressive Index of_f∊Mark First;Member of_f⍷Deduplicate;Find_f⊔Group Indices;Group_f!Assert;Assert with message_m˙Constant_m˜Self/Swap_d∘Atop_d○Over_d⊸Before/Bind_d⟜After/Bind_d⌾Under_d⊘Valences_d◶Choose_d⎊Catch_d⎉Rank_m˘Cells_d⚇Depth_m¨Each_m⌜Table_d⍟Repeat_m⁼Undo_m´Fold_m˝Insert_m`Scan_g←Define_g⇐Export_g↩Change_g→Return_s⋄Separator_s,Separator_v.Namespace field_p(Begin expression_p)End expression_k{Begin block_k}End block_b⟨Begin list_b⟩End list_l‿Strand_n·Nothing_v•System_v𝕨Left argument_f𝕎Left argument (as function)_v𝕩Right argument_f𝕏Right argument (as function)_v𝕗Modifier left operand (as subject)_f𝔽Modifier left operand_v𝕘2-modifier right operand (as subject)_f𝔾2-modifier right operand_v𝕤Current function (as subject)_f𝕊Current function_m𝕣Current modifier_n¯Minus_nπPi_n∞Infinity_a@Null character_c#Comment'.split(/[\n_]/);
-let kk=Array.from('`123456890-=~!@#$%^&*()_+qwertuiop[]QWERTIOP{}asdfghjkl;ASFGHKL:"zxcvbm,./XVBM<>? \'');
-let kv=Array.from('˜˘¨⁼⌜´˝∞¯•÷׬⎉⚇⍟◶⊘⎊⍎⍕⟨⟩√⋆⌽𝕨∊↑∧⊔⊏⊐π←→↙𝕎⍷𝕣⍋⊑⊒⍳⊣⊢⍉𝕤↕𝕗𝕘⊸∘○⟜⋄↖𝕊𝔽𝔾«⌾»·˙⥊𝕩↓∨⌊≡∾≍≠𝕏⍒⌈≢≤≥⇐‿↩');
+let kk=Array.from('`123456890-=~!@#$%^&*()_+qwertuiop[]QWERTIOP{}asdfghjkl;ASFGHKL:"zxcvbm,./ZXVBM<>? \'');
+let kv=Array.from('˜˘¨⁼⌜´˝∞¯•÷׬⎉⚇⍟◶⊘⎊⍎⍕⟨⟩√⋆⌽𝕨∊↑∧⊔⊏⊐π←→↙𝕎⍷𝕣⍋⊑⊒⍳⊣⊢⍉𝕤↕𝕗𝕘⊸∘○⟜⋄↖𝕊𝔽𝔾«⌾»·˙⥊𝕩↓∨⌊≡∾≍≠⋈𝕏⍒⌈≢≤≥⇐‿↩');
let keys={}, revkeys={}, primhelp={};
kk.map((k,i)=>{keys[k]=kv[i];revkeys[kv[i]]=k;});
doc.kb.innerHTML = keydesc
diff --git a/editors/BQN.keylayout b/editors/BQN.keylayout
index 108c09aa..d32715b2 100644
--- a/editors/BQN.keylayout
+++ b/editors/BQN.keylayout
@@ -490,7 +490,7 @@
<key code="3" output="𝔽"/>
<key code="4" output="«"/>
<key code="5" output="𝔾"/>
- <key code="6" output=""/>
+ <key code="6" output="⋈"/>
<key code="7" output="𝕏"/>
<key code="8" output=""/>
<key code="9" output="⍒"/>
diff --git a/editors/XCompose b/editors/XCompose
index 4d892e9d..4c07a07c 100644
--- a/editors/XCompose
+++ b/editors/XCompose
@@ -77,6 +77,7 @@
<Multi_key> <backslash> <comma> : "∾"
<Multi_key> <backslash> <period> : "≍"
<Multi_key> <backslash> <slash> : "≠"
+<Multi_key> <backslash> <Z> : "⋈"
<Multi_key> <backslash> <X> : "𝕏"
<Multi_key> <backslash> <V> : "⍒"
<Multi_key> <backslash> <B> : "⌈"
diff --git a/editors/bqn b/editors/bqn
index 3f6f19f9..bbe02228 100644
--- a/editors/bqn
+++ b/editors/bqn
@@ -10,7 +10,7 @@
// │Caps │A ↖ │S 𝕊 │D │F 𝔽 │G 𝔾 │H « │J │K ⌾ │L » │: · │" ˙ │Enter │
// │Lock │a ⍉ │s 𝕤 │d ↕ │f 𝕗 │g 𝕘 │h ⊸ │j ∘ │k ○ │l ⟜ │; ⋄ │' ↩ │ │
// ├────────┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──────────┤
-// │Shift │Z │X 𝕏 │C │V ⍒ │B ⌈ │N │M ≢ │< ≤ │> ≥ │? ⇐ │Shift │
+// │Shift │Z ⋈ │X 𝕏 │C │V ⍒ │B ⌈ │N │M ≢ │< ≤ │> ≥ │? ⇐ │Shift │
// │ │z ⥊ │x 𝕩 │c ↓ │v ∨ │b ⌊ │n │m ≡ │, ∾ │. ≍ │/ ≠ │ │
// └───────────┴────┴────┴────┴────┴────┴────┴────┴────┴────┴────┴────────────┘
// Space: ‿
@@ -59,7 +59,7 @@ xkb_symbols "bqn" {
key <AC11> { [ U021A9, U002D9 ] }; // '↩˙
key <AC12> { [ ] }; // /
- key <AB01> { [ U0294A ] }; // Z⥊
+ key <AB01> { [ U0294A, U022C8 ] }; // Z⥊⋈
key <AB02> { [ U1D569, U1D54F ] }; // X𝕩𝕏
key <AB03> { [ U02193 ] }; // C↓
key <AB04> { [ U02228, U02352 ] }; // V∨⍒
diff --git a/editors/inputrc b/editors/inputrc
index 3acc83a2..5d30534c 100644
--- a/editors/inputrc
+++ b/editors/inputrc
@@ -90,7 +90,7 @@
"\\," "∾"
"\\." "≍"
"\\/" "≠"
-"\\Z" "Z"
+"\\Z" "⋈"
"\\X" "𝕏"
"\\C" "C"
"\\V" "⍒"
diff --git a/editors/kak/autoload/filetype/bqn.kak b/editors/kak/autoload/filetype/bqn.kak
index 7a951bf9..19676fe7 100644
--- a/editors/kak/autoload/filetype/bqn.kak
+++ b/editors/kak/autoload/filetype/bqn.kak
@@ -27,7 +27,7 @@ hook global WinSetOption filetype=bqn %¹
b='˜˘¨⁼⌜´˝7∞¯•×' ;b+='¬⎉⚇⍟◶⊘⎊⍎⍕⟨⟩√⋆'
b+='⌽𝕨∊↑∧y⊔⊏⊐π←→';b+='↙𝕎⍷𝕣⍋YU⊑⊒⍳⊣⊢'
b+='⍉𝕤↕𝕗𝕘⊸∘○⟜⋄\' ;b+='↖𝕊D𝔽𝔾«J⌾»·˙|'
- b+='⥊𝕩↓∨⌊n≡∾≍≠' ;b+='Z𝕏C⍒⌈N≢≤≥⇐'
+ b+='⥊𝕩↓∨⌊n≡∾≍≠' ;b+='⋈𝕏C⍒⌈N≢≤≥⇐'
for (( i=0; i<${#a}; i++ )); do
o=${b:$i:1}
@@ -70,7 +70,7 @@ add-highlighter shared/bqn/code/ regex "(?<![A-Z_a-z0-9π∞¯])¯?(¯_*)?((\d[\
add-highlighter shared/bqn/code/ regex "\." 0:normal
add-highlighter shared/bqn/code/ regex "[𝕗𝕘𝕨𝕩𝕤]" 0:normal
add-highlighter shared/bqn/code/ regex "•|•?\b[a-z][A-Z_a-z0-9π∞¯]*|𝕣" 0:normal
-add-highlighter shared/bqn/code/ regex "[𝔽𝔾𝕎𝕏𝕊+\-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!⍕⍎]" 0:green
+add-highlighter shared/bqn/code/ regex "[𝔽𝔾𝕎𝕏𝕊+\-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍⋈↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!⍕⍎]" 0:green
add-highlighter shared/bqn/code/ regex "•?\b[A-Z][A-Z_a-z0-9π∞¯]*" 0:green
add-highlighter shared/bqn/code/ regex "[˙˜˘¨⌜⁼´˝`]" 0:magenta
add-highlighter shared/bqn/code/ regex "•?\b_[A-Za-z][A-Z_a-z0-9π∞¯]*|_𝕣" 0:magenta
diff --git a/editors/vim/autoload/bqn.txt b/editors/vim/autoload/bqn.txt
index 10df77e5..2eac6292 100644
--- a/editors/vim/autoload/bqn.txt
+++ b/editors/vim/autoload/bqn.txt
@@ -55,6 +55,7 @@
⥊ Deshape ; Reshape
∾ Join ; Join to
≍ Solo ; Couple
+⋈ Enlist ; Pair
↑ Prefixes ; Take
↓ Suffixes ; Drop
↕ Range ; Windows
diff --git a/editors/vim/keymap/bqn.vim b/editors/vim/keymap/bqn.vim
index a4759b0f..2b5ed0fd 100644
--- a/editors/vim/keymap/bqn.vim
+++ b/editors/vim/keymap/bqn.vim
@@ -12,7 +12,7 @@ let a.='zxcvbnm,./ ZXCVBNM<>? '
let b ='˜˘¨⁼⌜´˝7∞¯•÷× ¬⎉⚇⍟◶⊘⎊⍎⍕⟨⟩√⋆'
let b.='⌽𝕨∊↑∧y⊔⊏⊐π←→ ↙𝕎⍷𝕣⍋YU⊑⊒⍳⊣⊢ '
let b.='⍉𝕤↕𝕗𝕘⊸∘○⟜⋄↩\ ↖𝕊D𝔽𝔾«J⌾»·˙| '
-let b.='⥊𝕩↓∨⌊n≡∾≍≠ Z𝕏C⍒⌈N≢≤≥⇐ '
+let b.='⥊𝕩↓∨⌊n≡∾≍≠ ⋈𝕏C⍒⌈N≢≤≥⇐ '
let[a,b]=map([a,b],{i,x->split(x,'\zs *')})
let a+=['<space>']|let b+=['‿']
diff --git a/editors/vim/syntax/bqn.vim b/editors/vim/syntax/bqn.vim
index 45f1cbe9..c794bb33 100644
--- a/editors/vim/syntax/bqn.vim
+++ b/editors/vim/syntax/bqn.vim
@@ -12,7 +12,7 @@ syn match bqnarw "[←⇐↩→]"
syn match bqnchr "'.'"
syn match bqn1md "[˙˜˘¨⌜⁼´˝`]"
syn match bqn2md "[∘○⊸⟜⌾⊘◶⎉⚇⍟⎊]"
-syn match bqnfun "[𝔽𝔾𝕎𝕏𝕊+\-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!⍕⍎]"
+syn match bqnfun "[𝔽𝔾𝕎𝕏𝕊+\-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍⋈↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!⍕⍎]"
syn match bqnsub "[𝕗𝕘𝕨𝕩𝕤]"
syn match bqnnot "·"
syn match bqnnul "@"