984c899
Pinchord · pinchord.git · Tickets · Changelog
Branches > main > 984c899 > files / MANIFEST.in
Remove unused javelin script
Commit: 984c899e4f4a975ddb9e05e13b1f09c551a202b4
Parent: eb7a6f3
1 changed file:
javelin-script.javelin-script view file
@@ -1,227 +0,0 @@-// Pinchord's javelin script-// Copyright Grahp under https://grahp.dev/pinchord.git/LICENSE---// TODO:-// - Put configurable things first-// - try to figure out the story of changing the layout?-// - Fallback lookup with # and + and friends--// Bitset of keys pressed in the last stroke-// Reset after the stroke has been sent-var pressed_keys;-// Bitset of the current keys pressed down-// Changes every time a key is pressed/released-var current_keys;--const key_masks = [[- 00 00 00 00 00 00 00 00- 00 00 00 00 00 00 00 00- 00 00 00 00 00 00 00 00- 00 00 00 00 00 00 00 00- 00 00 00 00 00 00 00-- // X1 through X26- 01 02 03 04 05 06 07 08 09 0a 0b 0c- 0d 0e 0f 10 11 12 13 14 15 16- 17 18 19 1a-]];--// Aaaagh-// How do the bits in the bitmask map to these keys?-// What are the bits in the bit mask-const mappings_to_steno_keys_to_emulate = [<- //00,- 26, 1, 3, 5, 7, 9, 17, 18, 20, 22, 24, 38,- 26, 2, 4, 6, 8, 19, 21, 23, 25, 38,- 10, 14, 15, 16->];--// These are stripped from lookup!-const affix_bits = [[01 0d 02 0e 0c 16 ff]];-// Baked into logic idk smiesmie-const affixes = [<- "s", "s", "#", "+", "e", "e"->];--// Another bank of special (affix) keys to be stripped from lookup?--func mask(key) var {- return 1 << key_masks[key];-}--// const keys = [<-// "-s", "#-", "T-", "P-", "W-", "&-", "^", "-L", "-P", "-F", "-T", "-e",-// "-s", "+-", "S-", "W-", "R-", "-R", "-K", "-S", "-*", "-e",-// "A", "O", "I", "U"-// >];--func strip_affixes(keys) var {- var i = 0;- while (affix_bits[i] != 0xff) {- // Is this right?- keys &= ~(1 << (affix_bits[i] - 1));- i += 1;- }- return keys;-}--// The X1-X26 keys begin at stenoKey 38 and end at 63, so just add 37 to the index to get the steno key code.-const X_key_offset = 37;--// Probably shouldn't be hard coded-func should_suffix_e(keys) var {- var i = 0;-- while (affix_bits[i] != 0xff) {- if (affixes[<i>] == "e") {- if (keys & (1 << (affix_bits[i] - 1))) {- return 1;- }- }-- i += 1;- }-- return 0;-}--func should_suffix_s(keys) var {- var i = 0;-- while (affix_bits[i] != 0xff) {- if (affixes[<i>] == "s") {- if (keys & (1 << (affix_bits[i] - 1))) {- return 1;- }- }-- i += 1;- }-- return 0;-}--func should_suppress(keys) var {- var i = 0;-- while (affix_bits[i] != 0xff) {- if (affixes[<i>] == "+") {- if (keys & (1 << (affix_bits[i] - 1))) {- return 1;- }- }-- i += 1;- }-- return 0;-}-func should_caps(keys) var {- var i = 0;-- while (affix_bits[i] != 0xff) {- if (affixes[<i>] == "#") {- if (keys & (1 << (affix_bits[i] - 1))) {- return 1;- }- }- i += 1;- }-- return 0;-}--// Key is an index, I guess from gemini?-func press(key) {- pressed_keys |= mask(key);- current_keys |= mask(key);-}--// TODO document...-func pressAllKeys(keys) {- // Start at 1?- var bit = 0;-- while (bit < 26) {- if (keys & (1 << bit)) {- pressStenoKey(mappings_to_steno_keys_to_emulate[<bit>]);- }- bit += 1;- }-- bit = 0;-- while (bit < 26) {- if (keys & (1 << bit)) {- releaseStenoKey(mappings_to_steno_keys_to_emulate[<bit>]);- }- bit += 1;- }-}--func simulate_steno_stroke(keys) {- // Strip # + e etc. from keys- // Get the affixes and send {^}, {-|}, and ^e for each- var lookup_keys = strip_affixes(keys);- pressAllKeys(lookup_keys);-}--func release(key) {- current_keys &= ~mask(key);- // No keys are pressed down- if (current_keys == 0) {- printValue("GRAHP pressed_keys", pressed_keys);-- if (should_suppress(pressed_keys)) {- // {^}- pressStenoKey(2);- releaseStenoKey(2);- } else {- // TODO yeah :p- // {}- pressStenoKey(2);- pressStenoKey(10);- pressStenoKey(14);- pressStenoKey(15);- pressStenoKey(16);- releaseStenoKey(2);- releaseStenoKey(10);- releaseStenoKey(14);- releaseStenoKey(15);- releaseStenoKey(16);- }-- if (should_caps(pressed_keys)) {- // {-|}- pressStenoKey(1);- releaseStenoKey(1);- } else {- // {>}- pressStenoKey(1);- pressStenoKey(10);- pressStenoKey(14);- pressStenoKey(15);- pressStenoKey(16);- releaseStenoKey(1);- releaseStenoKey(10);- releaseStenoKey(14);- releaseStenoKey(15);- releaseStenoKey(16);- }--- // And emulate caps here-- simulate_steno_stroke(pressed_keys);-- // Not sure what to do about these...- // if (should_suffix_e(pressed_keys)) {- // sendText("e");- // }- // if (should_suffix_s(pressed_keys)) {- // sendText("s");- // }- pressed_keys = 0;- }-}