keymap_italian_mac_iso.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. /* Copyright 2015-2016 Matthias Schmidtt
  2. *
  3. * This program is free software: you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License as published by
  5. * the Free Software Foundation, either version 2 of the License, or
  6. * (at your option) any later version.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. */
  16. #pragma once
  17. #include "keymap.h"
  18. // clang-format off
  19. /*
  20. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
  21. * │ \ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ ' │ ì │ │
  22. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤
  23. * │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ è │ + │ │
  24. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
  25. * │ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ò │ à │ ù │ │
  26. * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤
  27. * │ │ < │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ - │ │
  28. * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤
  29. * │ │ │ │ │ │ │ │
  30. * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘
  31. */
  32. // Row 1
  33. #define IT_BSLS KC_GRV // (backslash)
  34. #define IT_1 KC_1 // 1
  35. #define IT_2 KC_2 // 2
  36. #define IT_3 KC_3 // 3
  37. #define IT_4 KC_4 // 4
  38. #define IT_5 KC_5 // 5
  39. #define IT_6 KC_6 // 6
  40. #define IT_7 KC_7 // 7
  41. #define IT_8 KC_8 // 8
  42. #define IT_9 KC_9 // 9
  43. #define IT_0 KC_0 // 0
  44. #define IT_QUOT KC_MINS // '
  45. #define IT_IGRV KC_EQL // ì
  46. // Row 2
  47. #define IT_Q KC_Q // Q
  48. #define IT_W KC_W // W
  49. #define IT_E KC_E // E
  50. #define IT_R KC_R // R
  51. #define IT_T KC_T // T
  52. #define IT_Y KC_Y // Y
  53. #define IT_U KC_U // U
  54. #define IT_I KC_I // I
  55. #define IT_O KC_O // O
  56. #define IT_P KC_P // P
  57. #define IT_EGRV KC_LBRC // è
  58. #define IT_PLUS KC_RBRC // +
  59. // Row 3
  60. #define IT_A KC_A // A
  61. #define IT_S KC_S // S
  62. #define IT_D KC_D // D
  63. #define IT_F KC_F // F
  64. #define IT_G KC_G // G
  65. #define IT_H KC_H // H
  66. #define IT_J KC_J // J
  67. #define IT_K KC_K // K
  68. #define IT_L KC_L // L
  69. #define IT_OGRV KC_SCLN // ò
  70. #define IT_AGRV KC_QUOT // à
  71. #define IT_UGRV KC_NUHS // ù
  72. // Row 4
  73. #define IT_LABK KC_NUBS // <
  74. #define IT_Z KC_Z // Z
  75. #define IT_X KC_X // X
  76. #define IT_C KC_C // C
  77. #define IT_V KC_V // V
  78. #define IT_B KC_B // B
  79. #define IT_N KC_N // N
  80. #define IT_M KC_M // M
  81. #define IT_COMM KC_COMM // ,
  82. #define IT_DOT KC_DOT // .
  83. #define IT_MINS KC_SLSH // -
  84. /* Shifted symbols
  85. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
  86. * │ | │ ! │ " │ £ │ $ │ % │ & │ / │ ( │ ) │ = │ ? │ ^ │ │
  87. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤
  88. * │ │ │ │ │ │ │ │ │ │ │ │ é │ * │ │
  89. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
  90. * │ │ │ │ │ │ │ │ │ │ │ ç │ ° │ § │ │
  91. * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤
  92. * │ │ > │ │ │ │ │ │ │ │ ; │ : │ _ │ │
  93. * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤
  94. * │ │ │ │ │ │ │ │
  95. * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘
  96. */
  97. // Row 1
  98. #define IT_PIPE S(IT_BSLS) // |
  99. #define IT_EXLM S(IT_1) // !
  100. #define IT_DQUO S(IT_2) // "
  101. #define IT_PND S(IT_3) // £
  102. #define IT_DLR S(IT_4) // $
  103. #define IT_PERC S(IT_5) // %
  104. #define IT_AMPR S(IT_6) // &
  105. #define IT_SLSH S(IT_7) // /
  106. #define IT_LPRN S(IT_8) // (
  107. #define IT_RPRN S(IT_9) // )
  108. #define IT_EQL S(IT_0) // =
  109. #define IT_QUES S(IT_QUOT) // ?
  110. #define IT_CIRC S(IT_IGRV) // ^
  111. // Row 2
  112. #define IT_EACU S(IT_EGRV) // é
  113. #define IT_ASTR S(IT_PLUS) // *
  114. // Row 3
  115. #define IT_LCCE S(IT_OGRV) // ç
  116. #define IT_DEG S(IT_AGRV) // °
  117. #define IT_SECT S(IT_UGRV) // §
  118. // Row 4
  119. #define IT_RABK S(IT_LABK) // >
  120. #define IT_SCLN S(IT_COMM) // ;
  121. #define IT_COLN S(IT_DOT) // :
  122. #define IT_UNDS S(IT_MINS) // _
  123. /* Alted symbols
  124. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
  125. * │ ` │ « │ “ │ ‘ │ ¥ │ ~ │ ‹ │ ÷ │ ´ │ ` │ ≠ │ ¡ │ ˆ │ │
  126. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤
  127. * │ │ „ │ Ω │ € │ ® │ ™ │ Æ │ ¨ │ Œ │ Ø │ π │ [ │ ] │ │
  128. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
  129. * │ │ Å │ ß │ ∂ │ ƒ │ ∞ │ ∆ │ ª │ º │ ¬ │ @ │ # │ ¶ │ │
  130. * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤
  131. * │ │ ≤ │ ∑ │ † │ © │ √ │ ∫ │ ˜ │ µ │ … │ • │ – │ │
  132. * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤
  133. * │ │ │ │ │ │ │ │
  134. * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘
  135. */
  136. // Row 1
  137. #define IT_GRV A(IT_BSLS) // `
  138. #define IT_LDAQ A(IT_1) // «
  139. #define IT_LDQU A(IT_2) // “
  140. #define IT_LSQU A(IT_3) // ‘
  141. #define IT_YEN A(IT_4) // ¥
  142. #define IT_TILD A(IT_5) // ~
  143. #define IT_LSAQ A(IT_6) // ‹
  144. #define IT_DIV A(IT_7) // ÷
  145. #define IT_ACUT A(IT_8) // ´ (dead)
  146. #define IT_DGRV A(IT_9) // ` (dead)
  147. #define IT_NEQL A(IT_0) // ≠
  148. #define IT_IEXL A(IT_QUOT) // ¡
  149. #define IT_DCIR A(IT_IGRV) // ˆ (dead)
  150. // Row 2
  151. #define IT_DLQU A(IT_Q) // „
  152. #define IT_OMEG A(IT_W) // Ω
  153. #define IT_EURO A(IT_E) // €
  154. #define IT_REGD A(IT_R) // ®
  155. #define IT_TM A(IT_T) // ™
  156. #define IT_AE A(IT_Y) // Æ
  157. #define IT_DIAE A(IT_U) // ¨ (dead)
  158. #define IT_OE A(IT_I) // Œ
  159. #define IT_OSTR A(IT_O) // Ø
  160. #define IT_PI A(IT_P) // π
  161. #define IT_LBRC A(IT_EGRV) // [
  162. #define IT_RBRC A(IT_PLUS) // ]
  163. // Row 3
  164. #define IT_ARNG A(IT_A) // Å
  165. #define IT_SS A(IT_S) // ß
  166. #define IT_PDIF A(IT_D) // ∂
  167. #define IT_FHK A(IT_F) // ƒ
  168. #define IT_INFN A(IT_G) // ∞
  169. #define IT_INCR A(IT_H) // ∆
  170. #define IT_FORD A(IT_J) // ª
  171. #define IT_MORD A(IT_K) // º
  172. #define IT_NOT A(IT_L) // ¬
  173. #define IT_AT A(IT_OGRV) // @
  174. #define IT_HASH A(IT_AGRV) // #
  175. #define IT_PILC A(IT_UGRV) // ¶
  176. // Row 4
  177. #define IT_LTEQ A(IT_LABK) // ≤
  178. #define IT_NARS A(IT_Z) // ∑
  179. #define IT_DAGG A(IT_X) // †
  180. #define IT_COPY A(IT_C) // ©
  181. #define IT_SQRT A(IT_V) // √
  182. #define IT_INTG A(IT_B) // ∫
  183. #define IT_STIL A(IT_N) // ˜ (dead)
  184. #define IT_MICR A(IT_M) // µ
  185. #define IT_ELLP A(IT_COMM) // …
  186. #define IT_BULT A(IT_DOT) // •
  187. #define IT_NDSH A(IT_MINS) // –
  188. /* Shift+Alted symbols
  189. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
  190. * │ ı │ » │ ” │ ’ │ ¢ │ ‰ │ › │ ⁄ │  │ │ ≈ │ ¿ │ ± │ │
  191. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤
  192. * │ │ ‚ │ À │ È │ Ì │ Ò │ │ Ù │ │ │ ∏ │ { │ } │ │
  193. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │
  194. * │ │ │ ¯ │ ˘ │ ˙ │ ˚ │ ¸ │ ˝ │ ˛ │ ˇ │ Ç │ │ ◊ │ │
  195. * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤
  196. * │ │ ≥ │ │ ‡ │ Á │ É │ Í │ Ó │ Ú │ │ · │ — │ │
  197. * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤
  198. * │ │ │ │ │ │ │ │
  199. * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘
  200. */
  201. // Row 1
  202. #define IT_DLSI S(A(IT_BSLS)) // ı
  203. #define IT_RDAQ S(A(IT_1)) // »
  204. #define IT_RDQU S(A(IT_2)) // ”
  205. #define IT_RSQU S(A(IT_3)) // ’
  206. #define IT_CENT S(A(IT_4)) // ¢
  207. #define IT_PERM S(A(IT_5)) // ‰
  208. #define IT_RSAQ S(A(IT_6)) // ›
  209. #define IT_FRSL S(A(IT_7)) // ⁄
  210. #define IT_APPL S(A(IT_8)) //  (Apple logo)
  211. #define IT_AEQL S(A(IT_0)) // ≈
  212. #define IT_IQUE S(A(IT_QUOT)) // ¿
  213. #define IT_PLMN S(A(IT_IGRV)) // ±
  214. // Row 2
  215. #define IT_SLQU S(A(IT_Q)) // ‚
  216. #define IT_CAGR S(A(IT_W)) // À
  217. #define IT_CEGR S(A(IT_E)) // È
  218. #define IT_CIGR S(A(IT_R)) // Ì
  219. #define IT_COGR S(A(IT_T)) // Ò
  220. #define IT_CUGR S(A(IT_U)) // Ù
  221. #define IT_NARP S(A(IT_P)) // ∏
  222. #define IT_LCBR S(A(IT_EGRV)) // {
  223. #define IT_RCBR S(A(IT_PLUS)) // }
  224. // Row 3
  225. #define IT_MACR S(A(IT_S)) // ¯
  226. #define IT_BREV S(A(IT_D)) // ˘
  227. #define IT_DOTA S(A(IT_F)) // ˙
  228. #define IT_RNGA S(A(IT_G)) // ˚
  229. #define IT_CEDL S(A(IT_H)) // ¸
  230. #define IT_DACU S(A(IT_J)) // ˝
  231. #define IT_OGON S(A(IT_K)) // ˛
  232. #define IT_CARN S(A(IT_L)) // ˇ
  233. #define IT_CCCE S(A(IT_OGRV)) // Ç
  234. #define IT_LOZN S(A(IT_UGRV)) // ◊
  235. // Row 4
  236. #define IT_GTEQ S(A(IT_LABK)) // ≥
  237. #define IT_DDAG S(A(IT_X)) // ‡
  238. #define IT_CAAC S(A(IT_C)) // Á
  239. #define IT_CEAC S(A(IT_V)) // É
  240. #define IT_CIAC S(A(IT_B)) // Í
  241. #define IT_COAC S(A(IT_N)) // Ó
  242. #define IT_CUAC S(A(IT_M)) // Ú
  243. #define IT_MDDT S(A(IT_DOT)) // ·
  244. #define IT_MDSH S(A(IT_MINS)) // —