aboutsummaryrefslogtreecommitdiff
path: root/qml/commands.js
diff options
context:
space:
mode:
authorAdrian Kummerlaender2015-08-09 20:10:38 +0200
committerAdrian Kummerlaender2015-08-09 20:10:38 +0200
commit22276404e5c3f3833a2de5f1971be24f0729aa6e (patch)
tree4a846db44335097894a26bef95c96aedaa19c858 /qml/commands.js
parent3d618159831b6379f2aefc27d8f744fd46a9f3d2 (diff)
downloadMetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.tar
MetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.tar.gz
MetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.tar.bz2
MetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.tar.lz
MetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.tar.xz
MetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.tar.zst
MetaTerm-22276404e5c3f3833a2de5f1971be24f0729aa6e.zip
Implement basic command dispatch logic
Moved command implementation into separate ressource. Commands are plain JavaScript functions in this separate ressource and as such callable via a simple call to `eval`. Introduced the concept of a command prefix to enable implementation of e.g. a search command analogously to _vim_.
Diffstat (limited to 'qml/commands.js')
-rw-r--r--qml/commands.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/qml/commands.js b/qml/commands.js
new file mode 100644
index 0000000..ee13a1b
--- /dev/null
+++ b/qml/commands.js
@@ -0,0 +1,19 @@
+function execute(command) {
+ var args = command.split(' ');
+ var func = args[0];
+ args.shift();
+
+ eval(func + '(' + JSON.stringify(args) + ')');
+}
+
+function exec(args) {
+ eval(args.join(' '));
+}
+
+function next() {
+ terminalList.selectNext();
+}
+
+function prev() {
+ terminalList.selectPrev();
+}