From 67919277ad5a19b862005ed66051ab41988a7cf4 Mon Sep 17 00:00:00 2001 From: prescientmoon Date: Wed, 28 Feb 2024 10:11:01 +0100 Subject: [PATCH] Fix text positioning on wide keys --- keyboards/kanata/laptop/lens.json | 14 +- keyboards/kanata/laptop/lens.svg | 1129 +++++++++++++++-------- keyboards/qmk/ferris-sweep/config.lens | 40 +- keyboards/qmk/ferris-sweep/lens.svg | 1149 ++++++++++++++++-------- layout-lens/src/render.ts | 13 +- 5 files changed, 1563 insertions(+), 782 deletions(-) diff --git a/keyboards/kanata/laptop/lens.json b/keyboards/kanata/laptop/lens.json index 6bc0511..7e8c65d 100644 --- a/keyboards/kanata/laptop/lens.json +++ b/keyboards/kanata/laptop/lens.json @@ -7,7 +7,7 @@ "keyStrokeWidth": 1.5 }, "keys": [ - ["Q", "!", "1", "f1"], + ["Q", "+", "1", "f1"], ["A", "<", "6", "f6"], ["X", ">", "", "f11"], ["W", "@", "2", "f2"], @@ -21,22 +21,22 @@ ["V", ")"], ["B", "%", "5", "f5"], ["G", "?", "0", "f10"], - ["Z", ""], + ["Z", "!"], ["TR", "", ""], - ["âŖ", "", ""], + ["âŖ", "\\", ""], ["TL", "", ""], - ["J", "^", "🏠", "😱"], + ["J", "_", "🏠", "😱"], ["M", "-", "◄", "↩ī¸"], ["K", "—", "", "🎮"], ["L", "&", "âŦ", "copy"], - ["N", "_", "â–ŧ", "📋"], + ["N", "^", "â–ŧ", "📋"], ["H", "|", "", "✂ī¸"], ["U", "*", "âĢ", "⏊"], ["E", "/", "▲", "⏯ī¸"], - [",", "\\", "", "âĒ"], + [",", "", "", "âĒ"], ["Y", "~", "end", "🔊"], ["I", "=", "â–ē", "🔉"], - [".", "+", "", "🔇"], + [".", "", "", "🔇"], [":", "`", "🗑ī¸", "🔆"], ["O", ";", "", "🔅"], ["'", "\"", ""] diff --git a/keyboards/kanata/laptop/lens.svg b/keyboards/kanata/laptop/lens.svg index 70a9ab1..4d8b990 100644 --- a/keyboards/kanata/laptop/lens.svg +++ b/keyboards/kanata/laptop/lens.svg @@ -1,859 +1,1244 @@ - \n + + Q - \n - ! - \n + + + + + + 1 - \n + + f1 - \n + + - \n + + A - \n + + < - \n + + 6 - \n + + f6 - \n + + - \n + + X - \n + + > - \n - \n + + + + f11 - \n + + - \n + + W - \n + + @ - \n + + 2 - \n + + f2 - \n + + - \n + + R - \n + + { - \n + + 7 - \n + + f7 - \n + + - \n + + C - \n + + } - \n - \n + + + + f12 - \n + + - \n + + F - \n + + # - \n + + 3 - \n + + f3 - \n + + - \n + + S - \n + + [ - \n + + 8 - \n + + f8 - \n + + - \n + + D - \n - ] - \n - \n - \n + + ] + + + + + + + - \n + + P - \n + + $ - \n + + 4 - \n + + f4 - \n + + - \n + + T - \n + + ( - \n + + 9 - \n + + f9 - \n + + - \n + + V - \n - ) - \n - \n - \n + + ) + + + + + + + - \n + + B - \n + + % - \n + + 5 - \n + + f5 - \n + + - \n + + G - \n + + ? - \n + + 0 - \n + + f10 - \n + + - \n + + Z - \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 + + M - \n + + - - \n + + ◄ - \n + + ↩ī¸ - \n + + - \n + + K - \n + + — - \n - \n + + + + 🎮 - \n + + - \n + + L - \n + + & - \n + + âŦ - \n + + copy - \n + + - \n + + N - \n - _ - \n + + + ^ + + â–ŧ - \n + + 📋 - \n + + - \n + + H - \n + + | - \n - \n + + + + ✂ī¸ - \n + + - \n + + U - \n + + * - \n + + âĢ - \n + + ⏊ - \n + + - \n + + E - \n + + / - \n + + ▲ - \n + + ⏯ī¸ - \n + + - \n + + , - \n - \ - \n - \n + + + + + + âĒ - \n + + - \n + + Y - \n + + ~ - \n + + end - \n + + 🔊 - \n + + - \n + + I - \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 - ctrl - - \n - - \n - \n - \n + + + + + + ctrl - \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 + + + + + + 💾 diff --git a/keyboards/qmk/ferris-sweep/config.lens b/keyboards/qmk/ferris-sweep/config.lens index 1f12c9a..37b8495 100644 --- a/keyboards/qmk/ferris-sweep/config.lens +++ b/keyboards/qmk/ferris-sweep/config.lens @@ -31,30 +31,30 @@ section layergroup 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 , . ' - đŸŸĨ âŖ ⇧ đŸŸĻ + 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 , . ' + đŸŸĨ âŖ ⇧ đŸŸĻ end layer red topright #0b00d9 - 1 2 3 4 ⚔ī¸ âĒ âŦ âĢ ⏊ 🗑ī¸ - 5 6 7 8 ⚔ī¸ ◄ â–ŧ ▲ â–ē ⚔ī¸ - 9 0 ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ + 1 2 3 4 ⚔ī¸ 🏠 âŦ âĢ 🔚 🗑ī¸ + 5 6 7 8 ⚔ī¸ ◄ â–ŧ ▲ â–ē ⚔ī¸ + 9 0 ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ đŸŸĒ end layer blue topleft #b80034 - ! @ [ ( % ^ & * ~ ` - < { ] ) ? - _ / = ; - > } $ ? ⚔ī¸ — | \ + " - đŸŸĒ ⚔ī¸ ⚔ī¸ ⚔ī¸ + ! @ [ ( % ^ & * ~ ` + < { ] ) ? | - / = ; + > } $ ? ⚔ī¸ — _ \ + " + đŸŸĒ ⚔ī¸ ⚔ī¸ ⚔ī¸ end layer purple bottomleft #660099 f1 f2 f3 f4 f5 😱 copy ⏊ 🔊 🔆 - f6 f7 f8 f9 f10 ↩ī¸ 📋 ⏯ī¸ 🔉 🔅 - f11 f12 f4 ⚔ī¸ ⚔ī¸ 🎮 ✂ī¸ âĒ 🔇 ⚔ī¸ + f6 f7 f8 f9 f10 ↩ī¸ 📋 ⏯ī¸ 🔉 🔅 + f11 f12 f4 ⚔ī¸ ⚔ī¸ 🎮 ✂ī¸ âĒ 🔇 ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ ⚔ī¸ end @@ -62,15 +62,15 @@ section columns 2 chordgroup - A R => âŒĨ #39f785 - S T => â­ž #fdff80 0.8 - G M => âŒĢ #f9adff - N E => âŠĨ #f58e8e - I O => âŒĨ #39f785 + A R => âŒĨ #39f785 + S T => â­ž #fdff80 0.8 + G M => âŒĢ #f9adff + N E => âŠĨ #f58e8e + I O => âŒĨ #39f785 chordgroup - R S => ⇧ #f9adff - E I => ⇧ #f9adff + R S => ⇧ #f9adff + E I => ⇧ #f9adff chordgroup R T => ctrl #fdff80 diff --git a/keyboards/qmk/ferris-sweep/lens.svg b/keyboards/qmk/ferris-sweep/lens.svg index d97f598..b5fed15 100644 --- a/keyboards/qmk/ferris-sweep/lens.svg +++ b/keyboards/qmk/ferris-sweep/lens.svg @@ -1,882 +1,1277 @@ - \n + + Q - \n + + ! - \n + + 1 - \n + + f1 - \n + + - \n + + A - \n + + < - \n + + 6 - \n + + f6 - \n + + - \n + + X - \n + + > - \n - \n + + + + f11 - \n + + - \n + + W - \n + + @ - \n + + 2 - \n + + f2 - \n + + - \n + + R - \n + + { - \n + + 7 - \n + + f7 - \n + + - \n + + C - \n + + } - \n - \n + + + + f12 - \n + + - \n + + F - \n + + # - \n + + 3 - \n + + f3 - \n + + - \n + + S - \n + + [ - \n + + 8 - \n + + f8 - \n + + - \n + + D - \n - ] - \n - \n - \n + + ] + + + + + + + - \n + + P - \n + + $ - \n + + 4 - \n + + f4 - \n + + - \n + + T - \n + + ( - \n + + 9 - \n + + f9 - \n + + - \n + + V - \n - ) - \n - \n - \n + + ) + + + + + + + - \n + + B - \n + + % - \n + + 5 - \n + + f5 - \n + + - \n + + G - \n + + ? - \n + + 0 - \n + + f10 - \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 + + J - \n + + ^ - \n + + 🏠 - \n + + 😱 - \n + + - \n + + M - \n + + - - \n + + ◄ - \n + + ↩ī¸ - \n + + - \n + + K - \n + + — - \n - \n + + + + 🎮 - \n + + - \n + + L - \n + + & - \n + + âŦ - \n + + copy - \n + + - \n + + N - \n + + _ - \n + + â–ŧ - \n + + 📋 - \n + + - \n + + H - \n + + | - \n - \n + + + + ✂ī¸ - \n + + - \n + + U - \n + + * - \n + + âĢ - \n + + ⏊ - \n + + - \n + + E - \n + + / - \n + + ▲ - \n + + ⏯ī¸ - \n + + - \n + + , - \n + + \ - \n - \n + + + + âĒ - \n + + - \n + + Y - \n + + ~ - \n + + end - \n + + 🔊 - \n + + - \n + + I - \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 - ctrl - - \n - - \n - \n - \n + + + + + + ctrl - \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 + + + + + + 💾 diff --git a/layout-lens/src/render.ts b/layout-lens/src/render.ts index 28dae01..dfe6062 100644 --- a/layout-lens/src/render.ts +++ b/layout-lens/src/render.ts @@ -65,6 +65,7 @@ function renderKey( ) { const withPadding = applyKeyPadding(visual, measurements); const center = keyCenter(visual); + const keySize = measurements.keySize - 2 * measurements.keyPadding; const textOverlays = flags.text ? [ @@ -82,8 +83,8 @@ function renderKey( tag( "text", { - x: withPadding.position[0] + withPadding.size[0] / 6, - y: withPadding.position[1] + withPadding.size[1] / 6, + x: withPadding.position[0] + keySize / 10, + y: withPadding.position[1] + keySize / 6, fill: textColor(colorscheme, key.tlLayer, colorscheme.tlLayerColor), "font-size": "66%", ...textAttribs, @@ -94,8 +95,8 @@ function renderKey( tag( "text", { - x: withPadding.position[0] + (9 * withPadding.size[0]) / 10, - y: withPadding.position[1] + withPadding.size[1] / 6, + x: withPadding.position[0] + (9 * keySize) / 10, + y: withPadding.position[1] + keySize / 6, fill: textColor(colorscheme, key.trLayer, colorscheme.trLayerColor), "font-size": "66%", ...textAttribs, @@ -106,8 +107,8 @@ function renderKey( tag( "text", { - x: withPadding.position[0] + withPadding.size[0] / 10, - y: withPadding.position[1] + (5 * withPadding.size[1]) / 6, + x: withPadding.position[0] + keySize / 10, + y: withPadding.position[1] + (5 * keySize) / 6, fill: textColor(colorscheme, key.blLayer, colorscheme.blLayerColor), "font-size": "66%", ...textAttribs,