diff options
author | Vladimir Kharitonov <Vladimir.Kharitonov@jetbrains.com> | 2023-08-08 18:31:57 +0200 |
---|---|---|
committer | Vladimir Kharitonov <Vladimir.Kharitonov@jetbrains.com> | 2023-08-09 20:59:26 +0200 |
commit | d25e39a3498f4d108f9de64caf5bf0395b16ef05 (patch) | |
tree | 90a71b1a8c0676a09cb6dd8b11d5ab51b35cbc8c | |
parent | ff32f9f67833169466a063977fd937da30dce835 (diff) | |
download | jcef-d25e39a3498f4d108f9de64caf5bf0395b16ef05.tar.gz |
JBR-5928: regression test for keyboard OSR
-rw-r--r-- | build.xml | 7 | ||||
-rw-r--r-- | java_tests/tests/junittests/KeyboardOSRTest.java | 247 | ||||
-rw-r--r-- | java_tests/tests/junittests/data/keyboard_scenario_mac.json | 64913 | ||||
-rw-r--r-- | java_tests/tests/keyboard/Scenario.java | 219 | ||||
-rw-r--r-- | java_tests/tests/keyboard/ScenarioMaker.java | 244 | ||||
-rw-r--r-- | jb/project/java-gradle/build.gradle | 4 | ||||
-rw-r--r-- | jb/project/java-gradle/gradle.properties | 2 | ||||
-rw-r--r-- | third_party/gson/gson-2.10.1.jar | bin | 0 -> 283367 bytes |
8 files changed, 65635 insertions, 1 deletions
@@ -62,6 +62,7 @@ </path> <path id="class.path.tests"> + <fileset dir="third_party/gson" includes="gson-2.10.1.jar"/> <fileset dir="third_party/junit" includes="junit-platform-console-standalone-1.10.0.jar"/> <fileset dir="third_party/jakarta" includes="jakarta.xml.bind-api-2.3.2.jar"/> <fileset dir="${out.path}" includes="jcef.jar"/> @@ -90,6 +91,7 @@ <target name="compile.tests"> <mkdir dir="${out.path}/tmp"/> <mkdir dir="${out.path}/tests"/> + <mkdir dir="${out.path}/tests/junittests/data"/> <!-- Javac will always recompile the tests due to https://ant.apache.org/faq.html#always-recompiles --> <javac encoding="UTF8" nowarn="on" deprecation="off" debug="on" includeantruntime="false" fork="true" destdir="${out.path}/tmp"> @@ -97,6 +99,11 @@ <src path="java_tests/tests/"/> <include name="**/*.java"/> </javac> + + <copy todir="${out.path}/tests/junittests/data"> + <fileset dir="java_tests/tests/junittests/data" includes="*" /> + </copy> + <move file="${out.path}/tmp/tests" tofile="${out.path}/tests"/> <delete dir="${out.path}/tmp"/> </target> diff --git a/java_tests/tests/junittests/KeyboardOSRTest.java b/java_tests/tests/junittests/KeyboardOSRTest.java new file mode 100644 index 0000000..ec7da70 --- /dev/null +++ b/java_tests/tests/junittests/KeyboardOSRTest.java @@ -0,0 +1,247 @@ +package tests.junittests; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.reflect.TypeToken; +import org.cef.browser.CefBrowser; +import org.cef.browser.CefFrame; +import org.cef.browser.CefMessageRouter; +import org.cef.callback.CefQueryCallback; +import org.cef.handler.CefMessageRouterHandlerAdapter; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; +import tests.JBCefOsrHandler; +import tests.keyboard.Scenario; + +import java.io.File; +import java.io.IOException; +import java.lang.reflect.Type; +import java.net.URISyntaxException; +import java.nio.file.Files; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Condition; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; +import java.util.stream.Stream; + +@ExtendWith(TestSetupExtension.class) +public class KeyboardOSRTest { + static final String PAGE_URL = "https://some.url/"; + private static final String KEY_EVENT_CALLBACK_NAME = "_cef_on_key_event"; + private static final List<Scenario> outputScenarios = new ArrayList<>(); + private static final String KEYBOARD_TEST_OUTPUT_FILE = System.getenv("KEYBOARD_TEST_OUTPUT_FILE"); + private static final boolean UPDATE_REFERENCE = KEYBOARD_TEST_OUTPUT_FILE != null && !KEYBOARD_TEST_OUTPUT_FILE.isEmpty(); + + // language=HTML + final static String PAGE_HTML = "<!DOCTYPE html>\n" + + "<html lang=\"en\">\n" + + "<head>\n" + + " <script>\n" + + " /**\n" + + " * @param {KeyboardEvent}e\n" + + " * @returns {string}\n" + + " */\n" + + " function eventToString(e) {\n" + + " return JSON.stringify({\n" + + " 'type': e.type,\n" + + " 'key': e.key,\n" + + " 'code': e.code,\n" + + " 'location': e.location,\n" + + " 'altKey': e.altKey,\n" + + " 'ctrlKey': e.ctrlKey,\n" + + " 'metaKay': e.metaKey,\n" + + " 'shiftKey': e.shiftKey,\n" + + " })\n" + + " }\n" + + " function sendEvent(e) {\n" + + " const msg = eventToString(e)\n" + + " console.log(`New event: ${msg}`)\n" + + " window." + KEY_EVENT_CALLBACK_NAME + "({\n" + + " request: msg,\n" + + " persistent: true,\n" + + " onSuccess: function(response) {},\n" + + " onFailure: function(error_code, error_message) {}\n" + + " })\n" + + " }\n" + + " document.addEventListener('keydown', sendEvent, false);\n" + + " document.addEventListener('keypress', sendEvent, false);\n" + + " document.addEventListener('keyup', sendEvent, false);\n" + + " </script>\n" + + " <title>keyboard test</title>\n" + + "</head>\n" + + "<body></body>\n" + + "</html>"; + private static MyFrame myFrame = null; + private static final EventsWaiter eventsWaiter = new EventsWaiter(); + private static CountDownLatch callbackLatch = new CountDownLatch(1); + + @BeforeAll + public static void before() throws InterruptedException { + myFrame = new MyFrame(); + myFrame.awaitLoad(); + } + + @AfterAll + public static void after() throws IOException { + myFrame.closeBrowser(); + myFrame.awaitCompletion(); + File file = getScenarioFile(); + if (UPDATE_REFERENCE && file != null) { + String jsonString = new GsonBuilder() + .setPrettyPrinting() + .create() + .toJson(outputScenarios.toArray()); + + Files.write(file.toPath(), jsonString.getBytes()); + } + } + + private static Stream<Scenario> getScenarios() throws IOException { + File file = getScenarioFile(); + if (file == null) { + return Stream.empty(); + } + String jsonText = Files.readString(file.toPath()); + + Type typeToken = new TypeToken<ArrayList<Scenario>>() { + }.getType(); + ArrayList<Scenario> scenarios = new Gson().fromJson(jsonText, typeToken); + return scenarios.stream().filter(scenario -> !Objects.requireNonNullElse(scenario.comments, "").toLowerCase().contains("disable")); + } + + private static File getScenarioFile() { + if (KEYBOARD_TEST_OUTPUT_FILE != null) { + return new File(KEYBOARD_TEST_OUTPUT_FILE); + } + String scenarioPath; + String osName = System.getProperty("os.name", "").toLowerCase(); + if (osName.startsWith("mac")) { + scenarioPath = "data/keyboard_scenario_mac.json"; + } else { + return null; + } + + try { + return new File(Objects.requireNonNull(KeyboardOSRTest.class.getResource(scenarioPath)).toURI()); + } catch (URISyntaxException e) { + return null; + } + } + + @ParameterizedTest + @MethodSource("getScenarios") + void doTest(Scenario scenario) throws InterruptedException { + System.err.println("Testing '" + scenario.name + "'"); + eventsWaiter.setup(); + for (Scenario.EventDataJava data : scenario.eventsJava) { + callbackLatch = new CountDownLatch(1); + myFrame.browser_.sendKeyEvent(data.makeKeyEvent(myFrame.browser_.getUIComponent())); + callbackLatch.await(200, TimeUnit.MILLISECONDS); + } + List<Scenario.EventDataJS> eventsJS = eventsWaiter.get(); + + if (!UPDATE_REFERENCE) { + Assertions.assertFalse(eventsJS.isEmpty()); + Assertions.assertEquals(scenario.eventsJSExpected, eventsJS); + } + outputScenarios.add(new Scenario(scenario.name, scenario.comments, scenario.eventsJava, eventsJS)); + } + + static class MyFrame extends TestFrame { + private final CountDownLatch myInitLatch = new CountDownLatch(1); + + @Override + protected void setupTest() { + CefMessageRouter.CefMessageRouterConfig config = new CefMessageRouter.CefMessageRouterConfig(); + config.jsQueryFunction = KEY_EVENT_CALLBACK_NAME; + var router = CefMessageRouter.create(config); + router.addHandler(new CefMessageRouterHandlerAdapter() { + @Override + public boolean onQuery(CefBrowser browser, CefFrame frame, long queryId, String request, boolean persistent, CefQueryCallback callback) { + System.err.println("Received scenario: " + request); + eventsWaiter.addEvent(Scenario.EventDataJS.fromJson(request)); + callbackLatch.countDown(); + return true; + } + }, true); + client_.addMessageRouter(router); + + + addResource(PAGE_URL, PAGE_HTML, "text/html"); + String isOsr = System.getProperty("jcef.tests.osr"); + System.setProperty("jcef.tests.osr", "true"); + createBrowser(PAGE_URL); + System.setProperty("jcef.tests.osr", isOsr); + } + + @Override + public void onLoadEnd(CefBrowser browser, CefFrame frame, int httpStatusCode) { + Assertions.assertEquals(200, httpStatusCode); + myInitLatch.countDown(); + } + + public void closeBrowser() { + terminateTest(); + } + + void awaitLoad() throws InterruptedException { + Assertions.assertTrue(myInitLatch.await(5, TimeUnit.SECONDS)); + var renderHandler = (JBCefOsrHandler) browser_.getRenderHandler(); + Assertions.assertNotNull(renderHandler); + Assertions.assertTrue(renderHandler.awaitInit()); + } + } + + private static class EventsWaiter { + List<Scenario.EventDataJS> events; + final Lock lock = new ReentrantLock(); + final Condition scenarioFinished = lock.newCondition(); + private void setup() { + events = new ArrayList<>(); + } + + public void addEvent(Scenario.EventDataJS event) { + lock.lock(); + events.add(event); + scenarioFinished.signal(); + lock.unlock(); + } + + public List<Scenario.EventDataJS> get() throws InterruptedException { + lock.lock(); + while (!isReady()) { + if (!scenarioFinished.await(500, TimeUnit.MILLISECONDS)) { + if (UPDATE_REFERENCE) { + System.err.println("The received scenario events are incomplete: " + events); + } else { + Assertions.fail("The received scenario events are incomplete: " + events); + } + break; + } + } + var result = events; + setup(); + lock.unlock(); + return result; + } + + public boolean isReady() { + if (events.isEmpty()) { + return false; + } + + Scenario.EventDataJS first = events.get(0); + Scenario.EventDataJS last = events.get(events.size() - 1); + + return "keydown".equals(first.type) && "keyup".equals(last.type) && Objects.equals(first.code, last.code); + } + } +} diff --git a/java_tests/tests/junittests/data/keyboard_scenario_mac.json b/java_tests/tests/junittests/data/keyboard_scenario_mac.json new file mode 100644 index 0000000..656f76e --- /dev/null +++ b/java_tests/tests/junittests/data/keyboard_scenario_mac.json @@ -0,0 +1,64913 @@ +[ + { + "name": "⎋", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u001b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F10", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F11", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F12", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F13", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F14", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F15", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F16", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F17", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F18", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F19", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "§", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777383, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "§", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777383, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "-", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "-", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u003d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌫", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Q", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 81, + "keyChar": "q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "q", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 81, + "keyChar": "q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "W", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 87, + "keyChar": "w", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "w", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 87, + "keyChar": "w", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "E", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 69, + "keyChar": "e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "e", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 69, + "keyChar": "e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "R", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 82, + "keyChar": "r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "r", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 82, + "keyChar": "r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "T", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 84, + "keyChar": "t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 84, + "keyChar": "t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Y", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 89, + "keyChar": "y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "y", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 89, + "keyChar": "y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "U", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 85, + "keyChar": "u", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "u", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 85, + "keyChar": "u", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "I", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 73, + "keyChar": "i", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "i", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 73, + "keyChar": "i", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "O", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 79, + "keyChar": "o", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "o", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 79, + "keyChar": "o", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "P", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 80, + "keyChar": "p", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "p", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 80, + "keyChar": "p", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "[", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 91, + "keyChar": "[", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "[", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 91, + "keyChar": "[", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "[", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "[", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "[", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "]", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 93, + "keyChar": "]", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "]", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 93, + "keyChar": "]", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 10, + "keyChar": "\n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\n", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 10, + "keyChar": "\n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇪", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 20, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 20 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 20, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 20 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "A", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 65, + "keyChar": "a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "a", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 65, + "keyChar": "a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "S", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 83, + "keyChar": "s", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "s", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 83, + "keyChar": "s", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "D", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 68, + "keyChar": "d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 68, + "keyChar": "d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 70, + "keyChar": "f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "f", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 70, + "keyChar": "f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "G", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 71, + "keyChar": "g", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "g", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 71, + "keyChar": "g", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "H", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 72, + "keyChar": "h", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "h", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 72, + "keyChar": "h", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "J", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 74, + "keyChar": "j", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "j", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 74, + "keyChar": "j", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "K", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 75, + "keyChar": "k", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "k", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 75, + "keyChar": "k", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "L", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 76, + "keyChar": "l", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "l", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 76, + "keyChar": "l", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ";", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 59, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": ";", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 59, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\u0027", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 222, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u0027", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 222, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\\", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 92, + "keyChar": "\\", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 92 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\\", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 92 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 92, + "keyChar": "\\", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 92 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\\", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\\", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\\", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "`", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "`", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Z", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 90, + "keyChar": "z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "z", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 90, + "keyChar": "z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "X", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 88, + "keyChar": "x", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "x", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 88, + "keyChar": "x", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "C", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 67, + "keyChar": "c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "c", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 67, + "keyChar": "c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "V", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 86, + "keyChar": "v", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "v", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 86, + "keyChar": "v", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "B", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 66, + "keyChar": "b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 66, + "keyChar": "b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "N", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 78, + "keyChar": "n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "n", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 78, + "keyChar": "n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "M", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 77, + "keyChar": "m", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "m", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 77, + "keyChar": "m", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ",", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": ",", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ".", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "/", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "␣", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 32, + "keyChar": " ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 32 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": " ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 32 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 32, + "keyChar": " ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 32 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": " ", + "code": "Space", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": " ", + "code": "Space", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": " ", + "code": "Space", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "↖", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "↘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "End", + "code": "End", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "End", + "code": "End", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇞", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇟", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌦", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "↑", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 38, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 38 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 38, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 38 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ArrowUp", + "code": "ArrowUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowUp", + "code": "ArrowUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "←", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 37, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 37 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 37, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 37 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ArrowLeft", + "code": "ArrowLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowLeft", + "code": "ArrowLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "↓", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 40, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 40 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 40, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 40 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ArrowDown", + "code": "ArrowDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowDown", + "code": "ArrowDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "→", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 39, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 39 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 39, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 39 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ArrowRight", + "code": "ArrowRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowRight", + "code": "ArrowRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u003d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨ /", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨ *", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "*", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨ -", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "-", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨ +", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "+", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 10, + "keyChar": "\n", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\n", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 10, + "keyChar": "\n", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨-0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌨ .", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Q", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 81, + "keyChar": "Q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "Q", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 81, + "keyChar": "Q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "W", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 87, + "keyChar": "W", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "W", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 87, + "keyChar": "W", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "E", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 69, + "keyChar": "E", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "E", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 69, + "keyChar": "E", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "R", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 82, + "keyChar": "R", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "R", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 82, + "keyChar": "R", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "T", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 84, + "keyChar": "T", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "T", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 84, + "keyChar": "T", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Y", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 89, + "keyChar": "Y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "Y", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 89, + "keyChar": "Y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "U", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 85, + "keyChar": "U", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "U", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 85, + "keyChar": "U", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "I", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 73, + "keyChar": "I", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "I", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 73, + "keyChar": "I", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "O", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 79, + "keyChar": "O", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "O", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 79, + "keyChar": "O", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "P", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 80, + "keyChar": "P", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "P", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 80, + "keyChar": "P", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "A", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 65, + "keyChar": "A", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "A", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 65, + "keyChar": "A", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "S", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 83, + "keyChar": "S", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "S", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 83, + "keyChar": "S", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "D", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 68, + "keyChar": "D", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "D", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 68, + "keyChar": "D", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 70, + "keyChar": "F", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "F", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 70, + "keyChar": "F", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "G", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 71, + "keyChar": "G", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "G", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 71, + "keyChar": "G", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "H", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 72, + "keyChar": "H", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "H", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 72, + "keyChar": "H", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "J", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 74, + "keyChar": "J", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "J", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 74, + "keyChar": "J", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "K", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 75, + "keyChar": "K", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "K", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 75, + "keyChar": "K", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "L", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 76, + "keyChar": "L", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "L", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 76, + "keyChar": "L", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Z", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 90, + "keyChar": "Z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "Z", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 90, + "keyChar": "Z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "X", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 88, + "keyChar": "X", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "X", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 88, + "keyChar": "X", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "C", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 67, + "keyChar": "C", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "C", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 67, + "keyChar": "C", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "V", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 86, + "keyChar": "V", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "V", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 86, + "keyChar": "V", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "B", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 66, + "keyChar": "B", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "B", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 66, + "keyChar": "B", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "N", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 78, + "keyChar": "N", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "N", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 78, + "keyChar": "N", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "M", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 77, + "keyChar": "M", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "M", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 77, + "keyChar": "M", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+⎋", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u001b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F10", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F11", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F12", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F13", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F14", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F15", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F16", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F17", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F18", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F19", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+§", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777383, + "keyChar": "±", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777393 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "±", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777393 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777383, + "keyChar": "±", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777393 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "±", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "±", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "±", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 49, + "keyChar": "!", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "!", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 49, + "keyChar": "!", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 50, + "keyChar": "@", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 512 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "@", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 512 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 50, + "keyChar": "@", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 512 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "@", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "@", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "@", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 51, + "keyChar": "#", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 520 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "#", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 520 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 51, + "keyChar": "#", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 520 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "#", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "#", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "#", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 52, + "keyChar": "$", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 515 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "$", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 515 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 52, + "keyChar": "$", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 515 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "$", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "$", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "$", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 53, + "keyChar": "%", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "%", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 53, + "keyChar": "%", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 54, + "keyChar": "^", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 514 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "^", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 514 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 54, + "keyChar": "^", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 514 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "^", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "^", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "^", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 55, + "keyChar": "\u0026", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 150 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u0026", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 150 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 55, + "keyChar": "\u0026", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 150 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u0026", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u0026", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u0026", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 56, + "keyChar": "*", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "*", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 56, + "keyChar": "*", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 57, + "keyChar": "(", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "(", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 57, + "keyChar": "(", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 48, + "keyChar": ")", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ")", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 48, + "keyChar": ")", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+-", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 45, + "keyChar": "_", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "_", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 45, + "keyChar": "_", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61, + "keyChar": "+", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "+", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61, + "keyChar": "+", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+⌫", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+⇥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Q", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 81, + "keyChar": "Q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Q", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 81, + "keyChar": "Q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+W", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 87, + "keyChar": "W", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "W", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 87, + "keyChar": "W", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+E", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 69, + "keyChar": "E", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "E", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 69, + "keyChar": "E", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+R", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 82, + "keyChar": "R", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "R", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 82, + "keyChar": "R", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+T", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 84, + "keyChar": "T", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "T", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 84, + "keyChar": "T", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Y", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 89, + "keyChar": "Y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Y", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 89, + "keyChar": "Y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+U", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 85, + "keyChar": "U", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "U", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 85, + "keyChar": "U", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+I", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 73, + "keyChar": "I", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "I", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 73, + "keyChar": "I", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+O", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 79, + "keyChar": "O", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "O", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 79, + "keyChar": "O", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+P", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 80, + "keyChar": "P", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "P", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 80, + "keyChar": "P", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+[", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 91, + "keyChar": "{", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 161 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "{", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 161 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 91, + "keyChar": "{", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 161 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "{", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "{", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "{", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+]", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 93, + "keyChar": "}", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 162 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "}", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 162 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 93, + "keyChar": "}", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 162 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "}", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "}", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "}", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\r", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+A", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 65, + "keyChar": "A", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "A", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 65, + "keyChar": "A", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+S", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 83, + "keyChar": "S", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "S", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 83, + "keyChar": "S", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+D", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 68, + "keyChar": "D", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "D", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 68, + "keyChar": "D", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 70, + "keyChar": "F", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "F", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 70, + "keyChar": "F", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+G", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 71, + "keyChar": "G", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "G", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 71, + "keyChar": "G", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+H", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 72, + "keyChar": "H", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "H", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 72, + "keyChar": "H", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+J", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 74, + "keyChar": "J", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "J", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 74, + "keyChar": "J", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+K", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 75, + "keyChar": "K", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "K", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 75, + "keyChar": "K", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+L", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 76, + "keyChar": "L", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "L", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 76, + "keyChar": "L", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+;", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 59, + "keyChar": ":", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ":", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 59, + "keyChar": ":", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\u0027", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 222, + "keyChar": "\"", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\"", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 222, + "keyChar": "\"", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\\", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 92, + "keyChar": "|", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777340 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "|", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777340 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 92, + "keyChar": "|", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777340 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "|", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "|", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "|", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+`", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 192, + "keyChar": "~", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777342 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "~", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777342 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 192, + "keyChar": "~", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777342 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "~", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "~", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "~", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Z", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 90, + "keyChar": "Z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Z", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 90, + "keyChar": "Z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+X", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 88, + "keyChar": "X", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "X", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 88, + "keyChar": "X", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+C", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 67, + "keyChar": "C", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "C", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 67, + "keyChar": "C", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+V", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 86, + "keyChar": "V", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "V", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 86, + "keyChar": "V", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+B", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 66, + "keyChar": "B", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "B", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 66, + "keyChar": "B", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+N", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 78, + "keyChar": "N", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "N", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 78, + "keyChar": "N", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+M", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 77, + "keyChar": "M", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "M", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 77, + "keyChar": "M", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+,", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 44, + "keyChar": "\u003c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u003c", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 44, + "keyChar": "\u003c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+.", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 46, + "keyChar": "\u003e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u003e", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 46, + "keyChar": "\u003e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+/", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 47, + "keyChar": "?", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "?", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 47, + "keyChar": "?", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⎋", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u001b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F10", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F11", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F12", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F13", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F14", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F15", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F16", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F17", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F18", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F19", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+§", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 16777383, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 16777383, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+-", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 45, + "keyChar": "\u001f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u001f", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 45, + "keyChar": "\u001f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌫", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⇥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+Q", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 81, + "keyChar": "\u0011", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0011", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 81, + "keyChar": "\u0011", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+W", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 87, + "keyChar": "\u0017", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0017", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 87, + "keyChar": "\u0017", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+E", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 69, + "keyChar": "\u0005", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0005", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 69, + "keyChar": "\u0005", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+R", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 82, + "keyChar": "\u0012", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0012", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 82, + "keyChar": "\u0012", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+T", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 84, + "keyChar": "\u0014", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0014", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 84, + "keyChar": "\u0014", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+Y", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 89, + "keyChar": "\u0019", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0019", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 89, + "keyChar": "\u0019", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+U", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 85, + "keyChar": "\u0015", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0015", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 85, + "keyChar": "\u0015", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+I", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 73, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 73, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+O", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 79, + "keyChar": "\u000f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u000f", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 79, + "keyChar": "\u000f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+P", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 80, + "keyChar": "\u0010", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0010", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 80, + "keyChar": "\u0010", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+[", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 91, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u001b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 91, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+]", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 93, + "keyChar": "\u001d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u001d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 93, + "keyChar": "\u001d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\r", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+A", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 65, + "keyChar": "\u0001", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0001", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 65, + "keyChar": "\u0001", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+S", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 83, + "keyChar": "\u0013", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0013", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 83, + "keyChar": "\u0013", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+D", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 68, + "keyChar": "\u0004", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0004", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 68, + "keyChar": "\u0004", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+F", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 70, + "keyChar": "\u0006", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0006", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 70, + "keyChar": "\u0006", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+G", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 71, + "keyChar": "\u0007", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0007", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 71, + "keyChar": "\u0007", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+H", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 72, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 72, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+J", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 74, + "keyChar": "\n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\n", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 74, + "keyChar": "\n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 10 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+K", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 75, + "keyChar": "\u000b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u000b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 75, + "keyChar": "\u000b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+L", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 76, + "keyChar": "\f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\f", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 76, + "keyChar": "\f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+;", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 59, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": ";", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 59, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+\u0027", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 222, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0027", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 222, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+\\", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 92, + "keyChar": "\u001c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u001c", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 92, + "keyChar": "\u001c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 192, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+`", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "`", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+Z", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 90, + "keyChar": "\u001a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u001a", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 90, + "keyChar": "\u001a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+X", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 88, + "keyChar": "\u0018", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0018", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 88, + "keyChar": "\u0018", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+C", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 67, + "keyChar": "\u0003", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0003", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 67, + "keyChar": "\u0003", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+V", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 86, + "keyChar": "\u0016", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0016", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 86, + "keyChar": "\u0016", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+B", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 66, + "keyChar": "\u0002", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0002", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 66, + "keyChar": "\u0002", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+N", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 78, + "keyChar": "\u000e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u000e", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 78, + "keyChar": "\u000e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+M", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 77, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\r", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 77, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+,", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": ",", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+.", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+/", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 192, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 640, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 384, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+␣", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 32, + "keyChar": " ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 32 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": " ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 32 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 32, + "keyChar": " ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 32 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": " ", + "code": "Space", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": " ", + "code": "Space", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": " ", + "code": "Space", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 384, + "keyCode": 157, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 157, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Meta", + "code": "MetaRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 640, + "keyCode": 18, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 18, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Alt", + "code": "AltRight", + "location": "2", + "altKey": "true", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+↖", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+↘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "End", + "code": "End", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "End", + "code": "End", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⇞", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⇟", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌦", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u003d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨ /", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨ *", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "*", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨ -", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "-", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨ +", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "+", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 10, + "keyChar": "\u0003", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "\u0003", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 10, + "keyChar": "\u0003", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨-0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌃+⌨ .", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 128, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 401, + "modifiers": 128, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 128, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 128, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⎋", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "\u001b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F10", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F11", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F12", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F13", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F14", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F15", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F16", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F17", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F18", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F19", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+§", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 16777383, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "§", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 16777383, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 49, + "keyChar": "¡", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 518 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "¡", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 518 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 49, + "keyChar": "¡", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 518 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "¡", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "¡", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "¡", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 50, + "keyChar": "™", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "™", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 50, + "keyChar": "™", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "™", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "™", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "™", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 51, + "keyChar": "£", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777379 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "£", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777379 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 51, + "keyChar": "£", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777379 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "£", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "£", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "£", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 52, + "keyChar": "¢", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777378 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "¢", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777378 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 52, + "keyChar": "¢", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777378 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "¢", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "¢", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "¢", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 53, + "keyChar": "∞", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "∞", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 53, + "keyChar": "∞", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "∞", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "∞", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "∞", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 54, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "§", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 54, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 55, + "keyChar": "¶", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777398 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "¶", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777398 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 55, + "keyChar": "¶", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777398 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "¶", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "¶", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "¶", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 56, + "keyChar": "•", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "•", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 56, + "keyChar": "•", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "•", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "•", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "•", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 57, + "keyChar": "ª", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "ª", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 57, + "keyChar": "ª", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ª", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ª", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ª", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 48, + "keyChar": "º", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777402 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "º", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777402 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 48, + "keyChar": "º", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777402 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "º", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "º", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "º", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+-", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 45, + "keyChar": "–", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785427 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "–", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785427 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 45, + "keyChar": "–", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785427 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "–", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "–", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "–", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61, + "keyChar": "≠", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "≠", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61, + "keyChar": "≠", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "≠", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "≠", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "≠", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌫", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "\b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⇥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "\t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 9, + "keyChar": "\t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 9 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Tab", + "code": "Tab", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+Q", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 81, + "keyChar": "œ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777555 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "œ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777555 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 81, + "keyChar": "œ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777555 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "œ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "œ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "œ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+W", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 87, + "keyChar": "∑", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "∑", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 87, + "keyChar": "∑", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "∑", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "∑", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "∑", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+E", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 69, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 69, + "keyChar": "´", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777396 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "´", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+R", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 82, + "keyChar": "®", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "®", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 82, + "keyChar": "®", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "®", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "®", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "®", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+T", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 84, + "keyChar": "†", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "†", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 84, + "keyChar": "†", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "†", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "†", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "†", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+Y", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 89, + "keyChar": "¥", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777381 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "¥", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777381 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 89, + "keyChar": "¥", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777381 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "¥", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "¥", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "¥", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+U", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 85, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 85, + "keyChar": "¨", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777384 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "¨", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+I", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 73, + "keyChar": "¨", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777384 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "¨", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777384 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 73, + "keyChar": "ˆ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "¨", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "¨", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ˆ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+O", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 79, + "keyChar": "ø", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777432 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "ø", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777432 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 79, + "keyChar": "ø", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777432 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ø", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ø", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ø", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+P", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 80, + "keyChar": "π", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778176 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "π", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778176 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 80, + "keyChar": "π", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778176 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "π", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "π", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "π", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+[", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 91, + "keyChar": "“", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785436 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "“", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785436 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 91, + "keyChar": "“", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785436 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "“", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "“", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "“", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+]", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 93, + "keyChar": "‘", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "‘", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 93, + "keyChar": "‘", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "‘", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "‘", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "‘", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "\r", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+A", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 65, + "keyChar": "å", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777413 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "å", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777413 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 65, + "keyChar": "å", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777413 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+S", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 83, + "keyChar": "ß", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777439 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "ß", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777439 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 83, + "keyChar": "ß", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777439 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ß", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ß", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ß", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+D", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 68, + "keyChar": "∂", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "∂", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 68, + "keyChar": "∂", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "∂", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "∂", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "∂", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+F", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 70, + "keyChar": "ƒ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "ƒ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 70, + "keyChar": "ƒ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ƒ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ƒ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ƒ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+G", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 71, + "keyChar": "©", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "©", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 71, + "keyChar": "©", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "©", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "©", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "©", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+H", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 72, + "keyChar": "˙", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777945 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "˙", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777945 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 72, + "keyChar": "˙", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777945 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "˙", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "˙", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "˙", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+J", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 74, + "keyChar": "∆", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "∆", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 74, + "keyChar": "∆", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "∆", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "∆", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "∆", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+K", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 75, + "keyChar": "˚", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "˚", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 75, + "keyChar": "˚", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "˚", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "˚", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "˚", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+L", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 76, + "keyChar": "¬", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "¬", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 76, + "keyChar": "¬", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "¬", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "¬", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "¬", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+;", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 59, + "keyChar": "…", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "…", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 59, + "keyChar": "…", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "…", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "…", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "…", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+\u0027", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 222, + "keyChar": "æ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777414 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "æ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777414 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 222, + "keyChar": "æ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777414 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "æ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "æ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "æ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+\\", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 92, + "keyChar": "«", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777387 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "«", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777387 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 92, + "keyChar": "«", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777387 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "«", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "«", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "«", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 576, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+`", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 192, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Dead", + "code": "Backquote", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+Z", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 90, + "keyChar": "Ω", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778185 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "Ω", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778185 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 90, + "keyChar": "Ω", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778185 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Ω", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "Ω", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Ω", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+X", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 88, + "keyChar": "≈", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "≈", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 88, + "keyChar": "≈", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "≈", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "≈", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "≈", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+C", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 67, + "keyChar": "ç", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777415 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "ç", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777415 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 67, + "keyChar": "ç", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777415 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ç", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ç", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ç", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+V", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 86, + "keyChar": "√", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "√", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 86, + "keyChar": "√", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "√", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "√", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "√", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+B", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 66, + "keyChar": "∫", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "∫", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 66, + "keyChar": "∫", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "∫", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "∫", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "∫", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+N", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 78, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 78, + "keyChar": "˜", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "˜", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+M", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 77, + "keyChar": "µ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777397 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "µ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777397 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 77, + "keyChar": "µ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777397 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "µ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "µ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "µ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+,", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 44, + "keyChar": "≤", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "≤", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 44, + "keyChar": "≤", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "≤", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "≤", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "≤", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+.", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 46, + "keyChar": "≥", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "≥", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 46, + "keyChar": "≥", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "≥", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "≥", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "≥", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+/", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 47, + "keyChar": "÷", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777463 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "÷", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777463 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 47, + "keyChar": "÷", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777463 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "÷", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "÷", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "÷", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 576, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 768, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+␣", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 32, + "keyChar": " ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": " ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 32, + "keyChar": " ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": " ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": " ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": " ", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 768, + "keyCode": 157, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 157, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Meta", + "code": "MetaRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌃", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 640, + "keyCode": 17, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 17, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Control", + "code": "ControlRight", + "location": "2", + "altKey": "true", + "ctrlKey": "true", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+↖", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+↘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "End", + "code": "End", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "End", + "code": "End", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⇞", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⇟", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌦", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+↑", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 38, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 38 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 38, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 38 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowUp", + "code": "ArrowUp", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowUp", + "code": "ArrowUp", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+←", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 37, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 37 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 37, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 37 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowLeft", + "code": "ArrowLeft", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowLeft", + "code": "ArrowLeft", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+→", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 39, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 39 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 39, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 39 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowRight", + "code": "ArrowRight", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowRight", + "code": "ArrowRight", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+↓", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 40, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 40 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 40, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 40 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowDown", + "code": "ArrowDown", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowDown", + "code": "ArrowDown", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "\u003d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨ /", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨ *", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "*", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨ -", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "-", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨ +", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "+", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 10, + "keyChar": "\u0003", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "\u0003", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 10, + "keyChar": "\u0003", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "å", + "code": "KeyA", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨-0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌥+⌨ .", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 512, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 401, + "modifiers": 512, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 512, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 512, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⎋", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 27, + "keyChar": "\u001b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 27 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Escape", + "code": "Escape", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 112, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 112 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F1", + "code": "F1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 113, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 113 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F2", + "code": "F2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 114, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 114 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F3", + "code": "F3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 115, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 115 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F4", + "code": "F4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 116, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 116 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F5", + "code": "F5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 117, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 117 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F6", + "code": "F6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 118, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 118 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F7", + "code": "F7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 119, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 119 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F8", + "code": "F8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 120, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 120 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F9", + "code": "F9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F10", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 121, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 121 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F10", + "code": "F10", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F11", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 122, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 122 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F11", + "code": "F11", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F12", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 123, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 123 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F12", + "code": "F12", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F13", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61440, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61440 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "F13", + "code": "F13", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F14", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61441, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61441 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F15", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61442, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61442 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F16", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61443, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61443 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F17", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61444, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61444 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F18", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61445, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61445 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F19", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61446, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61446 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+§", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 16777383, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 16777383, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+-", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌫", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 8, + "keyChar": "\b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 8 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Backspace", + "code": "Backspace", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+W", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 87, + "keyChar": "w", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 87, + "keyChar": "w", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+E", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 69, + "keyChar": "e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 69, + "keyChar": "e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+R", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 82, + "keyChar": "r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 82, + "keyChar": "r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+T", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 84, + "keyChar": "t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 84, + "keyChar": "t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+Y", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 89, + "keyChar": "y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 89, + "keyChar": "y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+U", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 85, + "keyChar": "u", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 85, + "keyChar": "u", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+I", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 73, + "keyChar": "i", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 73, + "keyChar": "i", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+O", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 79, + "keyChar": "o", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 79, + "keyChar": "o", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+P", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 80, + "keyChar": "p", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 80, + "keyChar": "p", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+[", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 91, + "keyChar": "[", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 91, + "keyChar": "[", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "[", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "[", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+]", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 93, + "keyChar": "]", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 93, + "keyChar": "]", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 10, + "keyChar": "\r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+A", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 65, + "keyChar": "a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 65, + "keyChar": "a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+S", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 83, + "keyChar": "s", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 83, + "keyChar": "s", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+D", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 68, + "keyChar": "d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 68, + "keyChar": "d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+F", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 70, + "keyChar": "f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 70, + "keyChar": "f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+G", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 71, + "keyChar": "g", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 71, + "keyChar": "g", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+H", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 72, + "keyChar": "h", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 72, + "keyChar": "h", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+J", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 74, + "keyChar": "j", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 74, + "keyChar": "j", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+K", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 75, + "keyChar": "k", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 75, + "keyChar": "k", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+L", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 76, + "keyChar": "l", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 76, + "keyChar": "l", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+;", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 59, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 59, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ";", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+\u0027", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 222, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 222, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u0027", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+\\", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 92, + "keyChar": "\\", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 92 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 92, + "keyChar": "\\", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 92 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\\", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\\", + "code": "Backslash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 320, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+`", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 192, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "`", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+Z", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 90, + "keyChar": "z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 90, + "keyChar": "z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+X", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 88, + "keyChar": "x", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 88, + "keyChar": "x", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+C", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 67, + "keyChar": "c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 67, + "keyChar": "c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+V", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 86, + "keyChar": "v", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 86, + "keyChar": "v", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+B", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 66, + "keyChar": "b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 66, + "keyChar": "b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+N", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 78, + "keyChar": "n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 78, + "keyChar": "n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+M", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 77, + "keyChar": "m", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 77, + "keyChar": "m", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+,", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+.", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+/", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⇧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 320, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 16, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌃", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 384, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 17, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 768, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 18, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌥", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 768, + "keyCode": 18, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 18, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 18 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Alt", + "code": "AltRight", + "location": "2", + "altKey": "true", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Alt", + "code": "AltRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌃", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 384, + "keyCode": 17, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 17, + "keyChar": "", + "keyLocation": 3, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 17 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Control", + "code": "ControlRight", + "location": "2", + "altKey": "false", + "ctrlKey": "true", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Control", + "code": "ControlRight", + "location": "2", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+↖", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 36, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 36 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Home", + "code": "Home", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+↘", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 35, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 35 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "End", + "code": "End", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "End", + "code": "End", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⇞", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 33, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 33 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageUp", + "code": "PageUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⇟", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 34, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 34 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "PageDown", + "code": "PageDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌦", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 127, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 127 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Delete", + "code": "Delete", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+←", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 37, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 37 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 37, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 37 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowLeft", + "code": "ArrowLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowLeft", + "code": "ArrowLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+↑", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 38, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 38 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 38, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 38 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowUp", + "code": "ArrowUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowUp", + "code": "ArrowUp", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+↓", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 40, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 40 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 40, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 40 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowDown", + "code": "ArrowDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowDown", + "code": "ArrowDown", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+→", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 39, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 39 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 39, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 39 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "ArrowRight", + "code": "ArrowRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ArrowRight", + "code": "ArrowRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌧", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 12, + "keyChar": "", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 12 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+\u003d", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨ /", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 111, + "keyChar": "/", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨ *", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 106, + "keyChar": "*", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-7", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 103, + "keyChar": "7", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-8", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 104, + "keyChar": "8", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-9", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 105, + "keyChar": "9", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨ -", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 109, + "keyChar": "-", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-4", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 100, + "keyChar": "4", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-5", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 101, + "keyChar": "5", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-6", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 102, + "keyChar": "6", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨ +", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 107, + "keyChar": "+", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-1", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 97, + "keyChar": "1", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-2", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 98, + "keyChar": "2", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-3", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 99, + "keyChar": "3", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⏎", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 10, + "keyChar": "\u0003", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 10, + "keyChar": "\u0003", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Enter", + "code": "Enter", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨-0", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 96, + "keyChar": "0", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⌘+⌨ .", + "comments": "basic", + "eventsJava": [ + { + "id": 401, + "modifiers": 256, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + }, + { + "id": 401, + "modifiers": 256, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 256, + "keyCode": 110, + "keyChar": ".", + "keyLocation": 4, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 157, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 157 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "true", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "Meta", + "code": "MetaLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "§", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777383, + "keyChar": "\u003e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u003e", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777383, + "keyChar": "\u003e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "1", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "2", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "3", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "4", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "5", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "6", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "7", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "8", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "9", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "0", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "-", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "-", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\u003d", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u003d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 61, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003d", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Q", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 81, + "keyChar": "й", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778297 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "й", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778297 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 81, + "keyChar": "й", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778297 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "й", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "й", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "й", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "W", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 87, + "keyChar": "ц", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778310 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ц", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778310 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 87, + "keyChar": "ц", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778310 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ц", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ц", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ц", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "E", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 69, + "keyChar": "у", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778307 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "у", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778307 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 69, + "keyChar": "у", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778307 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "у", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "у", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "у", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "R", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 82, + "keyChar": "к", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778298 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "к", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778298 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 82, + "keyChar": "к", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778298 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "к", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "к", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "к", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "T", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 84, + "keyChar": "е", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778293 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "е", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778293 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 84, + "keyChar": "е", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778293 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "е", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "е", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "е", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Y", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 89, + "keyChar": "н", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778301 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "н", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778301 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 89, + "keyChar": "н", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778301 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "н", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "н", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "н", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "U", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 85, + "keyChar": "г", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778291 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "г", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778291 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 85, + "keyChar": "г", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778291 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "г", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "г", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "г", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "I", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 73, + "keyChar": "ш", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778312 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ш", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778312 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 73, + "keyChar": "ш", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778312 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ш", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ш", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ш", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "O", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 79, + "keyChar": "щ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778313 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "щ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778313 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 79, + "keyChar": "щ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778313 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "щ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "щ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "щ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "P", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 80, + "keyChar": "з", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778295 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "з", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778295 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 80, + "keyChar": "з", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778295 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "з", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "з", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "з", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "[", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 91, + "keyChar": "х", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778309 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "х", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778309 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 91, + "keyChar": "х", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778309 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "х", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "х", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "х", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "]", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 93, + "keyChar": "ъ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778314 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ъ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778314 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 93, + "keyChar": "ъ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778314 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ъ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ъ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ъ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "A", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 65, + "keyChar": "ф", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778308 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ф", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778308 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 65, + "keyChar": "ф", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778308 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ф", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ф", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ф", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "S", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 83, + "keyChar": "ы", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778315 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ы", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778315 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 83, + "keyChar": "ы", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778315 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ы", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ы", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ы", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "D", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 68, + "keyChar": "в", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778290 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "в", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778290 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 68, + "keyChar": "в", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778290 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "в", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "в", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "в", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 70, + "keyChar": "а", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778288 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "а", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778288 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 70, + "keyChar": "а", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778288 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "а", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "а", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "а", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "G", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 71, + "keyChar": "п", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778303 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "п", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778303 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 71, + "keyChar": "п", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778303 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "п", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "п", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "п", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "H", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 72, + "keyChar": "р", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778304 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "р", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778304 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 72, + "keyChar": "р", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778304 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "р", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "р", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "р", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "J", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 74, + "keyChar": "о", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778302 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "о", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778302 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 74, + "keyChar": "о", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778302 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "о", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "о", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "о", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "K", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 75, + "keyChar": "л", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778299 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "л", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778299 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 75, + "keyChar": "л", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778299 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "л", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "л", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "л", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "L", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 76, + "keyChar": "д", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778292 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "д", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778292 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 76, + "keyChar": "д", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778292 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "д", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "д", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "д", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ";", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 59, + "keyChar": "ж", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778294 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ж", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778294 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 59, + "keyChar": "ж", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778294 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ж", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ж", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ж", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\u0027", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 222, + "keyChar": "э", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778317 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "э", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778317 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 222, + "keyChar": "э", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778317 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "э", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "э", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "э", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\\", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 92, + "keyChar": "ё", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778321 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ё", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778321 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 92, + "keyChar": "ё", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778321 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ё", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ё", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ё", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "`", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 192, + "keyChar": "]", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "]", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 192, + "keyChar": "]", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 93 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "]", + "code": "BracketRight", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Z", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 90, + "keyChar": "я", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778319 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "я", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778319 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 90, + "keyChar": "я", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778319 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "я", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "я", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "я", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "X", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 88, + "keyChar": "ч", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778311 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ч", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778311 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 88, + "keyChar": "ч", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778311 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ч", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ч", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ч", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "C", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 67, + "keyChar": "с", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778305 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "с", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778305 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 67, + "keyChar": "с", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778305 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "с", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "с", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "с", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "V", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 86, + "keyChar": "м", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778300 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "м", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778300 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 86, + "keyChar": "м", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778300 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "м", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "м", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "м", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "B", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 66, + "keyChar": "и", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778296 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "и", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778296 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 66, + "keyChar": "и", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778296 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "и", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "и", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "и", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "N", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 78, + "keyChar": "т", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778306 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "т", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778306 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 78, + "keyChar": "т", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778306 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "т", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "т", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "т", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "M", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 77, + "keyChar": "ь", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778316 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ь", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778316 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 77, + "keyChar": "ь", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778316 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ь", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ь", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ь", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ",", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 44, + "keyChar": "б", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778289 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "б", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778289 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 44, + "keyChar": "б", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778289 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "б", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "б", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "б", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ".", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 46, + "keyChar": "ю", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778318 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ю", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778318 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 46, + "keyChar": "ю", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778318 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ю", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ю", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ю", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "/", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 47, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "/", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+§", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777383, + "keyChar": "\u003c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u003c", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777383, + "keyChar": "\u003c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+1", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 49, + "keyChar": "!", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "!", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 49, + "keyChar": "!", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+2", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 50, + "keyChar": "\"", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\"", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 50, + "keyChar": "\"", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+3", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 51, + "keyChar": "№", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785686 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "№", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785686 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 51, + "keyChar": "№", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16785686 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "№", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "№", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "№", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+4", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 52, + "keyChar": "%", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "%", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 52, + "keyChar": "%", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+5", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 53, + "keyChar": ":", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ":", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 53, + "keyChar": ":", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+6", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 54, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ",", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 54, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+7", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 55, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 55, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+8", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 56, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ";", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 56, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+9", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 57, + "keyChar": "(", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "(", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 57, + "keyChar": "(", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+0", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 48, + "keyChar": ")", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ")", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 48, + "keyChar": ")", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+-", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 45, + "keyChar": "_", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "_", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 45, + "keyChar": "_", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\u003d", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 61, + "keyChar": "+", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "+", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 61, + "keyChar": "+", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Q", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 81, + "keyChar": "Й", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778297 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Й", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778297 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 81, + "keyChar": "Й", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778297 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Й", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Й", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Й", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+W", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 87, + "keyChar": "Ц", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778310 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ц", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778310 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 87, + "keyChar": "Ц", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778310 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ц", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ц", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ц", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+E", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 69, + "keyChar": "У", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778307 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "У", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778307 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 69, + "keyChar": "У", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778307 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "У", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "У", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "У", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+R", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 82, + "keyChar": "К", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778298 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "К", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778298 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 82, + "keyChar": "К", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778298 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "К", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "К", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "К", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+T", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 84, + "keyChar": "Е", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778293 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Е", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778293 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 84, + "keyChar": "Е", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778293 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Е", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Е", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Е", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Y", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 89, + "keyChar": "Н", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778301 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Н", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778301 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 89, + "keyChar": "Н", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778301 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Н", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Н", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Н", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+U", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 85, + "keyChar": "Г", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778291 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Г", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778291 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 85, + "keyChar": "Г", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778291 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Г", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Г", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Г", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+I", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 73, + "keyChar": "Ш", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778312 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ш", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778312 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 73, + "keyChar": "Ш", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778312 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ш", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ш", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ш", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+O", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 79, + "keyChar": "Щ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778313 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Щ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778313 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 79, + "keyChar": "Щ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778313 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Щ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Щ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Щ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+P", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 80, + "keyChar": "З", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778295 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "З", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778295 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 80, + "keyChar": "З", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778295 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "З", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "З", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "З", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+[", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 91, + "keyChar": "Х", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778309 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Х", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778309 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 91, + "keyChar": "Х", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778309 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Х", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Х", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Х", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+]", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 93, + "keyChar": "Ъ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778314 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ъ", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778314 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 93, + "keyChar": "Ъ", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778314 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ъ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ъ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ъ", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+A", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 65, + "keyChar": "Ф", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778308 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ф", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778308 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 65, + "keyChar": "Ф", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778308 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ф", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ф", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ф", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+S", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 83, + "keyChar": "Ы", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778315 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ы", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778315 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 83, + "keyChar": "Ы", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778315 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ы", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ы", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ы", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+D", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 68, + "keyChar": "В", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778290 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "В", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778290 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 68, + "keyChar": "В", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778290 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "В", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "В", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "В", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 70, + "keyChar": "А", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778288 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "А", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778288 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 70, + "keyChar": "А", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778288 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "А", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "А", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "А", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+G", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 71, + "keyChar": "П", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778303 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "П", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778303 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 71, + "keyChar": "П", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778303 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "П", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "П", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "П", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+H", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 72, + "keyChar": "Р", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778304 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Р", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778304 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 72, + "keyChar": "Р", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778304 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Р", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Р", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Р", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+J", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 74, + "keyChar": "О", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778302 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "О", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778302 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 74, + "keyChar": "О", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778302 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "О", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "О", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "О", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+K", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 75, + "keyChar": "Л", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778299 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Л", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778299 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 75, + "keyChar": "Л", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778299 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Л", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Л", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Л", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+L", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 76, + "keyChar": "Д", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778292 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Д", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778292 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 76, + "keyChar": "Д", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778292 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Д", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Д", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Д", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+;", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 59, + "keyChar": "Ж", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778294 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ж", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778294 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 59, + "keyChar": "Ж", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778294 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ж", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ж", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ж", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\u0027", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 222, + "keyChar": "Э", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778317 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Э", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778317 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 222, + "keyChar": "Э", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778317 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Э", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Э", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Э", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\\", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 92, + "keyChar": "Ё", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778321 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ё", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778321 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 92, + "keyChar": "Ё", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778321 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ё", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ё", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ё", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+`", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 192, + "keyChar": "[", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "[", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 192, + "keyChar": "[", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 91 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "{", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "{", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "{", + "code": "BracketLeft", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Z", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 90, + "keyChar": "Я", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778319 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Я", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778319 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 90, + "keyChar": "Я", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778319 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Я", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Я", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Я", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+X", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 88, + "keyChar": "Ч", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778311 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ч", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778311 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 88, + "keyChar": "Ч", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778311 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ч", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ч", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ч", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+C", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 67, + "keyChar": "С", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778305 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "С", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778305 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 67, + "keyChar": "С", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778305 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "С", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "С", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "С", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+V", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 86, + "keyChar": "М", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778300 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "М", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778300 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 86, + "keyChar": "М", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778300 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "М", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "М", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "М", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+B", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 66, + "keyChar": "И", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778296 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "И", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778296 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 66, + "keyChar": "И", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778296 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "И", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "И", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "И", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+N", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 78, + "keyChar": "Т", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778306 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Т", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778306 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 78, + "keyChar": "Т", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778306 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Т", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Т", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Т", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+M", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 77, + "keyChar": "Ь", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778316 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ь", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778316 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 77, + "keyChar": "Ь", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778316 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ь", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ь", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ь", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+,", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 44, + "keyChar": "Б", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778289 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Б", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778289 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 44, + "keyChar": "Б", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778289 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Б", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Б", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Б", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+.", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 46, + "keyChar": "Ю", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778318 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ю", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778318 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 46, + "keyChar": "Ю", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16778318 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ю", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ю", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ю", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+/", + "comments": "ru", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 47, + "keyChar": "?", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "?", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 47, + "keyChar": "?", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "^", + "comments": "de - disabled", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 514, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 514 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 514, + "keyChar": "^", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 514 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "^", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "1", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "1", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 49, + "keyChar": "1", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 49 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "1", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "2", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "2", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 50, + "keyChar": "2", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 50 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "2", + "code": "Digit2", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "3", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "3", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 51, + "keyChar": "3", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 51 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "3", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "4", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "4", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 52, + "keyChar": "4", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 52 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "4", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "5", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "5", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 53, + "keyChar": "5", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 53 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "5", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "6", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "6", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 54, + "keyChar": "6", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 54 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "6", + "code": "Digit6", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "7", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "7", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 55, + "keyChar": "7", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 55 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "7", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "8", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "8", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 56, + "keyChar": "8", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 56 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "8", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "9", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "9", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 57, + "keyChar": "9", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 57 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "9", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "0", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "0", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 48, + "keyChar": "0", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 48 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "0", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "ß", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777439, + "keyChar": "ß", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777439 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ß", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777439 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777439, + "keyChar": "ß", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777439 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ß", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ß", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ß", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "´", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777396, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777396 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777396, + "keyChar": "´", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777396 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "´", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Q", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 81, + "keyChar": "q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "q", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 81, + "keyChar": "q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "W", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 87, + "keyChar": "w", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "w", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 87, + "keyChar": "w", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "w", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "E", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 69, + "keyChar": "e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "e", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 69, + "keyChar": "e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "e", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "R", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 82, + "keyChar": "r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "r", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 82, + "keyChar": "r", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "r", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "T", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 84, + "keyChar": "t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "t", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 84, + "keyChar": "t", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "t", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Z", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 90, + "keyChar": "z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "z", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 90, + "keyChar": "z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "U", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 85, + "keyChar": "u", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "u", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 85, + "keyChar": "u", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "u", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "I", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 73, + "keyChar": "i", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "i", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 73, + "keyChar": "i", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "i", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "O", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 79, + "keyChar": "o", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "o", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 79, + "keyChar": "o", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "o", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "P", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 80, + "keyChar": "p", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "p", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 80, + "keyChar": "p", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "p", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "ü", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777468, + "keyChar": "ü", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777468 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ü", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777468 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777468, + "keyChar": "ü", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777468 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ü", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ü", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ü", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "+", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 521, + "keyChar": "+", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "+", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 521, + "keyChar": "+", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 521 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "A", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 65, + "keyChar": "a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "a", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 65, + "keyChar": "a", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "a", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "S", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 83, + "keyChar": "s", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "s", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 83, + "keyChar": "s", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "s", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "D", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 68, + "keyChar": "d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 68, + "keyChar": "d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "d", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "F", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 70, + "keyChar": "f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "f", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 70, + "keyChar": "f", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "f", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "G", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 71, + "keyChar": "g", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "g", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 71, + "keyChar": "g", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "g", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "H", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 72, + "keyChar": "h", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "h", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 72, + "keyChar": "h", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "h", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "J", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 74, + "keyChar": "j", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "j", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 74, + "keyChar": "j", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "j", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "K", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 75, + "keyChar": "k", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "k", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 75, + "keyChar": "k", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "k", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "L", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 76, + "keyChar": "l", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "l", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 76, + "keyChar": "l", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "l", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Ö", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777430, + "keyChar": "ö", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777430 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ö", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777430 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777430, + "keyChar": "ö", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777430 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ö", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ö", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ö", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Ä", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 16777412, + "keyChar": "ä", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777412 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "ä", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777412 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16777412, + "keyChar": "ä", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777412 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "ä", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "ä", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "ä", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "#", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 520, + "keyChar": "#", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 520 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "#", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 520 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 520, + "keyChar": "#", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 520 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "#", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "#", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "#", + "code": "Digit3", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "\u003c", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 153, + "keyChar": "\u003c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "\u003c", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 153, + "keyChar": "\u003c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 153 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "\u003c", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "Y", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 89, + "keyChar": "y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "y", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 89, + "keyChar": "y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "X", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 88, + "keyChar": "x", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "x", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 88, + "keyChar": "x", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "x", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "C", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 67, + "keyChar": "c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "c", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 67, + "keyChar": "c", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "c", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "V", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 86, + "keyChar": "v", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "v", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 86, + "keyChar": "v", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "v", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "B", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 66, + "keyChar": "b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "b", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 66, + "keyChar": "b", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "b", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "N", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 78, + "keyChar": "n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "n", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 78, + "keyChar": "n", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "n", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "M", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 77, + "keyChar": "m", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "m", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 77, + "keyChar": "m", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "m", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ",", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": ",", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 44, + "keyChar": ",", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 44 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ",", + "code": "Comma", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": ".", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": ".", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 46, + "keyChar": ".", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 46 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": ".", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "-", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 0, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 400, + "modifiers": 0, + "keyCode": 0, + "keyChar": "-", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 45, + "keyChar": "-", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 45 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keypress", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + }, + { + "type": "keyup", + "key": "-", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+^", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 514, + "keyChar": "°", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777392 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "°", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777392 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 514, + "keyChar": "°", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777392 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "°", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "°", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "°", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+1", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 49, + "keyChar": "!", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "!", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 49, + "keyChar": "!", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 517 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "!", + "code": "Digit1", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+2", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 50, + "keyChar": "\"", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\"", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 50, + "keyChar": "\"", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 152 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+3", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 51, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "§", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 51, + "keyChar": "§", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777383 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "§", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+4", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 52, + "keyChar": "$", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 515 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "$", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 515 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 52, + "keyChar": "$", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 515 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "$", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "$", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "$", + "code": "Digit4", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+5", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 53, + "keyChar": "%", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "%", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 53, + "keyChar": "%", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "%", + "code": "Digit5", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+6", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 54, + "keyChar": "\u0026", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 150 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u0026", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 150 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 54, + "keyChar": "\u0026", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 150 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u0026", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u0026", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u0026", + "code": "Digit7", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+7", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 55, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "/", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 55, + "keyChar": "/", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 47 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+8", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 56, + "keyChar": "(", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "(", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 56, + "keyChar": "(", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 519 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "(", + "code": "Digit9", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+9", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 57, + "keyChar": ")", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ")", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 57, + "keyChar": ")", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 522 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ")", + "code": "Digit0", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+0", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 48, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u003d", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 48, + "keyChar": "\u003d", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 61 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "+", + "code": "Equal", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+ß", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777439, + "keyChar": "?", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "?", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777439, + "keyChar": "?", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 0 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "?", + "code": "Slash", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+´", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777396, + "keyChar": "", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777396 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777396, + "keyChar": "`", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 192 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "~", + "code": "Backquote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Q", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 81, + "keyChar": "Q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Q", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 81, + "keyChar": "Q", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 81 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Q", + "code": "KeyQ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+W", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 87, + "keyChar": "W", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "W", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 87, + "keyChar": "W", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 87 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "W", + "code": "KeyW", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+E", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 69, + "keyChar": "E", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "E", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 69, + "keyChar": "E", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 69 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "E", + "code": "KeyE", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+R", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 82, + "keyChar": "R", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "R", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 82, + "keyChar": "R", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 82 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "R", + "code": "KeyR", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+T", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 84, + "keyChar": "T", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "T", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 84, + "keyChar": "T", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 84 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "T", + "code": "KeyT", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Z", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 90, + "keyChar": "Z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Z", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 90, + "keyChar": "Z", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 90 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Z", + "code": "KeyZ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+U", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 85, + "keyChar": "U", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "U", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 85, + "keyChar": "U", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 85 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "U", + "code": "KeyU", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+I", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 73, + "keyChar": "I", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "I", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 73, + "keyChar": "I", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 73 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "I", + "code": "KeyI", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+O", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 79, + "keyChar": "O", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "O", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 79, + "keyChar": "O", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 79 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "O", + "code": "KeyO", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+P", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 80, + "keyChar": "P", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "P", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 80, + "keyChar": "P", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 80 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "P", + "code": "KeyP", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+ü", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777468, + "keyChar": "Ü", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777468 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ü", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777468 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777468, + "keyChar": "Ü", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777468 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ü", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ü", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ü", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧++", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 521, + "keyChar": "*", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "*", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 521, + "keyChar": "*", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 151 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "*", + "code": "Digit8", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+A", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 65, + "keyChar": "A", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "A", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 65, + "keyChar": "A", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 65 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "A", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+S", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 83, + "keyChar": "S", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "S", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 83, + "keyChar": "S", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 83 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "S", + "code": "KeyS", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+D", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 68, + "keyChar": "D", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "D", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 68, + "keyChar": "D", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 68 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "D", + "code": "KeyD", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+F", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 70, + "keyChar": "F", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "F", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 70, + "keyChar": "F", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 70 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "F", + "code": "KeyF", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+G", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 71, + "keyChar": "G", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "G", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 71, + "keyChar": "G", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 71 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "G", + "code": "KeyG", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+H", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 72, + "keyChar": "H", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "H", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 72, + "keyChar": "H", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 72 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "H", + "code": "KeyH", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+J", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 74, + "keyChar": "J", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "J", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 74, + "keyChar": "J", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 74 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "J", + "code": "KeyJ", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+K", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 75, + "keyChar": "K", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "K", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 75, + "keyChar": "K", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 75 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "K", + "code": "KeyK", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+L", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 76, + "keyChar": "L", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "L", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 76, + "keyChar": "L", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 76 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "L", + "code": "KeyL", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Ö", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777430, + "keyChar": "Ö", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777430 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ö", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777430 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777430, + "keyChar": "Ö", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777430 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ö", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ö", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ö", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Ä", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 16777412, + "keyChar": "Ä", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777412 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Ä", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777412 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 16777412, + "keyChar": "Ä", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16777412 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Ä", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Ä", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Ä", + "code": "KeyA", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+#", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 520, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u0027", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 520, + "keyChar": "\u0027", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 222 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\"", + "code": "Quote", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+\u003c", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 153, + "keyChar": "\u003e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "\u003e", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 153, + "keyChar": "\u003e", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 160 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "\u003e", + "code": "Period", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+Y", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 89, + "keyChar": "Y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "Y", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 89, + "keyChar": "Y", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 89 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Y", + "code": "KeyY", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+X", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 88, + "keyChar": "X", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "X", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 88, + "keyChar": "X", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 88 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "X", + "code": "KeyX", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+C", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 67, + "keyChar": "C", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "C", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 67, + "keyChar": "C", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 67 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "C", + "code": "KeyC", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+V", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 86, + "keyChar": "V", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "V", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 86, + "keyChar": "V", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 86 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "V", + "code": "KeyV", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+B", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 66, + "keyChar": "B", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "B", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 66, + "keyChar": "B", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 66 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "B", + "code": "KeyB", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+N", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 78, + "keyChar": "N", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "N", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 78, + "keyChar": "N", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 78 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "N", + "code": "KeyN", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+M", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 77, + "keyChar": "M", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "M", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 77, + "keyChar": "M", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 77 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "M", + "code": "KeyM", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+,", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 44, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ";", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 44, + "keyChar": ";", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 59 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+.", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 46, + "keyChar": ":", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": ":", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 46, + "keyChar": ":", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 513 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": ":", + "code": "Semicolon", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + }, + { + "name": "⇧+-", + "comments": "de", + "eventsJava": [ + { + "id": 401, + "modifiers": 64, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + }, + { + "id": 401, + "modifiers": 64, + "keyCode": 45, + "keyChar": "_", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 400, + "modifiers": 64, + "keyCode": 0, + "keyChar": "_", + "keyLocation": 0, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 402, + "modifiers": 64, + "keyCode": 45, + "keyChar": "_", + "keyLocation": 1, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 523 + }, + { + "id": 402, + "modifiers": 0, + "keyCode": 16, + "keyChar": "", + "keyLocation": 2, + "rawCode": 0, + "primaryLevelUnicode": 0, + "scancode": 0, + "extendedKeyCode": 16 + } + ], + "eventsJSExpected": [ + { + "type": "keydown", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keydown", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keypress", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "_", + "code": "Minus", + "location": "0", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "true" + }, + { + "type": "keyup", + "key": "Shift", + "code": "ShiftLeft", + "location": "1", + "altKey": "false", + "ctrlKey": "false", + "metaKay": "false", + "shiftKey": "false" + } + ] + } +]
\ No newline at end of file diff --git a/java_tests/tests/keyboard/Scenario.java b/java_tests/tests/keyboard/Scenario.java new file mode 100644 index 0000000..322720d --- /dev/null +++ b/java_tests/tests/keyboard/Scenario.java @@ -0,0 +1,219 @@ +package tests.keyboard; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.reflect.TypeToken; + +import java.awt.*; +import java.awt.event.KeyEvent; +import java.lang.reflect.Field; +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +public class Scenario { + public String name; + public String comments; + public List<EventDataJava> eventsJava; + public List<EventDataJS> eventsJSExpected; + + public Scenario(String name, List<EventDataJava> events) { + this(name, "", events, new ArrayList<>()); + } + + public Scenario(String name, String comments, List<EventDataJava> eventsJava, List<EventDataJS> eventsJSExpected) { + this.name = name; + this.comments = comments; + this.eventsJava = eventsJava; + this.eventsJSExpected = eventsJSExpected; + } + + @Override + public String toString() { + String result = name + "(" + eventsJava.size() + " events)"; + if (comments != null && !comments.isEmpty()) { + result = result + "[" + comments + "]"; + } + return result; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + Scenario scenario = (Scenario) o; + return Objects.equals(name, scenario.name) && Objects.equals(comments, scenario.comments) && Objects.equals(eventsJava, scenario.eventsJava) && Objects.equals(eventsJSExpected, scenario.eventsJSExpected); + } + + @Override + public int hashCode() { + return Objects.hash(name, comments, eventsJava, eventsJSExpected); + } + + public static class EventDataJava { + static final Map<Integer, String> ID_TO_TYPE = Map.of( + KeyEvent.KEY_PRESSED, "KEY_PRESSED", + KeyEvent.KEY_TYPED, "KEY_TYPED", + KeyEvent.KEY_RELEASED, "KEY_RELEASED" + ); + static final Map<Integer, String> KEY_LOCATION_TO_STRING = Map.of( + KeyEvent.KEY_LOCATION_UNKNOWN, "KEY_LOCATION_UNKNOWN", + KeyEvent.KEY_LOCATION_STANDARD, "KEY_LOCATION_STANDARD", + KeyEvent.KEY_LOCATION_LEFT, "KEY_LOCATION_LEFT", + KeyEvent.KEY_LOCATION_RIGHT, "KEY_LOCATION_RIGHT", + KeyEvent.KEY_LOCATION_NUMPAD, "KEY_LOCATION_NUMPAD" + ); + public int id; + public int modifiers; + public int keyCode; + public char keyChar; + public int keyLocation; + private final long rawCode; + private final long primaryLevelUnicode; + private final long scancode; // for MS Windows only + private final long extendedKeyCode; + + EventDataJava(KeyEvent e) { + id = e.getID(); + modifiers = e.getModifiersEx(); + keyCode = e.getKeyCode(); + keyChar = e.getKeyChar(); + keyLocation = e.getKeyLocation(); + rawCode = getPrivateLongField(e, "rawCode"); + primaryLevelUnicode = getPrivateLongField(e, "primaryLevelUnicode"); + scancode = getPrivateLongField(e, "scancode"); + extendedKeyCode = getPrivateLongField(e, "extendedKeyCode"); + } + + public KeyEvent makeKeyEvent(Component component) { + KeyEvent result = new KeyEvent(component, id, 0, modifiers, keyCode, keyChar, keyLocation); + setPrivateLongField(result, "rawCode", rawCode); + setPrivateLongField(result, "primaryLevelUnicode", primaryLevelUnicode); + setPrivateLongField(result, "scancode", scancode); + setPrivateLongField(result, "extendedKeyCode", extendedKeyCode); + return result; + } + + @Override + public String toString() { + return "{" + + "id=" + ID_TO_TYPE.getOrDefault(id, "unknown") + + ", modifiers=" + modifiers + "(0b" + Integer.toBinaryString(modifiers) + ")" + + ", keyCode=" + keyCode + "(0x" + Integer.toHexString(keyCode) + ")" + + ", keyChar=" + keyChar + "(" + (int) keyChar + ", 0x" + Integer.toHexString(keyChar) + ")" + + ", keyLocation=" + KEY_LOCATION_TO_STRING.getOrDefault(keyLocation, "unknown") + + ", rawCode=" + rawCode + "(0x" + Long.toHexString(rawCode) + ")" + + ", primaryLevelUnicode=" + primaryLevelUnicode + "(0x" + Long.toHexString(primaryLevelUnicode) + ")" + + ", scancode=" + scancode + "(0x" + Long.toHexString(scancode) + ")" + + ", extendedKeyCode=" + extendedKeyCode + "(0x" + Long.toHexString(extendedKeyCode) + ")" + + '}'; + } + + private static long getPrivateLongField(KeyEvent e, String name) { + Field field; + try { + field = KeyEvent.class.getDeclaredField(name); + } catch (NoSuchFieldException ex) { + return Long.MAX_VALUE; + } + field.setAccessible(true); + try { + return (long) field.get(e); + } catch (IllegalAccessException ex) { + return Long.MAX_VALUE; + } + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + EventDataJava that = (EventDataJava) o; + return id == that.id && modifiers == that.modifiers && keyCode == that.keyCode && keyChar == that.keyChar && keyLocation == that.keyLocation && rawCode == that.rawCode && primaryLevelUnicode == that.primaryLevelUnicode && scancode == that.scancode && extendedKeyCode == that.extendedKeyCode; + } + + @Override + public int hashCode() { + return Objects.hash(id, modifiers, keyCode, keyChar, keyLocation, rawCode, primaryLevelUnicode, scancode, extendedKeyCode); + } + } + + private static void setPrivateLongField(KeyEvent e, String name, long value) { + Field field; + try { + field = KeyEvent.class.getDeclaredField(name); + } catch (NoSuchFieldException ex) { + return; + } + field.setAccessible(true); + try { + field.set(e, value); + } catch (IllegalAccessException ignored) { + } + + } + + public static class EventDataJS { + public final String type; + public final String key; + public final String code; + public final String location; + public final String altKey; + public final String ctrlKey; + public final String metaKay; + public final String shiftKey; + + public static EventDataJS fromJson(String jsonText) { + return new Gson().fromJson(jsonText, EventDataJS.class); + } + + public String toJson() { + return new GsonBuilder() + .setPrettyPrinting() + .create() + .toJson(this); + } + + + private EventDataJS(String type, String key, String code, String location, String altKey, String ctrlKey, String metaKay, String shiftKey) { + this.type = type; + this.key = key; + this.code = code; + this.location = location; + this.altKey = altKey; + this.ctrlKey = ctrlKey; + this.metaKay = metaKay; + this.shiftKey = shiftKey; + } + + @Override + public String toString() { + return toJson(); +// return "{" + +// "type='" + type + '\'' + +// ", key='" + key + '\'' + +// ", code='" + code + '\'' + +// ", location='" + location + '\'' + +// ", altKey='" + altKey + '\'' + +// ", ctrlKey='" + ctrlKey + '\'' + +// ", metaKay='" + metaKay + '\'' + +// ", shiftKey='" + shiftKey + '\'' + +// '}'; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + EventDataJS that = (EventDataJS) o; + return Objects.equals(type, that.type) && Objects.equals(key, that.key) && Objects.equals(code, that.code) && Objects.equals(location, that.location) && Objects.equals(altKey, that.altKey) && Objects.equals(ctrlKey, that.ctrlKey) && Objects.equals(metaKay, that.metaKay) && Objects.equals(shiftKey, that.shiftKey); + } + + @Override + public int hashCode() { + return Objects.hash(type, key, code, location, altKey, ctrlKey, metaKay, shiftKey); + } + } +} diff --git a/java_tests/tests/keyboard/ScenarioMaker.java b/java_tests/tests/keyboard/ScenarioMaker.java new file mode 100644 index 0000000..afd906c --- /dev/null +++ b/java_tests/tests/keyboard/ScenarioMaker.java @@ -0,0 +1,244 @@ +package tests.keyboard; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.reflect.TypeToken; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.*; +import java.io.File; +import java.io.IOException; +import java.lang.reflect.Type; +import java.nio.file.Files; +import java.util.List; +import java.util.*; + +public class ScenarioMaker { + public static void main(String[] args) { + Impl app = new Impl(); + app.run(); + } + + public static class Impl { + final static String START_BUTTON_TEXT = "\uD83D\uDD34(Press to start)"; + final static String STOP_BUTTON_TEXT = "⏹(Press to stop)"; + + private final JFrame myFrame = new JFrame("Keyboard test scenario generator"); + + private final JButton mySaveButton = new JButton("Save..."); + private final JButton myLoadButton = new JButton("Load..."); + private final JButton myDeleteScenarioButton = new JButton("Delete"); + private final JButton myResetCompositionButton = new JButton("Reset composition"); + private final JButton myResetButton = new JButton("New"); + private final JLabel myStartButton = new JLabel(START_BUTTON_TEXT); + + private final DefaultListModel<Scenario> myScenariosList = new DefaultListModel<>(); + private final JList<Scenario> myScenariosListComponent = new JList<>(myScenariosList); + + private final DefaultListModel<Scenario.EventDataJava> myEventsList = new DefaultListModel<>(); + private final JList<Scenario.EventDataJava> myEventListComponent = new JList<>(myEventsList); + + private final DefaultListModel<Scenario.EventDataJava> myCompositionEventsList = new DefaultListModel<>(); + private final JList<Scenario.EventDataJava> myCompositionEventListComponent = new JList<>(myCompositionEventsList); + + private final List<JComponent> activeComponents = Arrays.asList(mySaveButton, myLoadButton, + myDeleteScenarioButton, myResetCompositionButton, myResetButton, myScenariosListComponent, + myEventListComponent); + private final ScenarioCompositor myScenarioCompositor = new ScenarioCompositor(); + + public void run() { + SwingUtilities.invokeLater(this::makeUI); + SwingUtilities.invokeLater(this::init); + } + + private void makeUI() { + myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + myFrame.getContentPane().setLayout(new BoxLayout(myFrame.getContentPane(), BoxLayout.X_AXIS)); + + JPanel scenarioPanel = new JPanel(); + scenarioPanel.setBorder(BorderFactory.createTitledBorder("Scenarios")); + scenarioPanel.setLayout(new BoxLayout(scenarioPanel, BoxLayout.Y_AXIS)); + scenarioPanel.add(new JScrollPane(myScenariosListComponent)); + myFrame.add(scenarioPanel); + + JPanel scenarioButtonsPanel = new JPanel(); + scenarioButtonsPanel.setLayout(new BoxLayout(scenarioButtonsPanel, BoxLayout.X_AXIS)); + scenarioButtonsPanel.add(mySaveButton); + scenarioButtonsPanel.add(myLoadButton); + scenarioButtonsPanel.add(myResetButton); + scenarioButtonsPanel.add(Box.createHorizontalGlue()); + myStartButton.setBorder(BorderFactory.createLineBorder(Color.RED, 2)); + scenarioButtonsPanel.add(myStartButton); + scenarioButtonsPanel.add(Box.createHorizontalGlue()); + scenarioButtonsPanel.add(myDeleteScenarioButton); + scenarioButtonsPanel.add(myResetCompositionButton); + scenarioPanel.add(scenarioButtonsPanel); + + JPanel compositionPanel = new JPanel(); + compositionPanel.setLayout(new BoxLayout(compositionPanel, BoxLayout.Y_AXIS)); + compositionPanel.add(new Label("Composition:")); + compositionPanel.add(new JScrollPane(myCompositionEventListComponent)); + scenarioPanel.add(compositionPanel); + compositionPanel.setMaximumSize(compositionPanel.getPreferredSize()); + + JPanel eventsPanel = new JPanel(); + eventsPanel.setBorder(BorderFactory.createTitledBorder("Events in the scenario")); + eventsPanel.setLayout(new BoxLayout(eventsPanel, BoxLayout.Y_AXIS)); + myCompositionEventListComponent.setVisibleRowCount(5); + eventsPanel.add(new JScrollPane(myEventListComponent)); + myFrame.add(eventsPanel); + + JPanel eventsButtonsPanel = new JPanel(); + eventsButtonsPanel.setLayout(new BoxLayout(eventsButtonsPanel, BoxLayout.X_AXIS)); + eventsButtonsPanel.add(Box.createHorizontalGlue()); + eventsPanel.add(eventsButtonsPanel); + + myFrame.pack(); + myFrame.setVisible(true); + } + + private void init() { + myStartButton.addMouseListener(new MouseAdapter() { + boolean recording = false; + + @Override + public void mouseClicked(MouseEvent e) { + recording = !recording; + setRecording(recording); + super.mouseClicked(e); + } + }); + + myResetButton.addActionListener(e -> { + myScenariosList.clear(); + myScenarioCompositor.reset(); + }); + + myDeleteScenarioButton.addActionListener(e -> { + int selected = myScenariosListComponent.getSelectedIndex(); + if (selected >= 0) { + myScenariosList.remove(selected); + myScenariosListComponent.setSelectedIndex(Math.min(selected, myScenariosList.size() - 1)); + } + }); + + myScenariosListComponent.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + myScenariosListComponent.addListSelectionListener(ignored -> { + myEventsList.clear(); + int selected = myScenariosListComponent.getSelectedIndex(); + if (selected >= 0) + myEventsList.addAll(myScenariosList.get(selected).eventsJava); + }); + + myLoadButton.addActionListener(e -> { + JFileChooser fileChooser = new JFileChooser(); + if (fileChooser.showOpenDialog(myFrame) == JFileChooser.APPROVE_OPTION) { + String jsonText = null; + try { + jsonText = Files.readString(fileChooser.getSelectedFile().toPath()); + } catch (IOException ex) { + JOptionPane.showMessageDialog(myFrame, + "Failed to write the file:\n" + fileChooser.getSelectedFile(), "Error", + JOptionPane.ERROR_MESSAGE); + } + Type typeToken = new TypeToken<ArrayList<Scenario>>() {}.getType(); + ArrayList<Scenario> scenarios = new Gson().fromJson(jsonText, typeToken); + myScenariosList.clear(); + myScenariosList.addAll(scenarios); + } + }); + + mySaveButton.addActionListener(e -> { + JFileChooser fileChooser = new JFileChooser(); + fileChooser.setSelectedFile(new File("scenario_mac.json")); + if (fileChooser.showSaveDialog(myFrame) == JFileChooser.APPROVE_OPTION) { + String jsonString = new GsonBuilder() + .setPrettyPrinting() + .create() + .toJson(myScenariosList.toArray()); + File outFile = fileChooser.getSelectedFile(); + try { + Files.write(outFile.toPath(), jsonString.getBytes()); + } catch (IOException ex) { + JOptionPane.showMessageDialog(myFrame, + "Failed to write the file:\n" + outFile, + "Error", + JOptionPane.ERROR_MESSAGE); + } + } + }); + myResetCompositionButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + myScenarioCompositor.reset(); + } + }); + } + + + private void setRecording(boolean start) { + myStartButton.setText(start ? STOP_BUTTON_TEXT : START_BUTTON_TEXT); + for (JComponent c : activeComponents) { + c.setEnabled(!start); + } + if (start) { + DefaultFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(myScenarioCompositor); + } else { + DefaultFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(myScenarioCompositor); + } + } + + class ScenarioCompositor implements KeyEventDispatcher { + final Set<Integer> pressedKeys = new HashSet<>(); + List<Scenario.EventDataJava> keyEvents = new ArrayList<>(); + String scenarioName = ""; + + void reset() { + pressedKeys.clear(); + keyEvents = new ArrayList<>(); + scenarioName = ""; + myCompositionEventsList.clear(); + } + + void commit() { + int i = myScenariosListComponent.getSelectedIndex(); + myScenariosList.insertElementAt(new Scenario(scenarioName, keyEvents), i + 1); + myScenariosListComponent.setSelectedIndex(i + 1); + myScenariosListComponent.ensureIndexIsVisible(i + 1); + reset(); + } + + @Override + public boolean dispatchKeyEvent(KeyEvent e) { + System.err.println("dispatchKeyEvent: " + e); + if (e.getKeyCode() == 0 && e.getKeyChar() == 0xFFFF) { + // fn key + return false; + } + keyEvents.add(new Scenario.EventDataJava(e)); + myCompositionEventsList.clear(); + myCompositionEventsList.addAll(keyEvents); + if (e.getID() == KeyEvent.KEY_PRESSED) { + pressedKeys.add(e.getKeyCode()); + appendName(KeyEvent.getKeyText(e.getKeyCode())); + } else if (e.getID() == KeyEvent.KEY_RELEASED) { + pressedKeys.remove(e.getKeyCode()); + if (pressedKeys.isEmpty() && keyEvents.get(0).keyCode == keyEvents.get(keyEvents.size() - 1).keyCode) { + commit(); + } + } + e.consume(); + return true; + } + + private void appendName(String keyName) { + if (scenarioName.isEmpty()) { + scenarioName = keyName; + } else { + scenarioName = scenarioName + "+" + keyName; + } + } + } + } +} diff --git a/jb/project/java-gradle/build.gradle b/jb/project/java-gradle/build.gradle index 7fb727c..2c0f155 100644 --- a/jb/project/java-gradle/build.gradle +++ b/jb/project/java-gradle/build.gradle @@ -21,6 +21,8 @@ if (!OperatingSystem.current().isMacOsX()) { } sourceSets.test.java.srcDirs = ['../../../java_tests'] +sourceSets.test.resources.srcDirs = ['../../../java_tests/tests/junittests/data'] +sourceSets.test.output.resourcesDir = 'build/classes/java/test/tests/junittests/data' compileJava.options.compilerArgs += [ '--module-path', "$projectDir/../../../third_party/jogamp/jar", @@ -52,6 +54,7 @@ test { '--add-opens=java.desktop/java.awt.peer=ALL-UNNAMED', '--add-exports=java.desktop/java.awt.peer=ALL-UNNAMED', '--add-opens=java.desktop/sun.awt=ALL-UNNAMED', + '--add-opens=java.desktop/java.awt.event=ALL-UNNAMED', '--add-exports=java.desktop/sun.awt=ALL-UNNAMED', '-Djcef.tests.osr=true' ] @@ -64,5 +67,6 @@ dependencies { "$projectDir/../../../third_party/jogamp/jar/gluegen-rt.jar") testImplementation files( "$projectDir/../../../third_party/junit/junit-platform-console-standalone-1.10.0.jar", + "$projectDir/../../../third_party/gson/gson-2.10.1.jar", "$projectDir/../../../third_party/jakarta/jakarta.xml.bind-api-2.3.2.jar") } diff --git a/jb/project/java-gradle/gradle.properties b/jb/project/java-gradle/gradle.properties index ea7b704..57807f2 100644 --- a/jb/project/java-gradle/gradle.properties +++ b/jb/project/java-gradle/gradle.properties @@ -1,4 +1,4 @@ # change appropriately # jbr_win = C:/jbrt/jbr -# jbr_mac = /Users/tav/jbrt-dev/jbr/Contents/Home +jbr_mac = /Users/Vladimir.Kharitonov/develop/java/jbrsdk_jcef-17.0.8-osx-aarch64-b1038/Contents/Home # jbr_linux = /home/tav/jbrt/jbr diff --git a/third_party/gson/gson-2.10.1.jar b/third_party/gson/gson-2.10.1.jar Binary files differnew file mode 100644 index 0000000..a88c5bd --- /dev/null +++ b/third_party/gson/gson-2.10.1.jar |