about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--thogai.el17
1 files changed, 17 insertions, 0 deletions
diff --git a/thogai.el b/thogai.el
index daa9372..3039583 100644
--- a/thogai.el
+++ b/thogai.el
@@ -347,6 +347,23 @@ External callers should always pass nil as the value."
         (save-excursion
           (left-word)
           (delete-char -1)))
+       ;; Key
+       ((pred (lambda (translation)
+                (member (downcase translation)
+                        (list "{#left}" "{#right}" "{#up}" "{#down}"
+                              "{#backspace}" "{#delete}" "{#return}"
+                              "{#space}" "{#tab}"))))
+        (call-interactively
+         (key-binding
+          (kbd (pcase (downcase
+                       (string-remove-prefix
+                        "{#" (string-remove-suffix "}" translation)))
+                 ("backspace" "DEL")
+                 ("delete" "<deletechar>")
+                 ("return" "RET")
+                 ("space" "SPC")
+                 ("tab" "TAB")
+                 (key-name (concat "<" key-name ">")))))))
        ;; Simple literal translation
        (_
         (unless non-first-part-p