BÉPO over CSA: GR2A characters in AltGr layer
- define aliases for all GR2A characters (unshifted) - use the available characters in the BÉPO over CSA AltGr layer
This commit is contained in:
		
							parent
							
								
									fbf1333d87
								
							
						
					
					
						commit
						911222892e
					
				
					 2 changed files with 88 additions and 15 deletions
				
			
		| 
						 | 
				
			
			@ -180,15 +180,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
 * "////" indicates that the key is disabled (unsupported bépo character)
 | 
			
		||||
 *
 | 
			
		||||
 * ,--------------------------------------------------.           ,--------------------------------------------------.
 | 
			
		||||
 * |    –   |   —  |   <  |   >  |   [  |   ]  |      |           |      |   ^  | //// | //// | //// | //// | ////// |
 | 
			
		||||
 * |    –   |   —  |   <  |   >  |   [  |   ]  |      |           |      |   ^  |   ±  | //// | //// | //// | ////// |
 | 
			
		||||
 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
 | 
			
		||||
 * |        |   |  |dead '|   &  |   œ  |dead `|      |           |      | //// | //// | //// | //// | //// | ////// |
 | 
			
		||||
 * |        |   |  |dead '|   &  |   œ  |dead `|      |           |      | //// | //// |   ð  | //// |   ij  | ////// |
 | 
			
		||||
 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
 | 
			
		||||
 * | ////// |   æ  |   ù  |dead "|   €  | //// |------|           |------| //// | //// | //// | //// | //// | ////// |
 | 
			
		||||
 * | ////// |   æ  |   ù  |dead "|   €  |   ̛’  |------|           |------| //// |   þ  |   ß  | //// |dead ~| ////// |
 | 
			
		||||
 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
 | 
			
		||||
 * |        |   \  |   {  |   }  |   …  |   ~  |      |           |      | //// | //// | //// | //// | //// |        |
 | 
			
		||||
 * |        |   \  |   {  |   }  |   …  |   ~  |      |           |      | //// | //// |   μ  | //// | //// |        |
 | 
			
		||||
 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
 | 
			
		||||
 *   |      |      |      |      |      |                                       |      | //// |      | //// |       |
 | 
			
		||||
 *   |      |      |      |      |      |                                       |      | //// |      |dead ¸|       |
 | 
			
		||||
 *   `----------------------------------'                                       `-----------------------------------'
 | 
			
		||||
 *                                        ,-------------.       ,-------------.
 | 
			
		||||
 *                                        |      |      |       |      |      |
 | 
			
		||||
| 
						 | 
				
			
			@ -202,7 +202,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
        // left hand
 | 
			
		||||
        MUC(NDSH),MUC(MDSH),CM_LESS,  CM_GRTR, CM_LBRC,  CM_RBRC,  KC_TRNS,
 | 
			
		||||
        KC_TRNS,  CM_PIPE,  CM_DACT,  KC_AMPR, CM_OE,    CM_DGRV,  KC_TRNS,
 | 
			
		||||
        KC_NO,    CM_AE,    CM_UGRV,  CM_DTRM, CM_EURO,  KC_NO,
 | 
			
		||||
        KC_NO,    CM_AE,    CM_UGRV,  CM_DTRM, CM_EURO,  CM_RQOT,
 | 
			
		||||
        KC_TRNS,  CM_BSLS,  CM_LCBR,  CM_RCBR, MUC(ELPS),CM_TILD,  KC_TRNS,
 | 
			
		||||
        KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS, KC_TRNS,
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -211,11 +211,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
                                            KC_UNDS,  KC_TRNS,  KC_TRNS,
 | 
			
		||||
 | 
			
		||||
        // right hand
 | 
			
		||||
        KC_TRNS,  M(M_CRC), KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
        KC_TRNS,  KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
                  KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_TRNS,
 | 
			
		||||
        KC_TRNS,  KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
                            KC_TRNS,  KC_NO,    KC_TRNS,  KC_NO,    KC_TRNS,
 | 
			
		||||
        KC_TRNS,  M(M_CRC), CM_PSMS,  KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
        KC_TRNS,  KC_NO,    KC_NO,    CM_ETH,   KC_NO,    CM_IJ,    KC_NO,
 | 
			
		||||
                  KC_NO,    CM_THRN,  CM_SRPS,  KC_NO,    CM_DTLD,  KC_TRNS,
 | 
			
		||||
        KC_TRNS,  KC_NO,    KC_NO,    CM_MU,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
                            KC_TRNS,  KC_NO,    KC_TRNS,  CM_DCED,  KC_TRNS,
 | 
			
		||||
 | 
			
		||||
        KC_TRNS,  KC_TRNS,
 | 
			
		||||
        KC_TRNS,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -103,14 +103,87 @@
 | 
			
		|||
#define CM_NBSP                 CM_NON_BREAKING_SPACE
 | 
			
		||||
 | 
			
		||||
// GR2A-ed characters (non-exhaustive list)
 | 
			
		||||
// second row
 | 
			
		||||
#define CM_OE_LIGATURE  GR2A(KC_E)      // œ
 | 
			
		||||
#define CM_OE           CM_OE_LIGATURE
 | 
			
		||||
// First row
 | 
			
		||||
#define CM_SUPERSCRIPT_ONE      GR2A(KC_1)  // ¹
 | 
			
		||||
#define CM_SUP1                 CM_SUPERSCRIPT_ONE
 | 
			
		||||
#define CM_SUPERSCRIPT_TWO      GR2A(KC_2)  // ²
 | 
			
		||||
#define CM_SUP2                 CM_SUPERSCRIPT_TWO
 | 
			
		||||
#define CM_SUPERSCRIPT_THREE    GR2A(KC_3)  // ³
 | 
			
		||||
#define CM_SUP3                 CM_SUPERSCRIPT_THREE
 | 
			
		||||
#define CM_ONE_QUARTER          GR2A(KC_4)  // ¼
 | 
			
		||||
#define CM_1QRT                 CM_ONE_QUARTER
 | 
			
		||||
#define CM_ONE_HALF             GR2A(KC_5)  // ½
 | 
			
		||||
#define CM_1HLF                 CM_ONE_HALF
 | 
			
		||||
#define CM_THREE_QUARTERS       GR2A(KC_6)  // ¾
 | 
			
		||||
#define CM_3QRT                 CM_THREE_QUARTERS
 | 
			
		||||
// nothing on 7-0 and -
 | 
			
		||||
#define CM_DEAD_CEDILLA         GR2A(KC_EQUAL)  // dead ¸
 | 
			
		||||
#define CM_DCED                 CM_DEAD_CEDILLA
 | 
			
		||||
 | 
			
		||||
// third row
 | 
			
		||||
// Second row
 | 
			
		||||
#define CM_OMEGA            GR2A(KC_Q)  // ω
 | 
			
		||||
#define CM_OMEG             CM_OMEGA
 | 
			
		||||
#define CM_L_STROKE         GR2A(KC_W)  // ł
 | 
			
		||||
#define CM_LSTK             CM_L_STROKE
 | 
			
		||||
#define CM_OE_LIGATURE      GR2A(KC_E)  // œ
 | 
			
		||||
#define CM_OE               CM_OE_LIGATURE
 | 
			
		||||
#define CM_PARAGRAPH        GR2A(KC_R)  // ¶
 | 
			
		||||
#define CM_PARG             CM_PARAGRAPH
 | 
			
		||||
#define CM_T_STROKE         GR2A(KC_T)  // ŧ
 | 
			
		||||
#define CM_LEFT_ARROW       GR2A(KC_Y)  // ←
 | 
			
		||||
#define CM_LARW             CM_LEFT_ARROW
 | 
			
		||||
#define CM_DOWN_ARROW       GR2A(KC_U)  // ↓
 | 
			
		||||
#define CM_DARW             CM_DOWN_ARROW
 | 
			
		||||
#define CM_RIGHT_ARROW      GR2A(KC_I)  // →
 | 
			
		||||
#define CM_RARW             CM_RIGHT_ARROW
 | 
			
		||||
#define CM_O_STROKE         GR2A(KC_O)  // ø
 | 
			
		||||
#define CM_OSTK             CM_O_STROKE
 | 
			
		||||
#define CM_THORN            GR2A(KC_P)  // þ
 | 
			
		||||
#define CM_THRN             CM_THORN
 | 
			
		||||
// nothing on ^
 | 
			
		||||
#define CM_DEAD_TILDE       GR2A(CM_C_CEDILLA)  // dead ~
 | 
			
		||||
#define CM_DTLD             CM_DEAD_TILDE
 | 
			
		||||
 | 
			
		||||
// Third row
 | 
			
		||||
#define CM_AE_LIGATURE  GR2A(KC_A)      // æ
 | 
			
		||||
#define CM_AE           CM_AE_LIGATURE
 | 
			
		||||
#define CM_SHARP_S      GR2A(KC_S)      // ß
 | 
			
		||||
#define CM_SRPS         CM_SHARP_S
 | 
			
		||||
#define CM_ETH          GR2A(KC_D)      // ð
 | 
			
		||||
// nothing on F
 | 
			
		||||
#define CM_ENG          GR2A(KC_G)      // ŋ
 | 
			
		||||
#define CM_H_SRTOKE     GR2A(KC_H)      // ħ
 | 
			
		||||
#define CM_HSTK         CM_H_SRTOKE
 | 
			
		||||
#define CM_IJ_LIGATURE  GR2A(KC_J)      // ij
 | 
			
		||||
#define CM_IJ           CM_IJ_LIGATURE
 | 
			
		||||
#define CM_KRA          GR2A(KC_K)      // ĸ
 | 
			
		||||
#define CM_L_FLOWN_DOT  GR2A(KC_L)      // ŀ
 | 
			
		||||
#define CM_LFLD         CM_L_FLOWN_DOT
 | 
			
		||||
#define CM_DEAD_ACUTE   GR2A(KC_SCLN)   // dead acute accent
 | 
			
		||||
#define CM_DACT         CM_DEAD_ACUTE
 | 
			
		||||
// nothing on È & À
 | 
			
		||||
 | 
			
		||||
// Fourth row
 | 
			
		||||
#define CM_CENT                 GR2A(KC_C)  // ¢
 | 
			
		||||
#define CM_LEFT_DOUBLE_QUOTE    GR2A(KC_V)  // “
 | 
			
		||||
#define CM_LDQT                 CM_LEFT_DOUBLE_QUOTE
 | 
			
		||||
#define CM_RIGHT_DOUBLE_QUOTE   GR2A(KC_B)  // ”
 | 
			
		||||
#define CM_RDQT                 CM_RIGHT_DOUBLE_QUOTE
 | 
			
		||||
#define CM_N_APOSTROPHE         GR2A(KC_N)  // ʼn (deprecated unicode codepoint)
 | 
			
		||||
#define CM_NAPO                 CM_N_APOSTROPHE
 | 
			
		||||
#define CM_MU   GR2A(KC_M)      // μ
 | 
			
		||||
// ─ TODO box drawing character?
 | 
			
		||||
#define CM_HYPHENATION_POINT    GR2A(CM_DOT)    // ‧  TODO not an interpunct ?
 | 
			
		||||
 | 
			
		||||
// GR2A-shifted characters (non-exhaustive list)
 | 
			
		||||
// First row
 | 
			
		||||
#define CM_PLUS_MINUS   LSFT(GR2A(KC_9))    // ±
 | 
			
		||||
#define CM_PSMS         CM_PLUS_MINUS
 | 
			
		||||
 | 
			
		||||
// Fourth row
 | 
			
		||||
#define CM_LEFT_QUOTE           LSFT(GR2A(KC_V))    // ‘
 | 
			
		||||
#define CM_LQOT                 CM_LEFT_QUOTE
 | 
			
		||||
#define CM_RIGHT_QUOTE          LSFT(GR2A(KC_B))    // ’
 | 
			
		||||
#define CM_RQOT                 CM_RIGHT_QUOTE
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue