diff --git a/.github/workflows/draw-keymaps.yml b/.github/workflows/draw-keymaps.yml
new file mode 100644
index 0000000..12ac26f
--- /dev/null
+++ b/.github/workflows/draw-keymaps.yml
@@ -0,0 +1,22 @@
+# Draw keymap diagrams using keymap-drawer ZMK user config workflow
+name: Draw ZMK keymaps
+on:
+ workflow_dispatch:
+ push:
+ paths:
+ - 'config/*.keymap'
+ - 'config/includes/*.dtsi'
+ - keymap-drawer/config.yaml
+ - .github/workflows/draw-keymaps.yml
+
+jobs:
+ draw:
+ uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@main
+ with:
+ keymap_patterns: 'config/*.keymap'
+ config_path: keymap-drawer/config.yaml
+ output_folder: keymap-drawer
+ install_branch: main
+ amend_commit: true
+ draw_args: "ergonaut_one:'-k corne_rotated -l LAYOUT_split_3x6_3'"
+ json_path: keymap-drawer/layouts
\ No newline at end of file
diff --git a/README.md b/README.md
index e3da391..a1069c9 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,10 @@ This is a repository for a ZMK Firmware for Ergonaut One keyboard.
Visual representation of the default keymap in keyboard-layout-editor: [KLE](http://www.keyboard-layout-editor.com/#/gists/13d0f7ae7a8b5835efcd23d61f50336a)
+Below representation was generated with [`keymap-drawer`](https://github.com/caksoylar/keymap-drawer) -- check out the automatically generated layouts using the [automated Github workflow](https://github.com/caksoylar/keymap-drawer/tree/main#setting-up-an-automated-drawing-workflow) for each keyboard in the [`keymap-drawer` folder](keymap-drawer/), which is always up to date with the config.
+
+![Keymap Representation](./keymap-drawer/ergonaut_one.svg?raw=true "Keymap Representation")
+
This layout is heavily inspired from [Watchman 42-key layout](https://github.com/aroum/Watchman-layouts)
## FAQ
diff --git a/keymap-drawer/config.yaml b/keymap-drawer/config.yaml
new file mode 100644
index 0000000..591cf3e
--- /dev/null
+++ b/keymap-drawer/config.yaml
@@ -0,0 +1,173 @@
+# configuration for https://github.com/caksoylar/keymap-drawer
+parse_config:
+ raw_binding_map:
+ '&sys_reset': Reset
+ '&bootloader': Boot
+ '&swapper': Win Next
+ '&caps_word': Caps Word
+ '&inv_qm': ¿
+
+ '&kp LC(LG(LEFT))': Desk Left
+ '&kp LC(LG(RIGHT))': Desk Right
+ '&kp LC(TAB)': Tab Right
+ '&kp LC(LS(TAB))': Tab Left
+ '&kp LA(F4)': Win Close
+ '&kp LC(F4)': Tab Close
+ '&kp LS(TAB)': Win Prev
+ '&kp LS(INS)': Paste
+ '&kp LG(L)': Lock
+
+ '&out OUT_USB': Out USB
+ '&out OUT_BLE': Out BLE
+
+ '&bt BT_SEL 0': BT 1
+ '&bt BT_SEL 1': BT 2
+ '&bt BT_SEL 2': BT 3
+ '&bt BT_SEL 3': BT 4
+ '&bt BT_SEL 4': BT 5
+
+ '&mmv MOVE_UP': Mouse ↑
+ '&mmv MOVE_DOWN': Mouse ↓
+ '&mmv MOVE_LEFT': Mouse ←
+ '&mmv MOVE_RIGHT': Mouse →
+
+ '&msc SCRL_UP': Scroll ↑
+ '&msc SCRL_DOWN': Scroll ↓
+ '&msc SCRL_LEFT': Scroll ←
+ '&msc SCRL_RIGHT': Scroll →
+
+ '&mkp LCLK': Left Click
+ '&mkp RCLK': Right Click
+ '&mkp MCLK': Middle Click
+ '&mkp MB4': Back Click
+ '&mkp MB5': Forward Click
+
+ zmk_combos:
+ combo_tab: {align: top, o: 0.15}
+ combo_del: {align: top, o: 0.15}
+ combo_f12: {align: bottom}
+ combo_btclr: {align: bottom}
+ combo_play: {align: right}
+ combo_capswd: {draw_separate: true}
+ combo_semi: {draw_separate: true}
+ combo_grave: {draw_separate: true}
+ combo_lpar: {draw_separate: true}
+ combo_rpar: {draw_separate: true}
+ combo_lbkt: {draw_separate: true}
+ combo_rbkt: {draw_separate: true}
+ combo_tab: {draw_separate: true}
+ combo_del: {draw_separate: true}
+ combo_esc: {draw_separate: true}
+ combo_ret: {draw_separate: true}
+ combo_lock: {draw_separate: true}
+ combo_bslh: {draw_separate: true}
+ combo_slsh: {draw_separate: true}
+
+ zmk_keycode_map:
+ # custom mappings
+ C_VOL_UP: Vol Up
+ C_VOL_DN: Vol Down
+ C_AL_CALC: Calc
+ C_PP: Play Pause
+
+ LCTRL: Ctrl
+ RCTRL: Ctrl
+ LALT: Alt
+ RALT: Alt
+ LGUI: Gui
+ RGUI: Gui
+ LSHFT: Shift
+ RSHFT: Shift
+ ESC: Esc
+ SPACE: ␣
+ BSPC: ⌫
+ RET: ⏎
+ TAB: ↹
+ DEL: ⌦
+
+ PG_UP: Page Up
+ PG_DN: Page Down
+ INS: Insert
+ HOME: Home
+ END: End
+ CAPS: Caps Lock
+ PSCRN: Print Scrn
+ PAUSE_BREAK: Pause Break
+
+ UP: ↑
+ DOWN: ↓
+ LEFT: ←
+ RIGHT: →
+
+ C_PP: ⏯
+ C_NEXT: ⏭️
+ C_PREV: ⏮️
+
+ # defaults
+ AMPERSAND: '&'
+ AMPS: '&'
+ APOS: "'"
+ APOSTROPHE: "'"
+ ASTERISK: '*'
+ ASTRK: '*'
+ AT: '@'
+ AT_SIGN: '@'
+ BACKSLASH: \
+ BSLH: \
+ CARET: ^
+ COLON: ':'
+ COMMA: ','
+ DLLR: $
+ DOLLAR: $
+ DOT: .
+ DOUBLE_QUOTES: '"'
+ DQT: '"'
+ EQUAL: '='
+ EXCL: '!'
+ EXCLAMATION: '!'
+ FSLH: /
+ GRAVE: '`'
+ GREATER_THAN: '>'
+ GT: '>'
+ HASH: '#'
+ LBKT: '['
+ LBRC: '{'
+ LEFT_BRACE: '{'
+ LEFT_BRACKET: '['
+ LEFT_PARENTHESIS: (
+ LESS_THAN: <
+ LPAR: (
+ LT: <
+ MINUS: '-'
+ NON_US_BACKSLASH: \
+ NON_US_BSLH: '|'
+ NON_US_HASH: '#'
+ NUHS: '#'
+ PERCENT: '%'
+ PERIOD: .
+ PIPE: '|'
+ PIPE2: '|'
+ PLUS: +
+ POUND: '#'
+ PRCNT: '%'
+ QMARK: '?'
+ QUESTION: '?'
+ RBKT: ']'
+ RBRC: '}'
+ RIGHT_BRACE: '}'
+ RIGHT_BRACKET: ']'
+ RIGHT_PARENTHESIS: )
+ RPAR: )
+ SEMI: ;
+ SEMICOLON: ;
+ SINGLE_QUOTE: ''''
+ SLASH: /
+ SQT: ''''
+ STAR: '*'
+ TILDE: '~'
+ TILDE2: '~'
+ UNDER: _
+ UNDERSCORE: _
+draw_config:
+ footer_text: 'Created with keymap-drawer'
+ dark_mode: auto
\ No newline at end of file
diff --git a/keymap-drawer/ergonaut_one.svg b/keymap-drawer/ergonaut_one.svg
new file mode 100644
index 0000000..3ec2282
--- /dev/null
+++ b/keymap-drawer/ergonaut_one.svg
@@ -0,0 +1,878 @@
+
diff --git a/keymap-drawer/ergonaut_one.yaml b/keymap-drawer/ergonaut_one.yaml
new file mode 100644
index 0000000..7fa4a40
--- /dev/null
+++ b/keymap-drawer/ergonaut_one.yaml
@@ -0,0 +1,173 @@
+layers:
+ default:
+ - {t: ']', h: Gui}
+ - Q
+ - W
+ - E
+ - R
+ - T
+ - Y
+ - U
+ - I
+ - O
+ - P
+ - '['
+ - {t: '`', h: Ctrl}
+ - A
+ - S
+ - D
+ - F
+ - G
+ - H
+ - J
+ - K
+ - L
+ - ;
+ - {t: '''', h: Ctrl}
+ - {t: '-', h: Alt}
+ - Z
+ - X
+ - C
+ - V
+ - B
+ - N
+ - M
+ - ','
+ - .
+ - /
+ - {t: \, h: Alt}
+ - {t: ↹, h: raise}
+ - {t: ␣, h: Shift}
+ - {t: ⏎, h: lower}
+ - {t: Esc, h: lower}
+ - {t: ⌫, h: Shift}
+ - {t: ⌦, h: raise}
+ lower:
+ - {t: F1, h: Gui}
+ - F2
+ - F3
+ - F4
+ - F5
+ - F6
+ - F7
+ - F8
+ - F9
+ - F10
+ - F11
+ - F12
+ - {t: +, h: Ctrl}
+ - '!'
+ - '@'
+ - '#'
+ - $
+ - '%'
+ - ^
+ - '&'
+ - '*'
+ - (
+ - )
+ - {t: '-', h: Ctrl}
+ - {t: '=', h: Alt}
+ - '1'
+ - '2'
+ - '3'
+ - '4'
+ - '5'
+ - '6'
+ - '7'
+ - '8'
+ - '9'
+ - '0'
+ - Alt
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ - {type: held}
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ raise:
+ - {t: KP NUM, h: Gui}
+ - KP SLASH
+ - KP 7
+ - KP 8
+ - KP 9
+ - KP MINUS
+ - Vol Up
+ - Home
+ - Print Scrn
+ - Page Up
+ - SLCK
+ - CLCK
+ - {t: '=', h: Ctrl}
+ - KP MULTIPLY
+ - KP 4
+ - KP 5
+ - KP 6
+ - KP PLUS
+ - MUTE
+ - ←
+ - ↑
+ - →
+ - Insert
+ - {t: APP, h: Ctrl}
+ - Alt
+ - KP 0
+ - KP 1
+ - KP 2
+ - KP 3
+ - KP DOT
+ - Vol Down
+ - End
+ - ↓
+ - Page Down
+ - Pause Break
+ - Alt
+ - {type: held}
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}
+ adjust:
+ - Boot
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - Boot
+ - BT CLR
+ - BT 1
+ - BT 2
+ - BT 3
+ - BT 4
+ - BT 5
+ - BT 5
+ - BT 4
+ - BT 3
+ - BT 2
+ - BT 1
+ - BT CLR
+ - Reset
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - ''
+ - Reset
+ - {type: held}
+ - ''
+ - {type: held}
+ - ''
+ - {t: ▽, type: trans}
+ - {t: ▽, type: trans}