From 7556081aefb12fe2e064680388c52ddbc453cbef Mon Sep 17 00:00:00 2001 From: Sander Hautvast Date: Tue, 2 Mar 2021 19:21:48 +0100 Subject: [PATCH] prevent unwanted line split, and better handling of parsing errors --- src/js/index.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/js/index.js b/src/js/index.js index 72a3cc4..b1018dd 100644 --- a/src/js/index.js +++ b/src/js/index.js @@ -66,6 +66,12 @@ export const adjust_input_element_height = function () { } } +command_input_element.onkeypress = function handle_key_input(event) { + if (event.key === 'Enter') { + event.preventDefault(); + } +} + command_input_element.onkeyup = function handle_key_input(event) { adjust_input_element_height(); if (event.key === 'ArrowUp' && !event.shiftKey) { @@ -100,10 +106,11 @@ const handle_enter = function () { command_history_element.innerText += command + "\n"; command_input_element.value = ''; command_history_index = command_history.length; - let tokens = scan(command); - let statement = parse(tokens); + let value; try { + let tokens = scan(command); + let statement = parse(tokens); value = visit(statement); let binding; if (value.is_binding) { // if it's declaration work with the initializer