mirror of
https://github.com/ClaytonWWilson/miryoku_zmk.git
synced 2025-12-13 17:58:47 +00:00
161 lines
4.7 KiB
Org Mode
161 lines
4.7 KiB
Org Mode
#+Title: Miryoku ZMK [[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/logos/miryoku-roa-32.png]]
|
|
|
|
[[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/cover/miryoku-kle-cover.png]]
|
|
|
|
[[https://github.com/manna-harbour/miryoku/][Miryoku]] is an ergonomic, minimal,
|
|
orthogonal, and universal keyboard layout. This is the miryoku implementation
|
|
for [[https://zmkfirmware.dev/][ZMK]].
|
|
|
|
* Contents :TOC_1:
|
|
- [[#miryoku-keymap][Miryoku Keymap]]
|
|
- [[#configuration-options][Configuration Options]]
|
|
- [[#example-keyboard-keymap][Example Keyboard Keymap]]
|
|
- [[#mapping][Mapping]]
|
|
- [[#keyboard-keymaps][Keyboard Keymaps]]
|
|
- [[#prebuilt-firmware][Prebuilt Firmware]]
|
|
- [[#contact][Contact]]
|
|
|
|
* Miryoku Keymap
|
|
|
|
The miryoku keymap is a ZMK DT keymap file using C preprocessor macros for
|
|
[[#configuration-options][configuration options]] and to abstract the physical
|
|
layout. The file is [[./miryoku/miryoku.dtsi][miryoku/miryoku.dtsi]]. The file
|
|
is included into the [[#keyboard-keymaps][keyboard's keymap]] with
|
|
|
|
#+BEGIN_SRC C :tangle no
|
|
#include "../miryoku/miryoku.dtsi"
|
|
#+END_SRC
|
|
|
|
|
|
* Configuration Options
|
|
|
|
[[https://github.com/manna-harbour/miryoku/blob/master/src/babel/readme.org#keymap-configuration-options][Keymap
|
|
configuration options]] and [[#mapping][mapping]] configuration options are
|
|
given in the documentation in the form ~option=value~. To use configuration
|
|
options in Miryoku ZMK, convert to the form ~#define option_value~ and add to
|
|
the [[#keyboard-keymaps][keyboard keymap]] file before the [[#mapping][mapping]]
|
|
or [[#miryoku-keymap][miryoku keymap]] includes. See the
|
|
[[#example-keyboard-keymap][example keyboard keymap]].
|
|
|
|
|
|
* Example Keyboard Keymap
|
|
|
|
Below is an example [[#keyboard-keymaps][keyboard keymap file]] for the ~kyria~
|
|
shield using the ~50-kyria~ [[#mapping][mapping]] with
|
|
~MIRYOKU_MAPPING=EXTENDED_THUMBS~ mapping
|
|
[[#configuration-options][configuration option]] and the following layout
|
|
[[#configuration-options][configuration options]]:
|
|
|
|
- ~MIRYOKU_ALPHAS=QWERTY~
|
|
- ~MIRYOKU_NAV=VI~
|
|
- ~MIRYOKU_CLIPBOARD=WIN~
|
|
|
|
#+BEGIN_SRC C :tangle nos
|
|
// https://github.com/manna-harbour/miryoku-zmk/
|
|
|
|
#define MIRYOKU_MAPPING_EXTENDED_THUMBS
|
|
#define MIRYOKU_ALPHAS_QWERTY
|
|
#define MIRYOKU_NAV_VI
|
|
#define MIRYOKU_CLIPBOARD_WIN
|
|
|
|
#include "../miryoku/mapping/50-kyria.h"
|
|
#include "../miryoku/miryoku.dtsi"
|
|
#+END_SRC
|
|
|
|
|
|
* Mapping
|
|
|
|
The keymap is mapped onto keyboards with different physical layouts. The keymap
|
|
is specified in terms of the ~MIRYOKU_MAPPING~ macro. The macro is defined in a
|
|
C header file for each physical layout. Unused keys are mapped to ~&none~. The
|
|
files are in [[./miryoku/mapping/][miryoku/mapping/]]. The
|
|
mapping file is included into the keyboard's keymap file before the miryoku
|
|
keymap with e.g.
|
|
|
|
#+BEGIN_SRC C :tangle no
|
|
#include "../miryoku/mapping/36-minidox.h"
|
|
#+END_SRC
|
|
|
|
On each hand, only the main alpha block of 3 rows by 5 columns and the 3 most
|
|
appropriate thumb keys are used. Notes or diagrams are included where the
|
|
selection of keys is not obvious or where options are provided.
|
|
|
|
Configuration options
|
|
|
|
** Layouts
|
|
|
|
*** 34-ferris
|
|
|
|
**** Combo TPS
|
|
~MIRYOKU_COMBO_TPS=ENABLE~
|
|
|
|
Combos of primary and secondary thumb keys emulate the missing tertiary thumb
|
|
key. This [[#configuration-options][configuration option]] is enabled
|
|
automatically for this mapping and can be enabled on other mappings for
|
|
compatibility
|
|
|
|
|
|
*** 36-minidox
|
|
|
|
*** 42-corne
|
|
|
|
*** 44-jian
|
|
|
|
*** 48-planck
|
|
|
|
*** 50-kyria
|
|
|
|
**** Default
|
|
|
|
[[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/mapping/miryoku-kle-mapping-kyria.png]]
|
|
|
|
**** Extend Thumbs
|
|
~MIRYOKU_MAPPING=EXTENDED_THUMBS~
|
|
|
|
[[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/mapping/miryoku-kle-mapping-kyria-extended_thumbs.png]]
|
|
|
|
|
|
*** 56-iris
|
|
|
|
|
|
*** 58-lily58
|
|
|
|
|
|
*** 60-sofle
|
|
|
|
|
|
*** 62-atreus62
|
|
|
|
|
|
*** 64-helix
|
|
|
|
|
|
* Keyboard Keymaps
|
|
|
|
Keymap files for many keyboards included in ZMK are provided in
|
|
[[./config/][config/]].
|
|
|
|
|
|
* Prebuilt Firmware
|
|
|
|
Prebuilt firmware for supported keyboards can be downloaded from the repo when
|
|
logged in. From the
|
|
[[https://github.com/manna-harbour/miryoku-zmk/actions][Actions]] tab select the
|
|
latest successful workflow run, then select the keyboard in the Artifacts
|
|
section.
|
|
|
|
|
|
* Contact
|
|
|
|
For issues with the code, including requests for any of the following, please
|
|
[[https://github.com/manna-harbour/miryoku-zmk/issues/new][create an issue]].
|
|
Pull requests are also welcome.
|
|
|
|
- Additional mapping and keyboard keymap files
|
|
- Additional mapping options (see miryoku QMK for examples)
|
|
- Populating unused keys in ~MIRYOKU_MAPPING_TAP~ (currently skipped for some mapping files)
|
|
|
|
[[https://github.com/manna-harbour][https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/logos/manna-harbour-boa-32.png]]
|