diff --git a/init.el b/init.el index 8113d5e..3ebe91d 100644 --- a/init.el +++ b/init.el @@ -439,17 +439,44 @@ :custom (dyalog-fix-whitespace-before-save t)) +(use-package gnu-apl-mode + :straight t) + (use-package bqn-mode - :straight (:host github :repo "mlochbaum/BQN" :files ("editors/emacs/*.el")) + :straight (:host github :repo "AndersonTorres/bqn-mode") :after gnu-apl-mode :custom (bqn-key-prefix ?ù) :config (defface bqn-default '((t (:height 140 :family "BQN386 Unicode"))) t) + (defun bqn-init () (setq buffer-face-mode-face 'bqn-default) (buffer-face-mode)) - (add-hook 'bqn-mode-hook 'bqn-init)) + + (add-hook 'bqn-mode-hook 'bqn-init) + + (setq bqn-interpreter-path "~/build/CBQN/BQN") + (setq bqn-keyboard-map + " + ┌───────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┐ + ┊(AltGr)┊~ ¬ ┊# ⍟ ┊{ ⊣ ┊[ ← ┊| ┊` ˜ ┊\\ ┊^ ⎊ ┊@ ┊] → ┊} ⊢ ┊ +┌─┴──┬────┼────┼────┼────┼────┼────┼────┼────┼────┼────┼────┼────┼─────────┐ +│ │1 ˘ │2 ¨ │3 ⁼ │4 ⌜ │5 ´ │6 ˝ │7 │8 ∞ │9 ¯ │0 • │° │+ ⋆ │Backspace│ +│² │& ⍎ │é │\" ˙ │' ↩ │( ⟨ │- ÷ │è │_ √ │ç │à │) ⟩ │= × │ │ +├────┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬──────┤ +│Tab │A ↖ │Z │E ⍷ │R 𝕣 │T ⍋ │Y │U │I ⊑ │O ⊒ │P ⍳ │¨ │£ │Enter │ +│ │a ⍉ │z ⥊ │e ∊ │r ↑ │t ∧ │y │u ⊔ │i ⊏ │o ⊐ │p π │^ ⎊ │$ ◶ │ │ +├───────┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┐ │ +│Caps │Q ↙ │S 𝕊 │D │F 𝔽 │G 𝔾 │H « │J │K ⌾ │L » │M ≢ │% ⊘ │µ │ │ +│Lock │q ⌽ │s 𝕤 │d ↕ │f 𝕗 │g 𝕘 │h ⊸ │j ∘ │k ○ │l ⟜ │m ≡ │ù │* ⍕ │ │ +├────────┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴────┴─────┤ +│Shift │W 𝕎 │X 𝕏 │C │V ⍒ │B ⌈ │N │? ⇐ │. ≍ │/ ≠ │§ ⎉ │Shift │ +│ │w 𝕨 │x 𝕩 │c ↓ │v ∨ │b ⌊ │n │, ∾ │; ⋄ │: · │! ⎉ │ │ +└───────────┴────┴────┴────┴────┴────┴────┴────┴────┴────┴────┴────────────┘ + Space: ‿ +") + (add-hook 'bqn-keymap-mode-hook 'bqn-init)) (use-package tex-site :defer t