forked from lokedhs/gnu-apl-mode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgnu-apl-input.el
More file actions
31 lines (27 loc) · 1.35 KB
/
gnu-apl-input.el
File metadata and controls
31 lines (27 loc) · 1.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
;;; -*- lexical-binding: t -*-
(require 'quail)
(quail-define-package "APL-Z" "UTF-8" "⍞" t
"Input mode for APL"
'(("\t" . quail-completion))
t ; forget-last-selection
nil ; deterministic
nil ; kbd-translate
t ; show-layout
nil ; create-decode-map
nil ; maximum-shortest
nil ; overlay-plist
nil ; update-translation-function
nil ; conversion-keys
t ; simple
)
(quail-select-package "APL-Z")
(macrolet ((make-quail-define-rules ()
(let ((prefix "."))
`(quail-define-rules
,@(loop for command in gnu-apl--symbols
for key-command = (third command)
append (loop for s in (if (listp key-command) key-command (list key-command))
collect (list (concat prefix s)
(second command))))
(,(concat prefix prefix) ,prefix)))))
(make-quail-define-rules))