[Keymap] Add ALGR and kle image, expand and correct documentation (#7426)
This commit is contained in:
		
							parent
							
								
									baf6715a7e
								
							
						
					
					
						commit
						ecc7355321
					
				
					 2 changed files with 27 additions and 15 deletions
				
			
		| 
						 | 
				
			
			@ -14,43 +14,43 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  [BASE] = LAYOUT_miryoku(
 | 
			
		||||
    KC_Q,              KC_W,              KC_F,              KC_P,              KC_B,              KC_J,              KC_L,              KC_U,              KC_Y,              KC_QUOT,
 | 
			
		||||
    LGUI_T(KC_A),      LALT_T(KC_R),      LCTL_T(KC_S),      LSFT_T(KC_T),      KC_G,              KC_M,              LSFT_T(KC_N),      LCTL_T(KC_E),      LALT_T(KC_I),      LGUI_T(KC_O),
 | 
			
		||||
    KC_Z,              KC_X,              KC_C,              KC_D,              KC_V,              KC_K,              KC_H,              KC_COMM,           KC_DOT,            KC_SLSH,
 | 
			
		||||
    KC_Z,              ALGR_T(KC_X),      KC_C,              KC_D,              KC_V,              KC_K,              KC_H,              KC_COMM,           ALGR_T(KC_DOT),    KC_SLSH,
 | 
			
		||||
    KC_NP,             KC_NP,             LT(MEDR, KC_ESC),  LT(NAVR, KC_SPC),  LT(MOUR, KC_TAB),  LT(NSSL, KC_ENT),  LT(NSL, KC_BSPC),  LT(FUNL, KC_DEL),  KC_NP,             KC_NP
 | 
			
		||||
  ),
 | 
			
		||||
  [NAVR] = LAYOUT_miryoku(
 | 
			
		||||
    KC_RST,  KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_AGIN, KC_UNDO, KC_CUT,  KC_COPY, KC_PSTE,
 | 
			
		||||
    KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, KC_NA,   KC_CAPS, KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT,
 | 
			
		||||
    KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_INS,  KC_HOME, KC_PGDN, KC_PGUP, KC_END,
 | 
			
		||||
    KC_NA,   KC_ALGR, KC_NA,   KC_NA,   KC_NA,   KC_INS,  KC_HOME, KC_PGDN, KC_PGUP, KC_END,
 | 
			
		||||
    KC_NP,   KC_NP,   KC_NA,   KC_NA,   KC_NA,   KC_ENT,  KC_BSPC, KC_DEL,  KC_NP,   KC_NP
 | 
			
		||||
  ),
 | 
			
		||||
  [MOUR] = LAYOUT_miryoku(
 | 
			
		||||
    KC_RST,  KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NU,   KC_NU,   KC_NU,   KC_NU,   KC_NU,
 | 
			
		||||
    KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, KC_NA,   KC_NU,   KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R,
 | 
			
		||||
    KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NU,   KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R,
 | 
			
		||||
    KC_NA,   KC_ALGR, KC_NA,   KC_NA,   KC_NA,   KC_NU,   KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R,
 | 
			
		||||
    KC_NP,   KC_NP,   KC_NA,   KC_NA,   KC_NA,   KC_BTN3, KC_BTN1, KC_BTN2, KC_NP,   KC_NP
 | 
			
		||||
  ),
 | 
			
		||||
  [MEDR] = LAYOUT_miryoku(
 | 
			
		||||
    KC_RST,  KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NU,   KC_NU,   KC_NU,   KC_NU,   KC_NU,
 | 
			
		||||
    KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, KC_NA,   KC_NU,   KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT,
 | 
			
		||||
    KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NU,   KC_NU,   KC_NU,   KC_NU,   KC_NU,
 | 
			
		||||
    KC_NA,   KC_ALGR, KC_NA,   KC_NA,   KC_NA,   KC_NU,   KC_NU,   KC_NU,   KC_NU,   KC_NU,
 | 
			
		||||
    KC_NP,   KC_NP,   KC_NA,   KC_NA,   KC_NA,   KC_MSTP, KC_MPLY, KC_MUTE, KC_NP,   KC_NP
 | 
			
		||||
  ),
 | 
			
		||||
  [FUNL] = LAYOUT_miryoku(
 | 
			
		||||
    KC_F12,  KC_F7,   KC_F8,   KC_F9,   KC_PSCR, KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_RST,
 | 
			
		||||
    KC_F11,  KC_F4,   KC_F5,   KC_F6,   KC_SLCK, KC_NA,   KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI,
 | 
			
		||||
    KC_F10,  KC_F1,   KC_F2,   KC_F3,   KC_PAUS, KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NA,
 | 
			
		||||
    KC_F10,  KC_F1,   KC_F2,   KC_F3,   KC_PAUS, KC_NA,   KC_NA,   KC_NA,   KC_ALGR, KC_NA,
 | 
			
		||||
    KC_NP,   KC_NP,   KC_APP,  KC_SPC,  KC_TAB,  KC_NA,   KC_NA,   KC_NA,   KC_NP,   KC_NP
 | 
			
		||||
  ),
 | 
			
		||||
  [NSL] = LAYOUT_miryoku(
 | 
			
		||||
    KC_LBRC, KC_7,    KC_8,    KC_9,    KC_RBRC, KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_RST,
 | 
			
		||||
    KC_SCLN, KC_4,    KC_5,    KC_6,    KC_EQL,  KC_NA,   KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI,
 | 
			
		||||
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_BSLS, KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NA,
 | 
			
		||||
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_BSLS, KC_NA,   KC_NA,   KC_NA,   KC_ALGR, KC_NA,
 | 
			
		||||
    KC_NP,   KC_NP,   KC_DOT,  KC_0,    KC_MINS, KC_NA,   KC_NA,   KC_NA,   KC_NP,   KC_NP
 | 
			
		||||
  ),
 | 
			
		||||
  [NSSL] = LAYOUT_miryoku(
 | 
			
		||||
    KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RCBR, KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_RST,
 | 
			
		||||
    KC_COLN, KC_DLR,  KC_PERC, KC_CIRC, KC_PLUS, KC_NA,   KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI,
 | 
			
		||||
    KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_PIPE, KC_NA,   KC_NA,   KC_NA,   KC_NA,   KC_NA,
 | 
			
		||||
    KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_PIPE, KC_NA,   KC_NA,   KC_NA,   KC_ALGR, KC_NA,
 | 
			
		||||
    KC_NP,   KC_NP,   KC_GT,   KC_RPRN, KC_UNDS, KC_NA,   KC_NA,   KC_NA,   KC_NP,   KC_NP
 | 
			
		||||
  )
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,18 +1,23 @@
 | 
			
		|||
#+Title: miryoku.org
 | 
			
		||||
 | 
			
		||||
[[https://raw.githubusercontent.com/manna-harbour/miryoku/master/kle-miryoku-keycodes.png]]
 | 
			
		||||
 | 
			
		||||
The miryoku layout is an ergonomic, minimal, orthogonal layout for ergo or ortho
 | 
			
		||||
keyboards, implemented as part of the QMK firmware.  The layout is maintained in
 | 
			
		||||
emacs org-mode tables and converted to QMK keymap data structures using embedded
 | 
			
		||||
python scripts.  The layout is mapped onto keyboards with different physical
 | 
			
		||||
layouts as a subset without code duplication using the QMK userland feature and
 | 
			
		||||
layouts as a subset without code duplication using the QMK userspace feature and
 | 
			
		||||
C macros.  Versions of the layout can also be seen outside of the QMK source at
 | 
			
		||||
[[https://github.com/manna-harbour/miryoku/]].
 | 
			
		||||
 | 
			
		||||
After making changes here call org-babel-tangle (C-c C-v t).
 | 
			
		||||
 | 
			
		||||
* Contents
 | 
			
		||||
 | 
			
		||||
- [[#layout][Layout]]
 | 
			
		||||
- [[#code-generation][Code Generation]]
 | 
			
		||||
- [[#subset-mapping][Subset Mapping]]
 | 
			
		||||
- [[#related-documentation][Related Documentation]]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Layout
 | 
			
		||||
| 
						 | 
				
			
			@ -45,6 +50,7 @@ C macros.  Versions of the layout can also be seen outside of the QMK source at
 | 
			
		|||
    - Dual-function layer change on thumbs.
 | 
			
		||||
    - Layers are designed orthogonally with a single purpose per hand and are
 | 
			
		||||
      accessed by holding a thumb key on the opposite hand.
 | 
			
		||||
    - All layers on the same hand are based on the same basic key arrangement.
 | 
			
		||||
    - Holding layer change and modifiers on one hand combined with a single key
 | 
			
		||||
      press on the other hand can produce any combination of modifiers and
 | 
			
		||||
      single keys without any finger contortions.
 | 
			
		||||
| 
						 | 
				
			
			@ -53,9 +59,10 @@ C macros.  Versions of the layout can also be seen outside of the QMK source at
 | 
			
		|||
      or simultaneously without race conditions.
 | 
			
		||||
    - As mods are only enabled on the opposite hand, auto-repeat is available on
 | 
			
		||||
      the home row on layers for use with cursor and mouse keys.
 | 
			
		||||
    - Tap-hold auto-repeat is disabled to enable faster tap-hold switching on
 | 
			
		||||
      thumbs but thumb tap keys are mirrored onto some layers for use with
 | 
			
		||||
      auto-repeat.
 | 
			
		||||
    - Tap-hold auto-repeat is disabled to permit faster tap-hold switching on
 | 
			
		||||
      thumbs, but thumb tap keys are mirrored onto some layers for use with
 | 
			
		||||
      auto-repeat.  On other layers thumb keys are redefined with important
 | 
			
		||||
      functions for that layer.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
** Layers
 | 
			
		||||
| 
						 | 
				
			
			@ -92,7 +99,7 @@ included for prose, dot and slash for file and directory names.
 | 
			
		|||
#+NAME: hold
 | 
			
		||||
| RST  |      |      |      |      |      |      |      |      | RST  |
 | 
			
		||||
| LGUI | LALT | LCTL | LSFT |      |      | LSFT | LCTL | LALT | LGUI |
 | 
			
		||||
|      |      |      |      |      |      |      |      |      |      |
 | 
			
		||||
|      | ALGR |      |      |      |      |      |      | ALGR |      |
 | 
			
		||||
| NP   | NP   | MEDR | NAVR | MOUR | NSSL | NSL  | FUNL | NP   | NP   |
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -365,7 +372,7 @@ Modifiers usable in hold table.  Need to have the same name for KC_ and _T versi
 | 
			
		|||
- LCTL
 | 
			
		||||
- LALT
 | 
			
		||||
- LGUI
 | 
			
		||||
- LAGR
 | 
			
		||||
- ALGR
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
** Other
 | 
			
		||||
| 
						 | 
				
			
			@ -512,8 +519,9 @@ cd ../.. && make ergodox_ez:manna-harbour_miryoku:teensy
 | 
			
		|||
 | 
			
		||||
For the ortho_4x12 layout, the right half as is as follows: The rightmost column
 | 
			
		||||
bottom 3 rows is the pinkie column.  The middle 4 columns top 3 rows are for the
 | 
			
		||||
remaining fingers.  The bottom row left 3 columns are the thumb keys.  The
 | 
			
		||||
remaining keys are unused.
 | 
			
		||||
remaining fingers.  The pinkie column is one row lower than the other columns to
 | 
			
		||||
provide some column stagger on ortho keyboards.  The bottom row left 3 columns
 | 
			
		||||
are the thumb keys.  The remaining keys are unused.
 | 
			
		||||
 | 
			
		||||
[[../../layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c][layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c]]
 | 
			
		||||
#+BEGIN_SRC C :noweb yes :tangle ../../layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c
 | 
			
		||||
| 
						 | 
				
			
			@ -588,6 +596,10 @@ cd ../.. && make crkbd:manna-harbour_miryoku:avrdude
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
* Related Documentation
 | 
			
		||||
:PROPERTIES:
 | 
			
		||||
:CUSTOM_ID: related-documentation
 | 
			
		||||
:END:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
** QMK
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue