Russian typewriter keymap file for popular legacy layout (#21174)
Co-authored-by: Andrei Tutolmin <andrei@tutolmin.com>
This commit is contained in:
		
							parent
							
								
									8e614250b4
								
							
						
					
					
						commit
						4410e6b3bf
					
				| @ -0,0 +1,291 @@ | |||||||
|  | { | ||||||
|  |     "aliases": { | ||||||
|  | /* | ||||||
|  |  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ | ||||||
|  |  * │ | │ № │ - │ / │ " │ : │ , │ . │ _ │ ? │ % │ ! │ ; │       │ | ||||||
|  |  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ | ||||||
|  |  * │     │ Й │ Ц │ У │ К │ Е │ Н │ Г │ Ш │ Щ │ З │ Х │ Ъ │  )  │ | ||||||
|  |  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ | ||||||
|  |  * │      │ Ф │ Ы │ В │ А │ П │ Р │ О │ Л │ Д │ Ж │ Э │        │ | ||||||
|  |  * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ | ||||||
|  |  * │        │ Я │ Ч │ С │ М │ И │ Т │ Ь │ Б │ Ю │ Ё │          │ | ||||||
|  |  * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ | ||||||
|  |  * │    │    │    │                        │    │    │    │    │ | ||||||
|  |  * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ | ||||||
|  |  */ | ||||||
|  |         "KC_GRV": { | ||||||
|  |             "key": "RU_PIPE", | ||||||
|  |             "label": "|", | ||||||
|  |         } | ||||||
|  |         "KC_1": { | ||||||
|  |             "key": "RU_NUM", | ||||||
|  |             "label": "№", | ||||||
|  |         } | ||||||
|  |         "KC_2": { | ||||||
|  |             "key": "RU_MINS", | ||||||
|  |             "label": "-", | ||||||
|  |         } | ||||||
|  |         "KC_3": { | ||||||
|  |             "key": "RU_SLSH", | ||||||
|  |             "label": "/", | ||||||
|  |         } | ||||||
|  |         "KC_4": { | ||||||
|  |             "key": "RU_DQUO", | ||||||
|  |             "label": "\"", | ||||||
|  |         } | ||||||
|  |         "KC_5": { | ||||||
|  |             "key": "RU_COLN", | ||||||
|  |             "label": ":", | ||||||
|  |         } | ||||||
|  |         "KC_6": { | ||||||
|  |             "key": "RU_COMM", | ||||||
|  |             "label": ",", | ||||||
|  |         } | ||||||
|  |         "KC_7": { | ||||||
|  |             "key": "RU_DOT", | ||||||
|  |             "label": ".", | ||||||
|  |         } | ||||||
|  |         "KC_8": { | ||||||
|  |             "key": "RU_UNDS", | ||||||
|  |             "label": "_", | ||||||
|  |         } | ||||||
|  |         "KC_9": { | ||||||
|  |             "key": "RU_QUES", | ||||||
|  |             "label": "?", | ||||||
|  |         } | ||||||
|  |         "KC_0": { | ||||||
|  |             "key": "RU_PERC", | ||||||
|  |             "label": "%", | ||||||
|  |         } | ||||||
|  |         "KC_MINS": { | ||||||
|  |             "key": "RU_EXLM", | ||||||
|  |             "label": "!", | ||||||
|  |         } | ||||||
|  |         "KC_EQL": { | ||||||
|  |             "key": "RU_SCLN", | ||||||
|  |             "label": ";", | ||||||
|  |         } | ||||||
|  |         "KC_Q": { | ||||||
|  |             "key": "RU_SHTI", | ||||||
|  |             "label": "Й", | ||||||
|  |         } | ||||||
|  |         "KC_W": { | ||||||
|  |             "key": "RU_TSE", | ||||||
|  |             "label": "Ц", | ||||||
|  |         } | ||||||
|  |         "KC_E": { | ||||||
|  |             "key": "RU_U", | ||||||
|  |             "label": "У", | ||||||
|  |         } | ||||||
|  |         "KC_R": { | ||||||
|  |             "key": "RU_KA", | ||||||
|  |             "label": "К", | ||||||
|  |         } | ||||||
|  |         "KC_T": { | ||||||
|  |             "key": "RU_IE", | ||||||
|  |             "label": "Е", | ||||||
|  |         } | ||||||
|  |         "KC_Y": { | ||||||
|  |             "key": "RU_EN", | ||||||
|  |             "label": "Н", | ||||||
|  |         } | ||||||
|  |         "KC_U": { | ||||||
|  |             "key": "RU_GHE", | ||||||
|  |             "label": "Г", | ||||||
|  |         } | ||||||
|  |         "KC_I": { | ||||||
|  |             "key": "RU_SHA", | ||||||
|  |             "label": "Ш", | ||||||
|  |         } | ||||||
|  |         "KC_O": { | ||||||
|  |             "key": "RU_SHCH", | ||||||
|  |             "label": "Щ", | ||||||
|  |         } | ||||||
|  |         "KC_P": { | ||||||
|  |             "key": "RU_ZE", | ||||||
|  |             "label": "З", | ||||||
|  |         } | ||||||
|  |         "KC_LBRC": { | ||||||
|  |             "key": "RU_HA", | ||||||
|  |             "label": "Х", | ||||||
|  |         } | ||||||
|  |         "KC_RBRC": { | ||||||
|  |             "key": "RU_HARD", | ||||||
|  |             "label": "Ъ", | ||||||
|  |         } | ||||||
|  |         "KC_BSLS": { | ||||||
|  |             "key": "RU_RPRN", | ||||||
|  |             "label": ")", | ||||||
|  |         } | ||||||
|  |         "KC_A": { | ||||||
|  |             "key": "RU_EF", | ||||||
|  |             "label": "Ф", | ||||||
|  |         } | ||||||
|  |         "KC_S": { | ||||||
|  |             "key": "RU_YERU", | ||||||
|  |             "label": "Ы", | ||||||
|  |         } | ||||||
|  |         "KC_D": { | ||||||
|  |             "key": "RU_VE", | ||||||
|  |             "label": "В", | ||||||
|  |         } | ||||||
|  |         "KC_F": { | ||||||
|  |             "key": "RU_A", | ||||||
|  |             "label": "А", | ||||||
|  |         } | ||||||
|  |         "KC_G": { | ||||||
|  |             "key": "RU_PE", | ||||||
|  |             "label": "П", | ||||||
|  |         } | ||||||
|  |         "KC_H": { | ||||||
|  |             "key": "RU_ER", | ||||||
|  |             "label": "Р", | ||||||
|  |         } | ||||||
|  |         "KC_J": { | ||||||
|  |             "key": "RU_O", | ||||||
|  |             "label": "О", | ||||||
|  |         } | ||||||
|  |         "KC_K": { | ||||||
|  |             "key": "RU_EL", | ||||||
|  |             "label": "Л", | ||||||
|  |         } | ||||||
|  |         "KC_L": { | ||||||
|  |             "key": "RU_DE", | ||||||
|  |             "label": "Д", | ||||||
|  |         } | ||||||
|  |         "KC_SCLN": { | ||||||
|  |             "key": "RU_ZHE", | ||||||
|  |             "label": "Ж", | ||||||
|  |         } | ||||||
|  |         "KC_QUOT": { | ||||||
|  |             "key": "RU_E", | ||||||
|  |             "label": "Э", | ||||||
|  |         } | ||||||
|  |         "KC_Z": { | ||||||
|  |             "key": "RU_YA", | ||||||
|  |             "label": "Я", | ||||||
|  |         } | ||||||
|  |         "KC_X": { | ||||||
|  |             "key": "RU_CHE", | ||||||
|  |             "label": "Ч", | ||||||
|  |         } | ||||||
|  |         "KC_C": { | ||||||
|  |             "key": "RU_ES", | ||||||
|  |             "label": "С", | ||||||
|  |         } | ||||||
|  |         "KC_V": { | ||||||
|  |             "key": "RU_EM", | ||||||
|  |             "label": "М", | ||||||
|  |         } | ||||||
|  |         "KC_B": { | ||||||
|  |             "key": "RU_I", | ||||||
|  |             "label": "И", | ||||||
|  |         } | ||||||
|  |         "KC_N": { | ||||||
|  |             "key": "RU_TE", | ||||||
|  |             "label": "Т", | ||||||
|  |         } | ||||||
|  |         "KC_M": { | ||||||
|  |             "key": "RU_SOFT", | ||||||
|  |             "label": "Ь", | ||||||
|  |         } | ||||||
|  |         "KC_COMM": { | ||||||
|  |             "key": "RU_BE", | ||||||
|  |             "label": "Б", | ||||||
|  |         } | ||||||
|  |         "KC_DOT": { | ||||||
|  |             "key": "RU_YU", | ||||||
|  |             "label": "Ю", | ||||||
|  |         } | ||||||
|  |         "KC_SLSH": { | ||||||
|  |             "key": "RU_YO", | ||||||
|  |             "label": "Ё", | ||||||
|  |         } | ||||||
|  | /* Shifted symbols | ||||||
|  |  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ | ||||||
|  |  * │ + │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ = │ \ │       │ | ||||||
|  |  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ | ||||||
|  |  * │     │   │   │   │   │   │   │   │   │   │   │   │   │  (  │ | ||||||
|  |  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ | ||||||
|  |  * │      │   │   │   │   │   │   │   │   │   │   │   │        │ | ||||||
|  |  * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ | ||||||
|  |  * │        │   │   │   │   │   │   │   │   │   │   │          │ | ||||||
|  |  * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ | ||||||
|  |  * │    │    │    │                        │    │    │    │    │ | ||||||
|  |  * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ | ||||||
|  |  */ | ||||||
|  |         "S(RU_PIPE)": { | ||||||
|  |             "key": "RU_PLUS", | ||||||
|  |             "label": "+", | ||||||
|  |         } | ||||||
|  |         "S(RU_NUM)": { | ||||||
|  |             "key": "RU_1", | ||||||
|  |             "label": "1", | ||||||
|  |         } | ||||||
|  |         "S(RU_MINS)": { | ||||||
|  |             "key": "RU_2", | ||||||
|  |             "label": "2", | ||||||
|  |         } | ||||||
|  |         "S(RU_SLSH)": { | ||||||
|  |             "key": "RU_3", | ||||||
|  |             "label": "3", | ||||||
|  |         } | ||||||
|  |         "S(RU_DQUO)": { | ||||||
|  |             "key": "RU_4", | ||||||
|  |             "label": "4", | ||||||
|  |         } | ||||||
|  |         "S(RU_COLN)": { | ||||||
|  |             "key": "RU_5", | ||||||
|  |             "label": "5", | ||||||
|  |         } | ||||||
|  |         "S(RU_COMM)": { | ||||||
|  |             "key": "RU_6", | ||||||
|  |             "label": "6", | ||||||
|  |         } | ||||||
|  |         "S(RU_DOT)": { | ||||||
|  |             "key": "RU_7", | ||||||
|  |             "label": "7", | ||||||
|  |         } | ||||||
|  |         "S(RU_UNDS)": { | ||||||
|  |             "key": "RU_8", | ||||||
|  |             "label": "8", | ||||||
|  |         } | ||||||
|  |         "S(RU_QUES)": { | ||||||
|  |             "key": "RU_9", | ||||||
|  |             "label": "9", | ||||||
|  |         } | ||||||
|  |         "S(RU_PERC)": { | ||||||
|  |             "key": "RU_0", | ||||||
|  |             "label": "0", | ||||||
|  |         } | ||||||
|  |         "S(RU_EXLM)": { | ||||||
|  |             "key": "RU_EQL", | ||||||
|  |             "label": "=", | ||||||
|  |         } | ||||||
|  |         "S(RU_SCLN)": { | ||||||
|  |             "key": "RU_BSLS", | ||||||
|  |             "label": "\\", | ||||||
|  |         } | ||||||
|  |         "S(RU_RPRN)": { | ||||||
|  |             "key": "RU_LPRN", | ||||||
|  |             "label": "(", | ||||||
|  |         } | ||||||
|  | /* AltGr symbols | ||||||
|  |  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ | ||||||
|  |  * │   │   │   │   │   │   │   │   │ ₽ │   │   │   │   │       │ | ||||||
|  |  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ | ||||||
|  |  * │     │   │   │   │   │   │   │   │   │   │   │   │   │     │ | ||||||
|  |  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ | ||||||
|  |  * │      │   │   │   │   │   │   │   │   │   │   │   │        │ | ||||||
|  |  * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ | ||||||
|  |  * │        │   │   │   │   │   │   │   │   │   │   │          │ | ||||||
|  |  * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ | ||||||
|  |  * │    │    │    │                        │    │    │    │    │ | ||||||
|  |  * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ | ||||||
|  |  */ | ||||||
|  |         "ALGR(RU_UNDS)": { | ||||||
|  |             "key": "RU_RUBL", | ||||||
|  |             "label": "₽", | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
							
								
								
									
										93
									
								
								quantum/keymap_extras/keymap_russian_typewriter.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								quantum/keymap_extras/keymap_russian_typewriter.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,93 @@ | |||||||
|  | // Copyright 2023 QMK
 | ||||||
|  | // SPDX-License-Identifier: GPL-2.0-or-later
 | ||||||
|  | 
 | ||||||
|  | /*******************************************************************************
 | ||||||
|  |   88888888888 888      d8b                .d888 d8b 888               d8b | ||||||
|  |       888     888      Y8P               d88P"  Y8P 888               Y8P | ||||||
|  |       888     888                        888        888 | ||||||
|  |       888     88888b.  888 .d8888b       888888 888 888  .d88b.       888 .d8888b | ||||||
|  |       888     888 "88b 888 88K           888    888 888 d8P  Y8b      888 88K | ||||||
|  |       888     888  888 888 "Y8888b.      888    888 888 88888888      888 "Y8888b. | ||||||
|  |       888     888  888 888      X88      888    888 888 Y8b.          888      X88 | ||||||
|  |       888     888  888 888  88888P'      888    888 888  "Y8888       888  88888P' | ||||||
|  |                                                         888                 888 | ||||||
|  |                                                         888                 888 | ||||||
|  |                                                         888                 888 | ||||||
|  |      .d88b.   .d88b.  88888b.   .d88b.  888d888 8888b.  888888 .d88b.   .d88888 | ||||||
|  |     d88P"88b d8P  Y8b 888 "88b d8P  Y8b 888P"      "88b 888   d8P  Y8b d88" 888 | ||||||
|  |     888  888 88888888 888  888 88888888 888    .d888888 888   88888888 888  888 | ||||||
|  |     Y88b 888 Y8b.     888  888 Y8b.     888    888  888 Y88b. Y8b.     Y88b 888 | ||||||
|  |      "Y88888  "Y8888  888  888  "Y8888  888    "Y888888  "Y888 "Y8888   "Y88888 | ||||||
|  |          888 | ||||||
|  |     Y8b d88P | ||||||
|  |      "Y88P" | ||||||
|  | *******************************************************************************/ | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "keycodes.h" | ||||||
|  | // clang-format off
 | ||||||
|  | 
 | ||||||
|  | // Aliases
 | ||||||
|  | #define RU_PIPE KC_GRV  // |
 | ||||||
|  | #define RU_NUM  KC_1    // №
 | ||||||
|  | #define RU_MINS KC_2    // -
 | ||||||
|  | #define RU_SLSH KC_3    // /
 | ||||||
|  | #define RU_DQUO KC_4    // "
 | ||||||
|  | #define RU_COLN KC_5    // :
 | ||||||
|  | #define RU_COMM KC_6    // ,
 | ||||||
|  | #define RU_DOT  KC_7    // .
 | ||||||
|  | #define RU_UNDS KC_8    // _
 | ||||||
|  | #define RU_QUES KC_9    // ?
 | ||||||
|  | #define RU_PERC KC_0    // %
 | ||||||
|  | #define RU_EXLM KC_MINS // !
 | ||||||
|  | #define RU_SCLN KC_EQL  // ;
 | ||||||
|  | #define RU_SHTI KC_Q    // Й
 | ||||||
|  | #define RU_TSE  KC_W    // Ц
 | ||||||
|  | #define RU_U    KC_E    // У
 | ||||||
|  | #define RU_KA   KC_R    // К
 | ||||||
|  | #define RU_IE   KC_T    // Е
 | ||||||
|  | #define RU_EN   KC_Y    // Н
 | ||||||
|  | #define RU_GHE  KC_U    // Г
 | ||||||
|  | #define RU_SHA  KC_I    // Ш
 | ||||||
|  | #define RU_SHCH KC_O    // Щ
 | ||||||
|  | #define RU_ZE   KC_P    // З
 | ||||||
|  | #define RU_HA   KC_LBRC // Х
 | ||||||
|  | #define RU_HARD KC_RBRC // Ъ
 | ||||||
|  | #define RU_RPRN KC_BSLS // )
 | ||||||
|  | #define RU_EF   KC_A    // Ф
 | ||||||
|  | #define RU_YERU KC_S    // Ы
 | ||||||
|  | #define RU_VE   KC_D    // В
 | ||||||
|  | #define RU_A    KC_F    // А
 | ||||||
|  | #define RU_PE   KC_G    // П
 | ||||||
|  | #define RU_ER   KC_H    // Р
 | ||||||
|  | #define RU_O    KC_J    // О
 | ||||||
|  | #define RU_EL   KC_K    // Л
 | ||||||
|  | #define RU_DE   KC_L    // Д
 | ||||||
|  | #define RU_ZHE  KC_SCLN // Ж
 | ||||||
|  | #define RU_E    KC_QUOT // Э
 | ||||||
|  | #define RU_YA   KC_Z    // Я
 | ||||||
|  | #define RU_CHE  KC_X    // Ч
 | ||||||
|  | #define RU_ES   KC_C    // С
 | ||||||
|  | #define RU_EM   KC_V    // М
 | ||||||
|  | #define RU_I    KC_B    // И
 | ||||||
|  | #define RU_TE   KC_N    // Т
 | ||||||
|  | #define RU_SOFT KC_M    // Ь
 | ||||||
|  | #define RU_BE   KC_COMM // Б
 | ||||||
|  | #define RU_YU   KC_DOT  // Ю
 | ||||||
|  | #define RU_YO   KC_SLSH // Ё
 | ||||||
|  | #define RU_PLUS S(RU_PIPE) // +
 | ||||||
|  | #define RU_1    S(RU_NUM)  // 1
 | ||||||
|  | #define RU_2    S(RU_MINS) // 2
 | ||||||
|  | #define RU_3    S(RU_SLSH) // 3
 | ||||||
|  | #define RU_4    S(RU_DQUO) // 4
 | ||||||
|  | #define RU_5    S(RU_COLN) // 5
 | ||||||
|  | #define RU_6    S(RU_COMM) // 6
 | ||||||
|  | #define RU_7    S(RU_DOT)  // 7
 | ||||||
|  | #define RU_8    S(RU_UNDS) // 8
 | ||||||
|  | #define RU_9    S(RU_QUES) // 9
 | ||||||
|  | #define RU_0    S(RU_PERC) // 0
 | ||||||
|  | #define RU_EQL  S(RU_EXLM) // =
 | ||||||
|  | #define RU_BSLS S(RU_SCLN) // (backslash)
 | ||||||
|  | #define RU_LPRN S(RU_RPRN) // (
 | ||||||
|  | #define RU_RUBL ALGR(RU_UNDS) // ₽
 | ||||||
|  | 
 | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user