From 6004c7fc7f30e651ffe112ada25cdb2ce5cdc40c Mon Sep 17 00:00:00 2001 From: Andelf Date: Sun, 21 Aug 2022 07:54:11 +0800 Subject: [PATCH] fix(shortcut): refine keyname trans --- .../frontend/modules/shortcut/data_helper.cljs | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/main/frontend/modules/shortcut/data_helper.cljs b/src/main/frontend/modules/shortcut/data_helper.cljs index 2b831aad2..c592639d4 100644 --- a/src/main/frontend/modules/shortcut/data_helper.cljs +++ b/src/main/frontend/modules/shortcut/data_helper.cljs @@ -46,14 +46,16 @@ (defn normalize-user-keyname [k] - (some-> k - (util/safe-lower-case) - (str/replace #";+" "semicolon") - (str/replace #"=+" "equals") - (str/replace #"~+" "dash") - (str/replace "[" "open-square-bracket") - (str/replace "]" "close-square-bracket") - (str/replace "'" "single-quote"))) + (let [keynames {";" "semicolon" + "=" "equals" + "-" "dash" + "[" "open-square-bracket" + "]" "close-square-bracket" + "'" "single-quote"}] + (some-> k + (util/safe-lower-case) + (str/replace #"[;=-\[\]']" (fn [s] + (get keynames s)))))) ;; returns a vector to preserve order (defn binding-by-category [name]