logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

keymap.c (19272B)


  1. // Copyright 2020-2023 alin m elena (@alinelena)
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #include QMK_KEYBOARD_H
  4. #include "keymap_uk.h"
  5. const uint32_t unicode_map[] PROGMEM = {
  6. [la] = 0x03B1, // α
  7. [lA] = 0x0307, //
  8. [lb] = 0x03B2, // β
  9. [lB] = 0x2229, // ∩
  10. [lc] = 0x03C7, // χ
  11. [lC] = 0x2282, // ⊂
  12. [ld] = 0x03B4, // δ
  13. [lD] = 0x2202, // ∂
  14. [le] = 0x03B5, // ε
  15. [lE] = 0x2107, // ℇ
  16. [lf] = 0x03C6, // φ
  17. [lF] = 0x03C8, // ψ
  18. [lg] = 0x03B3, // γ
  19. [lG] = 0x0393, // Γ
  20. [lh] = 0x210F, // ℏ
  21. [lH] = 0x1D4D7, // 𝓗
  22. [li] = 0x222B, // ∫
  23. [lI] = 0x222E, // ∮
  24. [lj] = 0x2208, // ∈
  25. [lJ] = 0x2209, // ∉
  26. [lk] = 0x03F0, // ϰ
  27. [lK] = 0x2206, // ∆
  28. [ll] = 0x03BB, // λ
  29. [lL] = 0x039B, // Λ
  30. [lm] = 0x03BC, // μ
  31. [lM] = 0x2218, // ∘
  32. [ln] = 0x03B7, // η
  33. [lN] = 0x222A, // ∪
  34. [lo] = 0x221E, // ∞
  35. [lO] = 0x2297, // ⊗
  36. [lp] = 0x03C0, // π
  37. [lP] = 0x220F, // ∏
  38. [lq] = 0x03C3, // σ
  39. [lQ] = 0x03D5, // ϕ
  40. [lr] = 0x03C1, // ρ
  41. [lR] = 0x2207, // ∇
  42. [ls] = 0x2211, // ∑
  43. [lS] = 0x2A0B, // ⨋
  44. [lt] = 0x03D1, // ϑ
  45. [lT] = 0x03B8, // θ
  46. [lu] = 0x03C4, // τ
  47. [lU] = 0x2102, // ℂ
  48. [lv] = 0x03BD, // χ
  49. [lV] = 0x2283, // ⊃
  50. [lw] = 0x03C9, // ω
  51. [lW] = 0x03A9, // Ω
  52. [lx] = 0x03BE, // ξ
  53. [lX] = 0x039E, // Ξ
  54. [ly] = 0x211d, // ℝ
  55. [lY] = 0x2124, // ℤ
  56. [lz] = 0x03B6, // ζ
  57. [lZ] = 0x2221, // ∡
  58. [lc1] = 0x2248, // ≈
  59. [lC1] = 0x2249, // ≉
  60. [lp1] = 0x00B1, // ±
  61. [lP1] = 0x2213, // ∓
  62. [lq1] = 0x00D7, // ×
  63. [lQ1] = 0x22C5, // ⋅
  64. [ll1] = 0x1D53C, // 𝔼
  65. [lL1] = 0x212b, // Å
  66. [lk1] = 0x221D, // ∝
  67. [lK1] = 0x2112, // ℒ
  68. [lbo1] = 0x22DC, // ⋜
  69. [lbo2] = 0x2260, // ≠
  70. [lbc1] = 0x22DD, // ⋝
  71. [lbc2] = 0x2245, // ≅
  72. [ls1] = 0x2261, // ≡
  73. [ls2] = 0x2262, // ≢
  74. [ra] = 0x0103, // ă
  75. [rA] = 0x0102, // Ă
  76. [ra1] = 0x00E2, // â
  77. [rA1] = 0x00C2, // Â
  78. [rx] = 0x00E7, // ç
  79. [rX] = 0x00C7, // Ç
  80. [ri] = 0x00EE, // î
  81. [rI] = 0x00CE, // Î
  82. [rs] = 0x0219, // ș⊄
  83. [rS] = 0x0218, // Ș
  84. [rt] = 0x021B, // ț
  85. [rT] = 0x021A, // Ț
  86. [rc] = 0x2284, // ⊄
  87. [rC] = 0x2286, // ⊆
  88. [rv] = 0x2285, // ⊅
  89. [rV] = 0x2287, // ⊇
  90. [rb] = 0x2227, // ∧
  91. [rB] = 0x22BC, // ⊼
  92. [rn] = 0x2228, // ∨
  93. [rN] = 0x22BB, // ⊻
  94. };
  95. // clang-format off
  96. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  97. /*
  98. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  99. * │ ⎋ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ ⌫ │
  100. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  101. * │ ↹ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │
  102. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  103. * │ # │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ ⏎ │
  104. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  105. * │ ⇧(│ \ │ z │ x │ c │ v │ b │ n │ m │ , │ , │ ↑ │ / │
  106. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  107. * │ ⎈ │mnu│lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│ ← │ ↓ │ → │
  108. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  109. shifted symbols
  110. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  111. * │ ← │ ! │ " │ £ │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ │
  112. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  113. * │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │
  114. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  115. * │ ~ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ @ │ ⏎ │
  116. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  117. * │ ⇧(│ | │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ │ / │
  118. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  119. * │ │ │ │ │ │ │ │ │ │ ⇧)│ │ │ │
  120. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  121. altgr symbols
  122. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  123. * │ ← │ ¹ │ ² │ ³ │ € │ ½ │ ¾ │ { │ [ │ ] │ } │ \ │ │
  124. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  125. * │ │ @ │ ſ │ e │ ¶ │ ŧ │ ← │ ↓ │ → │ ø │ þ │ ä │ ã │
  126. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  127. * │ ~ │ æ │ ß │ ð │ đ │ ŋ │ ħ │ ả │ ĸ │ ł │ á │ â │ent│
  128. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  129. * │ ± │ | │ « │ » │ ¢ │ „ │ “ │ ” │ µ │ ─ │ · │ │ ạ̣̣ │
  130. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  131. * │ │ │ │ │ │ │ │ │ │ ° │ │ │ │
  132. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  133. altgr shift symbols
  134. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  135. * │ │ ¡ │ ⅛ │ £ │ ¼ │ ⅜ │ ⅝ │ ⅞ │ ™ │ ± │ ° │ ¿ │ │
  136. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  137. * │ │ Ω │ § │ E │ ® │ Ŧ │ ¥ │ ↑ │ ı │ Ø │ Þ │ å │ ā │
  138. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  139. * │ │ Æ │ ẞ │ Ð │ ª │ Ŋ │ Ħ │ a │ & │ Ł │ ˝a│ ǎ │ent│
  140. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  141. * │ ± │ ¦ │ ‹ │ › │ © │ ‚ │ ‘ │ ’ │ º │ × │ ÷ │ │ ȧ │
  142. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  143. * │ │ │ │ │ │ │ │ │ │ ° │ │ │ │
  144. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  145. *
  146. */
  147. [_QW] = LAYOUT_ortho_5x13(
  148. KC_ESC, UK_1 , UK_2 , UK_3 , UK_4 , UK_5 , UK_6 , UK_7 , UK_8 , UK_9 , UK_0 , UK_MINS, KC_BSPC ,
  149. KC_TAB, UK_Q , UK_W , UK_E , UK_R , UK_T , UK_Y , UK_U , UK_I , UK_O , UK_P , UK_LBRC, UK_RBRC ,
  150. UK_HASH, UK_A , UK_S , UK_D , UK_F , UK_G , UK_H , UK_J , UK_K , UK_L , UK_SCLN, UK_QUOT, KC_ENT ,
  151. SC_LSPO, UK_BSLS, UK_Z , UK_X , UK_C , UK_V , UK_B , UK_N , UK_M , UK_COMM, UK_DOT , KC_UP , UK_SLSH ,
  152. KC_LCTL, KC_LGUI, TT(_LWR), KC_LALT, TT(_RSE), KC_SPC, KC_SPC, KC_SPC, KC_RALT, SC_RSPC, KC_LEFT, KC_DOWN, KC_RGHT),
  153. /*
  154. raise layer
  155. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  156. * │ ` │MUT│Vup│Vdn│prv│ply│nxt│EXT│SLP│WAK│PSC│ ⌫ │ = │
  157. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  158. * │ │ σ │ ω │ ε │ ρ │ ϑ │ ℝ │ τ │ ∫ │ ∞ │ π │ ⋜ │ ⋝ │
  159. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  160. * │ │ α │ ∑ │ δ │ φ │ γ │ ℏ │ ∈ │ ϰ │ λ │ 𝔼 │ ∝ │ ⏎ │
  161. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  162. * │ ⇧(│ ≡ │ ζ │ ξ │ χ │ ν │ β │ η │ μ │ ≈ │ ± │ │ × │
  163. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  164. * │ │ │lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│ │ │ │
  165. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  166. raise layer shifted
  167. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  168. * │ ¬ │ │ │ │ │ │ │ │ │ │ │ ⌫ │ + │
  169. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  170. * │MB3│ ϕ │ Ω │ ℇ │ ∇ │ θ │ ℤ │ ℂ │ ∮ │ ⊗ │ ∏ │ ≠ │ ≅ │
  171. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  172. * │MB2│ ̇ │ ⨋ │ ∂ │ ψ │ Γ │ 𝓗 │ ∉ │ ∆ │ Λ │ Å │ ℒ │ ⏎ │
  173. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  174. * │ ⇧(│ ≢ │ ∡ │ Ξ │ ⊂ │ ⊃ │ ∩ │ ∪ │ ∘ │ ≉ │ ∓ │MSU│ ⋅ │
  175. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  176. * │MB1│MB4│lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│MSL│MSD│MSR│
  177. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  178. MB - mouse buttons
  179. MS - mouse directions
  180. */
  181. [_LWR] = LAYOUT_ortho_5x13(
  182. KC_GRV , KC_MUTE, KC_VOLU, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, G(KC_P), KC_SLEP, KC_WAKE, KC_PSCR, KC_DEL, UK_EQL,
  183. KC_BTN3,UP(lq,lQ),UP(lw,lW),UP(le,lE),UP(lr,lR),UP(lt,lT),UP(ly,lY),UP(lu,lU),UP(li,lI), UP(lo,lO), UP(lp,lP), _______, _______,
  184. KC_BTN2,UP(la,lA),UP(ls,lS),UP(ld,lD),UP(lf,lF),UP(lg,lG),UP(lh,lH),UP(lj,lJ),UP(lk,lK), UP(ll,lL),UP(ll1,lL1), UP(lk1,lK1), _______,
  185. _______, KC_BTN1,UP(lz,lZ),UP(lx,lX),UP(lc,lC),UP(lv,lV),UP(lb,lB),UP(ln,lN),UP(lm,lM),UP(lc1,lC1),UP(lp1,lP1), KC_MS_U, UP(lq1,lQ1),
  186. _______, KC_BTN4, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R),
  187. /*
  188. lower layer
  189. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  190. * │ ⎋ │ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│
  191. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  192. * │ │ â │ │ │ │ ț │ │ │ î │ │ │ │ │
  193. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  194. * │ ⇪ │ ă │ ș │ │ │ │ │ │ │ │ │ │ │
  195. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  196. * │ │ │ │ ç │ ⊄ │ ⊅ │ ∧ │ ∨ │ │ │ │MWU│ │
  197. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  198. * │ │ │ │ │ │ │ │ │ │ │MWL│MWD│MWR│
  199. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  200. MW - mouse wheel
  201. raise layer shifted
  202. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  203. * │ │ │ │ │ │ │ │ │ │ │ │ │ │
  204. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  205. * │ │ Â │ │ │ │ Ț │ │ │ Î │ │ │ │ │
  206. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  207. * │ │ Ă │ Ș │ │ │ │ │ │ │ │ │ │ │
  208. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  209. * │ │ │ │ Ç │ ⊆ │ ⊇ │ ⊼ │ ⊻ │ │ │ │ │ │
  210. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  211. * │ │ │ │ │ │ │ │ │ │ │ │ │ │
  212. * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
  213. */
  214. [_RSE] = LAYOUT_ortho_5x13(
  215. KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 ,
  216. _______,UP(ra1,rA1), _______, _______, _______,UP(rt,rT), _______, _______,UP(ri,rI), _______, _______, _______, _______ ,
  217. KC_CAPS, UP(ra,rA), UP(rs,rS), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
  218. _______, KC_F20 , _______, _______,UP(rc,rC), _______, _______, _______, _______, _______, _______, KC_WH_U, _______ ,
  219. _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_L, KC_WH_D, KC_WH_R),
  220. /*
  221. adj layer
  222. * ┌───┬────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬────┬────┐
  223. * │MOD│RMOD│ │ │ │ │ │ │ │ │ │M_T │M_SW│
  224. * ├───┼────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┤
  225. * │HUI│HUD │M_P│ │rst│ │ │ │ │ │ │ │M_SN│
  226. * ├───┼────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┤
  227. * │SAI│SAD │M_B│ │ │ │ │ │ │ │ │ │M_K │
  228. * ├───┼────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┤
  229. * │VAI│VAD │M_R│ │ │ │ │ │ │ │ │ │M_X │
  230. * ├───┼────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┤
  231. * │TOG│ │ │ │ │ │ │ │ │ │ │M_TW│M_G │
  232. * └───┴────┴───┴───┴───┴───┴───┴───┴───┴───┴───┴────┴────┘
  233. */
  234. [_ADJ] = LAYOUT_ortho_5x13(
  235. UG_NEXT, UG_PREV , A(KC_F2), _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_T , RGB_M_SW,
  236. UG_HUEU, UG_HUED , RGB_M_P , _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN,
  237. UG_SATU, UG_SATD , RGB_M_B , _______, UC_NEXT, _______, _______, _______, _______, _______, _______, _______ , RGB_M_K ,
  238. UG_VALU, UG_VALD , RGB_M_R , _______, UC_PREV, UC_LINX, UC_WIN, UC_WINC, UC_MAC, UC_EMAC, _______, _______ , RGB_M_X ,
  239. UG_TOGG, _______ , _______ , _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_TW, RGB_M_G),
  240. };
  241. // clang-format on
  242. #if defined(ENCODER_MAP_ENABLE)
  243. const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
  244. [_QW] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
  245. #if defined(RGBLIGHT_ENABLE)
  246. [_LWR] = {ENCODER_CCW_CW(UG_HUED, UG_HUEU)},
  247. [_RSE] = {ENCODER_CCW_CW(UG_VALD, UG_VALU)},
  248. [_ADJ] = {ENCODER_CCW_CW(UG_PREV, UG_NEXT)},
  249. #else
  250. [_LWR] = {ENCODER_CCW_CW(KC_MNXT, KC_MPRV)},
  251. [_RSE] = {ENCODER_CCW_CW(KC_MFFD, KC_MRWD)},
  252. [_ADJ] = {ENCODER_CCW_CW(KC_PGDN, KC_PGUP)},
  253. #endif
  254. };
  255. #endif