aboutsummaryrefslogtreecommitdiff
path: root/src/keymap
diff options
context:
space:
mode:
Diffstat (limited to 'src/keymap')
-rw-r--r--src/keymap/KeymapEvaluator.cpp10
-rw-r--r--src/keymap/KeymapEvaluator.hpp1
2 files changed, 11 insertions, 0 deletions
diff --git a/src/keymap/KeymapEvaluator.cpp b/src/keymap/KeymapEvaluator.cpp
index baae819..b20aeda 100644
--- a/src/keymap/KeymapEvaluator.cpp
+++ b/src/keymap/KeymapEvaluator.cpp
@@ -11,6 +11,8 @@ void KeymapEvaluator::addKeymap(KeyMode mode, QString key, KeyAction action) {
if (!modalKeys.contains(mode))
modalKeys.insert(mode, {});
+ qDebug() << " " << mode << key;
+
auto keySeq = keySeqParser.parse(key);
modalKeys[mode].append((KeyMap){.keySequence = keySeq, .action = action});
}
@@ -57,3 +59,11 @@ const QList<KeyMap> *KeymapEvaluator::currentModeKeys() {
return &modalKeys[currentMode];
}
+
+KeyMode KeymapEvaluator::modeFromString(QString modeString) {
+ if (modeString == "n")
+ return KeyMode::Normal;
+ if (modeString == "i")
+ return KeyMode::Insert;
+ return KeyMode::Normal;
+}
diff --git a/src/keymap/KeymapEvaluator.hpp b/src/keymap/KeymapEvaluator.hpp
index db93900..b98a881 100644
--- a/src/keymap/KeymapEvaluator.hpp
+++ b/src/keymap/KeymapEvaluator.hpp
@@ -26,6 +26,7 @@ public:
void addKeymap(KeyMode mode, QString key, KeyAction action);
bool evaluate(Qt::KeyboardModifiers modifiers, Qt::Key key);
+ KeyMode modeFromString(QString modeString);
DEFINE_SETTER(setCurrentMode, currentMode)
DEFINE_GETTER(getCurrentMode, currentMode)