From 6ce0a3930b069498e4660bf8b8c74b8f32ebd70f Mon Sep 17 00:00:00 2001 From: prescientmoon Date: Thu, 22 Feb 2024 01:07:41 +0100 Subject: [PATCH] Prepare idea for purescript rewrite --- keyboards/kanata/laptop/lens.svg | 396 ++++++------- keyboards/qmk/ferris-sweep/config.lens | 79 +++ keyboards/qmk/ferris-sweep/keymap.c | 8 +- keyboards/qmk/ferris-sweep/lens.svg | 786 ++++++++++++------------- layout-lens/src/layout.ts | 2 - layout-lens/vim/syntax/lens.vim | 24 + 6 files changed, 698 insertions(+), 597 deletions(-) create mode 100644 keyboards/qmk/ferris-sweep/config.lens create mode 100644 layout-lens/vim/syntax/lens.vim diff --git a/keyboards/kanata/laptop/lens.svg b/keyboards/kanata/laptop/lens.svg index 70a9ab1..1463c31 100644 --- a/keyboards/kanata/laptop/lens.svg +++ b/keyboards/kanata/laptop/lens.svg @@ -1,4 +1,4 @@ - + \n @@ -340,520 +340,520 @@ \n \n\n - + \n\n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n - \n + \n - + \n - + \n - + \n - + \n\n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n\n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n - \n + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n ctrl \n - - \n - \n - \n + + \n + \n + \n ctrl - \n + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n 📋 \n - - \n - \n - \n + + \n + \n + \n - \n + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n 💾 diff --git a/keyboards/qmk/ferris-sweep/config.lens b/keyboards/qmk/ferris-sweep/config.lens new file mode 100644 index 0000000..a7baa74 --- /dev/null +++ b/keyboards/qmk/ferris-sweep/config.lens @@ -0,0 +1,79 @@ +physical + block + 0 1 + 1 0.5 + 2 0 + 3 0.5 + 4 1 + + block + place 0 0 + place 7 0 + + place 0 0 + place 0 1 + place 0 2 + + block + 0 0 + 1 0 + + place 3.5 4.5 0.2617993878 4 5 + place 6.5 4.5 -0.2617993878 8 5 + +section + keyboard + action 🟥 🌈 sticky-switch red + action 🟦 🌈 sticky-switch blue + action 🟪 ⚔️ sticky-switch purple + + layer main center + Q W F P B J L U Y : + A R S T G M N E I O + X C D V Z K H , . ' + 🟥 ␣ ⇧ 🟦 + + layer red topright #0b00d9 + 1 2 3 4 ⚔️ 🏠 ⏬ ⏫ end 🗑️ + 5 6 7 8 ⚔️ ◄ ▼ ▲ ► ⚔️ + 9 0 ⚔️ ⚔️ ⚔️ ⚔️ ⚔️ ⚔️ ⚔️ ⚔️ + ⚔️ ⚔️ ⚔️ 🟪 + + layer blue topleft #b80034 + ! @ [ ( % ^ & * ~ ` + < { ] ) ? - _ / = ; + > } $ ? ⚔️ — | \ + " + 🟪 ⚔️ ⚔️ ⚔️ + + layer purple bottomleft #660099 + f1 f2 f3 f4 f5 😱 copy ⏩ 🔊 🔆 + f6 f7 f8 f9 f10 ↩️ 📋 ⏯️ 🔉 🔅 + f11 f12 f4 ⚔️ ⚔️ 🎮 ✂️ ⏪ 🔇 ⚔️ + ⚔️ ⚔️ ⚔️ ⚔️ + +section + columns 2 + + chordgroup + A R => ⌥ #39f785 + S T => ⭾ #fdff80 0.8 + G M => ⌫ #f9adff + N E => ⊥ #f58e8e + I O => ⌥ #39f785 + + chordgroup + R S => ⇧ #f9adff + E I => ⇧ #f9adff + + chordgroup + R T => ctrl #fdff80 + N I => ctrl #fdff80 + + chordgroup + Q W => ⎋ #9ccaff + C P => 📋 #fdff80 + K I => ❖ #f58e8e + + chordgroup + F T => ↵ #9ccaff + N U => 💾 #9ccaff diff --git a/keyboards/qmk/ferris-sweep/keymap.c b/keyboards/qmk/ferris-sweep/keymap.c index 4f2c373..31bad81 100644 --- a/keyboards/qmk/ferris-sweep/keymap.c +++ b/keyboards/qmk/ferris-sweep/keymap.c @@ -104,10 +104,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_split_3x5_2( // ! @ # $ % ^ & * ` ~ S(KC_1), S(KC_2),S(KC_3),S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8),KC_GRV, S(KC_GRV), - // < ( [ { - ? _ / = ; - S(KC_COMM),S(KC_9),KC_LBRC,S(KC_LBRC),KC_MINS, S(KC_SLSH),S(KC_MINS),KC_SLSH,KC_EQL, KC_SCLN, - // > ) ] } — em dash | \ + " - S(KC_DOT), S(KC_0),KC_RBRC,S(KC_RBRC),UC(0x2014),KC_NO, S(KC_BSLS),KC_BSLS,S(KC_EQL),S(KC_QUOT), + // < { [ ( ? - _ / = ; + S(KC_COMM),S(KC_LBRC),KC_LBRC,S(KC_9),S(KC_SLSH),KC_MINS, S(KC_MINS),KC_SLSH,KC_EQL, KC_SCLN, + // > } ] ) — em dash | \ + " + S(KC_DOT), S(KC_RBRC),KC_RBRC,S(KC_0),KC_NO, UC(0x2014),S(KC_BSLS),KC_BSLS,S(KC_EQL),S(KC_QUOT), TL_LOWR, KC_TRNS, KC_TRNS, KC_NO ), // Purple layer (blue + red) diff --git a/keyboards/qmk/ferris-sweep/lens.svg b/keyboards/qmk/ferris-sweep/lens.svg index 55c56bb..791d050 100644 --- a/keyboards/qmk/ferris-sweep/lens.svg +++ b/keyboards/qmk/ferris-sweep/lens.svg @@ -1,882 +1,882 @@ - + - - \n + + \n Q - \n + \n ! - \n + \n 1 - \n + \n f1 \n - - \n + + \n A - \n + \n < - \n + \n 6 - \n + \n f6 \n - - \n + + \n X - \n + \n > - \n - \n + \n + \n f11 \n - - \n + + \n W - \n + \n @ - \n + \n 2 - \n + \n f2 \n - - \n + + \n R - \n + \n { - \n + \n 7 - \n + \n f7 \n - - \n + + \n C - \n + \n } - \n - \n + \n + \n f12 \n - - \n + + \n F - \n + \n # - \n + \n 3 - \n + \n f3 \n - - \n + + \n S - \n + \n [ - \n + \n 8 - \n + \n f8 \n - - \n + + \n D - \n + \n ] - \n - \n + \n + \n \n - - \n + + \n P - \n + \n $ - \n + \n 4 - \n + \n f4 \n - - \n + + \n T - \n + \n ( - \n + \n 9 - \n + \n f9 \n - - \n + + \n V - \n + \n ) - \n - \n + \n + \n \n - - \n + + \n B - \n + \n % - \n + \n 5 - \n + \n f5 \n - - \n + + \n G - \n + \n ? - \n + \n 0 - \n + \n f10 \n - - \n + + \n Z - \n - \n - \n + \n + \n + \n \n - - \n + + \n ■ - \n - \n - \n + \n + \n + \n \n - - \n + + \n ␣ - \n - \n - \n + \n + \n + \n \n - - \n + + \n ⇧ - \n - \n - \n + \n + \n + \n \n - - \n + + \n ■ - \n - \n - \n + \n + \n + \n \n - - \n + + \n J - \n + \n ^ - \n + \n 🏠 - \n + \n 😱 \n - - \n + + \n M - \n + \n - - \n + \n ◄ - \n + \n ↩️ \n - - \n + + \n K - \n + \n — - \n - \n + \n + \n 🎮 \n - - \n + + \n L - \n + \n & - \n + \n ⏬ - \n + \n copy \n - - \n + + \n N - \n + \n _ - \n + \n ▼ - \n + \n 📋 \n - - \n + + \n H - \n + \n | - \n - \n + \n + \n ✂️ \n - - \n + + \n U - \n + \n * - \n + \n ⏫ - \n + \n \n - - \n + + \n E - \n + \n / - \n + \n ▲ - \n + \n ⏯️ \n - - \n + + \n , - \n + \n \ - \n - \n + \n + \n \n - - \n + + \n Y - \n + \n ~ - \n + \n end - \n + \n 🔊 \n - - \n + + \n I - \n + \n = - \n + \n ► - \n + \n 🔉 \n - - \n + + \n . - \n + \n + - \n - \n + \n + \n 🔇 \n - - \n + + \n : - \n + \n ` - \n + \n 🗑️ - \n + \n 🔆 \n - - \n + + \n O - \n + \n ; - \n - \n + \n + \n 🔅 \n - - \n + + \n ' - \n + \n " - \n - \n + \n + \n \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + - \n - + \n + - \n - + \n + - \n - + \n + - \n - + \n + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - + \n\n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n - \n + \n - + \n - + \n - + \n - + \n\n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + - \n - + \n + - \n - + \n + - \n - + \n + - \n - + \n + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n\n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n - \n + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + - \n - + \n + - \n - + \n + - \n - + \n + - \n - + \n + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n ctrl \n - - \n - \n - \n + + \n + \n + \n ctrl - \n + \n \n - + \n - + \n\n - + \n\n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + - \n - + \n + - \n - + \n + - \n - + \n + - \n - + \n + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n 📋 \n - - \n - \n - \n + + \n + \n + \n - \n + \n - + \n - + \n - + \n - + \n - + \n - + \n\n - + \n - + \n - + \n\n - + \n - + \n - + \n - + - \n - + \n + - \n - + \n + - \n - + \n + - \n - + \n + \n - + \n - + \n - + \n - + \n\n - + \n\n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - + \n - - \n - \n - \n + + \n + \n + \n \n - - \n - \n - \n + + \n + \n + \n 💾 diff --git a/layout-lens/src/layout.ts b/layout-lens/src/layout.ts index ac34a46..377f92b 100644 --- a/layout-lens/src/layout.ts +++ b/layout-lens/src/layout.ts @@ -82,12 +82,10 @@ export function scaleMeasurements( amount: number, ): LayoutMeasurements { return { - imagePadding: measurements.imagePadding * amount, keySize: measurements.keySize * amount, keyPadding: measurements.keyPadding * amount, keyCornerRadius: measurements.keyCornerRadius * amount, keyStrokeWidth: measurements.keyStrokeWidth * amount, - mainToChordsGap: measurements.mainToChordsGap * amount, }; } diff --git a/layout-lens/vim/syntax/lens.vim b/layout-lens/vim/syntax/lens.vim new file mode 100644 index 0000000..63d6af0 --- /dev/null +++ b/layout-lens/vim/syntax/lens.vim @@ -0,0 +1,24 @@ +" if exists("b:current_syntax") +" finish +" endif + +set iskeyword+=- + +syntax keyword lensKeyword physical section keyboard layer chordgroup block +syntax keyword lensAction sticky-switch switch +syntax keyword lensFunction columns place action +syntax keyword lensLayerName center topleft topright bottomleft bottomright + +syntax match lensComment "\v--.*$" +syntax match lensOperator "\v\=\>" +syntax match lensHexColor "#[0-9a-fA-F]\{6\}" + +highlight link lensAction Identifier +highlight link lensKeyword Keyword +highlight link lensLayerName Constant +highlight link lensComment Comment +highlight link lensOperator Operator +highlight link lensHexColor String +highlight link lensFunction Function + +let b:current_syntax = "lens"