feat(image generation): add yaml + makefile to generate images

This commit is contained in:
2025-07-27 14:29:24 +02:00
parent 7b8feedb46
commit d3f18ddcf2
3 changed files with 94 additions and 0 deletions

16
img/Makefile Normal file
View File

@@ -0,0 +1,16 @@
all: Layer-0.svg Layer-1.svg Layer-2.svg
.venv:
uv venv
.venv/bin/keymap: .venv
uv pip install keymap-drawer
Layer-0.svg: keymap.yaml .venv/bin/keymap
uv run keymap draw keymap.yaml -s Base > $@
Layer-1.svg: keymap.yaml .venv/bin/keymap
uv run keymap draw keymap.yaml -s NavNum > $@
Layer-2.svg: keymap.yaml .venv/bin/keymap
uv run keymap draw keymap.yaml -s FunMouse > $@

66
img/keymap.yaml Normal file
View File

@@ -0,0 +1,66 @@
layout: {qmk_keyboard: ferris/0_2/bling, layout_name: LAYOUT_split_3x5_2}
layers:
Base:
- [Q, W, E, R, T, Y, U, I, O, P]
- - {t: A, h: LGUI}
- {t: S, h: LALT}
- {t: D, h: LSFT}
- {t: F, h: LCTL}
- G
- H
- {t: J, h: LCTL}
- {t: K, h: RSFT}
- {t: L, h: LALT}
- {t: ;, h: LGUI}
- [Z, X, C, V, B, N, M, ',', ., /]
- - {t: SPC, h: NavNum}
- {t: ENT, h: FunMouse}
- {t: ESC, h: RALT}
- {t: TAB, h: NavNum}
NavNum:
- ['/', '7', '8', '9', '`', HOME, PGDN, PGUP, END, PSCR]
- [':', '4', '5', '6', '0', '←', '↓', '↑', '→', BSPC]
- [',', '1', '2', '3', '.', PLAY, VOL DWN, VOL UP, MUTE, DEL]
- - ''
- ''
- ''
- ''
FunMouse:
- - F5
- F6
- F7
- F8
- LSFT + RSFT
- PWR
- SLEP
- WAKE
- {t: Base, h: toggle}
- MS WHLU
- - F1
- F2
- F3
- F4
- {t: Compat, h: toggle}
- MS LEFT
- MS DOWN
- MS UP
- MS RGHT
- MS WHLD
- - F9
- F10
- F11
- F12
- {t: Gaming, h: toggle}
- MS BTN4
- MS BTN1
- MS BTN3
- MS BTN2
- MS BTN5
- - ''
- ''
- ''
- ''
combos:
- { p: [30, 33], k: FunMouse, l: [Base], a: "top", w: 50, o: -.1}
- { p: [31, 33], k: Compose, l: [Base] , a: "bottom", o: 1., w: 50}
- { p: [30, 32], k: Compose, l: [Base] , a: "bottom", o: .5, w: 50}

12
img/readme.md Normal file
View File

@@ -0,0 +1,12 @@
# Keymap image generation
## Prerequisites
- `uv` to manage python package
- `make`
## How to generate images
`make` will locally install
[`keymap-drawer`](https://github.com/caksoylar/keymap-drawer)
in `.venv` using `uv` and compile the different layers in separate files.