diff --git a/.github/workflows/draw.yml b/.github/workflows/draw.yml index b7a957b..084a0dc 100644 --- a/.github/workflows/draw.yml +++ b/.github/workflows/draw.yml @@ -17,13 +17,14 @@ concurrency: jobs: draw: - uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@main + uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@dev permissions: contents: write with: - install_branch: "main" # branch to install keymap-drawer from + install_branch: "dev" # branch to install keymap-drawer from keymap_patterns: "config/corneish_zen.keymap" # path to the keymaps to parse config_path: "keymap-drawer/config.yaml" # config file, ignored if it doesn't exist output_folder: "img" # path to save produced SVGs + extra_keymap_yaml: "corneish_zen:'keymap-drawer/combos.yaml'" commit_message: "chore(draw): keymap" fail_on_error: true diff --git a/README.md b/README.md index 386c412..3fb2cbd 100644 --- a/README.md +++ b/README.md @@ -18,19 +18,20 @@ Knucklehead[^1] is a mnemonic, macOS-optimized, 42 key ergonomic columnar layout ## Legend -| Symbol | Key Name | Symbol | Key Name | -| :----: | -------------------------------------------- | :----: | --------------------------------------------------------- | -| 🆆 | [Smart 🆆ord behavior](#smart-🆆ord-behaviors) | 🆇 | [E🆇it smart 🆆ord behavior](#e🆇iting-smart-🆆ord-behaviors) | -| ⌃ | Control | ⇥ | Tab | -| ⌥ | Option | ␣ | Space | -| ⌘ | Command | ⇡ | Page Up | -| ▲ | Meh (⌃ + ⌥ + ⇧) | ⇣ | Page Down | -| ⇧ | Shift | ⛭ | Brightness Up | -| ⇪ | Caps Lock | ⛯ | Brightness Down | -| ⌫ | Backspace | ⟲ | Firmware reset (hold: bootloader mode) | -| ⌦ | Delete | `L1` | Layer 1 | -| ⏎ | Return | `L2` | Layer 2 | -| ⏻ | Power | `Fn` | Function Layer | +| Symbol | Key Name | Symbol | Key Name | +| :----: | --------------------------------------------------- | :----: | --------------------------------------------------------- | +| 🆆 | [Smart 🆆ord behavior](#smart-🆆ord-behaviors) | 🆇 | [E🆇it smart 🆆ord behavior](#e🆇iting-smart-🆆ord-behaviors) | +| ⌃ | Control | ⇥ | Tab | +| ⌥ | Option | ␣ | Space | +| ⌘ | Command | ⇡ | Page Up | +| ▲ | Meh (⌃ + ⌥ + ⇧) | ⇣ | Page Down | +| ✦ | Hyper (⌃ + ⌥ + ⌘ + ⇧) | ⛭ | Brightness Up | +| ⇧ | Shift | ⛯ | Brightness Down | +| ⇪ | Caps Lock | ⟲ | Firmware reset (hold: bootloader mode) | +| ⌫ | Backspace | | | +| ⌦ | Delete | `L1` | Layer 1 | +| ⏎ | Return | `L2` | Layer 2 | +| ⏻ | Power | `Fn` | Function Layer | ## Features diff --git a/img/corneish_zen.svg b/img/corneish_zen.svg index a2537e1..ebca3a2 100644 --- a/img/corneish_zen.svg +++ b/img/corneish_zen.svg @@ -87,6 +87,9 @@ + + + @@ -475,6 +478,63 @@ path.combo { --color--key--bg: var(--color--material--teal--200); --color--key--border: var(--color--material--teal--100); } + +.combo.tap.glyph { + scale: 0.8; +} + +.layer-L1 .combopos-19 .tap.glyph, +.layer-L2 .combopos-19 .tap.glyph, +.layer-Fn .combopos-15 .tap.glyph { + transform-origin-x: 400px; +} + +.layer-L1 .combopos-18 .tap.glyph, +.layer-L1 .combopos-20 .tap.glyph, +.layer-L2 .combopos-18 .tap.glyph, +.layer-L2 .combopos-20 .tap.glyph, +.layer-Fn .combopos-14 .tap.glyph, +.layer-Fn .combopos-16 .tap.glyph { + transform-origin-x: 802px; +} + +.layer-L1 .combopos-13 .tap.glyph, +.layer-L1 .combopos-14 .tap.glyph, +.layer-L2 .combopos-13 .tap.glyph, +.layer-L2 .combopos-14 .tap.glyph, +.layer-Fn .combopos-3 .tap.glyph, +.layer-Fn .combopos-4 .tap.glyph { + transform-origin-x: 762px; +} + + +.layer-L1 .combopos-13 .tap.glyph, +.layer-L2 .combopos-13 .tap.glyph, +.layer-Fn .combopos-3 .tap.glyph { + transform-origin-y: 97px; +} + +.layer-L1 .combopos-14 .tap.glyph, +.layer-L2 .combopos-14 .tap.glyph, +.layer-Fn .combopos-4 .tap.glyph { + transform-origin-y: 177px; +} + + +.layer-L1 .combopos-18 .tap.glyph, +.layer-L2 .combopos-18 .tap.glyph, +.layer-Fn .combopos-14 .tap.glyph { + transform-origin-y: 52px; +} + +.layer-L1 .combopos-19 .tap.glyph, +.layer-L2 .combopos-19 .tap.glyph, +.layer-Fn .combopos-15 .tap.glyph, +.layer-L1 .combopos-20 .tap.glyph, +.layer-L2 .combopos-20 .tap.glyph, +.layer-Fn .combopos-16 .tap.glyph { + transform-origin-y: 132px; +} L1 @@ -756,6 +816,14 @@ path.combo { + + + + + + + + @@ -1033,6 +1101,14 @@ path.combo { + + + + + + + + @@ -1297,6 +1373,14 @@ path.combo { + + + + + + + + diff --git a/keymap-drawer/combos.yaml b/keymap-drawer/combos.yaml new file mode 100644 index 0000000..4ce9ab0 --- /dev/null +++ b/keymap-drawer/combos.yaml @@ -0,0 +1,7 @@ +combos: + - p: [16, 17] + k: { t: $$mdi:star-four-points$$ } + l: [L1, L2, Fn] + - p: [18, 19] + k: { t: $$mdi:star-four-points$$ } + l: [L1, L2, Fn] diff --git a/keymap-drawer/config.yaml b/keymap-drawer/config.yaml index 8cc3553..8bd4a3b 100644 --- a/keymap-drawer/config.yaml +++ b/keymap-drawer/config.yaml @@ -725,3 +725,60 @@ draw_config: --color--key--bg: var(--color--material--teal--200); --color--key--border: var(--color--material--teal--100); } + + .combo.tap.glyph { + scale: 0.8; + } + + .layer-L1 .combopos-19 .tap.glyph, + .layer-L2 .combopos-19 .tap.glyph, + .layer-Fn .combopos-15 .tap.glyph { + transform-origin-x: 400px; + } + + .layer-L1 .combopos-18 .tap.glyph, + .layer-L1 .combopos-20 .tap.glyph, + .layer-L2 .combopos-18 .tap.glyph, + .layer-L2 .combopos-20 .tap.glyph, + .layer-Fn .combopos-14 .tap.glyph, + .layer-Fn .combopos-16 .tap.glyph { + transform-origin-x: 802px; + } + + .layer-L1 .combopos-13 .tap.glyph, + .layer-L1 .combopos-14 .tap.glyph, + .layer-L2 .combopos-13 .tap.glyph, + .layer-L2 .combopos-14 .tap.glyph, + .layer-Fn .combopos-3 .tap.glyph, + .layer-Fn .combopos-4 .tap.glyph { + transform-origin-x: 762px; + } + + + .layer-L1 .combopos-13 .tap.glyph, + .layer-L2 .combopos-13 .tap.glyph, + .layer-Fn .combopos-3 .tap.glyph { + transform-origin-y: 97px; + } + + .layer-L1 .combopos-14 .tap.glyph, + .layer-L2 .combopos-14 .tap.glyph, + .layer-Fn .combopos-4 .tap.glyph { + transform-origin-y: 177px; + } + + + .layer-L1 .combopos-18 .tap.glyph, + .layer-L2 .combopos-18 .tap.glyph, + .layer-Fn .combopos-14 .tap.glyph { + transform-origin-y: 52px; + } + + .layer-L1 .combopos-19 .tap.glyph, + .layer-L2 .combopos-19 .tap.glyph, + .layer-Fn .combopos-15 .tap.glyph, + .layer-L1 .combopos-20 .tap.glyph, + .layer-L2 .combopos-20 .tap.glyph, + .layer-Fn .combopos-16 .tap.glyph { + transform-origin-y: 132px; + } diff --git a/mise.toml b/mise.toml index 9589cd7..7038d41 100644 --- a/mise.toml +++ b/mise.toml @@ -1,2 +1,3 @@ [tools] -"pipx:keymap-drawer" = "latest" +# "pipx:keymap-drawer" = "latest" +"pipx:caksoylar/keymap-drawer" = "dev" diff --git a/scripts/draw.zsh b/scripts/draw.zsh index d531d52..752cec9 100755 --- a/scripts/draw.zsh +++ b/scripts/draw.zsh @@ -9,9 +9,10 @@ function { local __keymap_input_file="$__repo_dir/config/${__keymap}.keymap" local __keymap_svg="$__repo_dir/img/${__keymap}.svg" local __keymap_yaml="$__repo_dir/img/${__keymap}.yaml" + local __combos_yaml="$__repo_dir/keymap-drawer/combos.yaml" local __draw_config="$__repo_dir/keymap-drawer/config.yaml" - keymap -c $__draw_config parse -z $__keymap_input_file -o $__keymap_yaml - keymap -c $__draw_config draw $__keymap_yaml -o $__keymap_svg + keymap -c $__draw_config parse -z $__keymap_input_file > $__keymap_yaml + keymap -c $__draw_config draw $__keymap_yaml $__combos_yaml > $__keymap_svg } $@