You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

162 lines
8.2 KiB

  1. /* Copyright 2020
  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. * ; ς Ε Ρ Τ Υ Θ Ι Ο Π [ ]
  24. *
  25. * Α Σ Δ Φ Γ Η Ξ Κ Λ ΄ ' \
  26. *
  27. * Ζ Χ Ψ Ω Β Ν Μ , . /
  28. *
  29. *
  30. *
  31. */
  32. // Row 1
  33. #define GR_GRV KC_GRV // `
  34. #define GR_1 KC_1 // 1
  35. #define GR_2 KC_2 // 2
  36. #define GR_3 KC_3 // 3
  37. #define GR_4 KC_4 // 4
  38. #define GR_5 KC_5 // 5
  39. #define GR_6 KC_6 // 6
  40. #define GR_7 KC_7 // 7
  41. #define GR_8 KC_8 // 8
  42. #define GR_9 KC_9 // 9
  43. #define GR_0 KC_0 // 0
  44. #define GR_MINS KC_MINS // -
  45. #define GR_EQL KC_EQL // =
  46. // Row 2
  47. #define GR_SCLN KC_Q // ;
  48. #define GR_FSIG KC_W // ς
  49. #define GR_EPSL KC_E // Ε
  50. #define GR_RHO KC_R // Ρ
  51. #define GR_TAU KC_T // Τ
  52. #define GR_UPSL KC_Y // Υ
  53. #define GR_THET KC_U // Θ
  54. #define GR_IOTA KC_I // Ι
  55. #define GR_OMCR KC_O // Ο
  56. #define GR_PI KC_P // Π
  57. #define GR_LBRC KC_LBRC // [
  58. #define GR_RBRC KC_RBRC // ]
  59. // Row 3
  60. #define GR_ALPH KC_A // Α
  61. #define GR_SIGM KC_S // Σ
  62. #define GR_DELT KC_D // Δ
  63. #define GR_PHI KC_F // Φ
  64. #define GR_GAMM KC_G // Γ
  65. #define GR_ETA KC_H // Η
  66. #define GR_XI KC_J // Ξ
  67. #define GR_KAPP KC_K // Κ
  68. #define GR_LAMB KC_L // Λ
  69. #define GR_TONS KC_SCLN // ΄ (dead)
  70. #define GR_QUOT KC_QUOT // '
  71. #define GR_BSLS KC_NUHS // (backslash)
  72. // Row 4
  73. #define GR_ZETA KC_Z // Ζ
  74. #define GR_CHI KC_X // Χ
  75. #define GR_PSI KC_C // Ψ
  76. #define GR_OMEG KC_V // Ω
  77. #define GR_BETA KC_B // Β
  78. #define GR_NU KC_N // Ν
  79. #define GR_MU KC_M // Μ
  80. #define GR_COMM KC_COMM // ,
  81. #define GR_DOT KC_DOT // .
  82. #define GR_SLSH KC_SLSH // /
  83. /* Shifted symbols
  84. *
  85. * ~ ! @ # $ % ^ & * ( ) _ +
  86. *
  87. * : ΅ { }
  88. *
  89. * ¨ " │ | │ │
  90. *
  91. * < > ?
  92. *
  93. *
  94. *
  95. */
  96. // Row 1
  97. #define GR_TILD S(GR_GRV) // ~
  98. #define GR_EXLM S(GR_1) // !
  99. #define GR_AT S(GR_2) // @
  100. #define GR_HASH S(GR_3) // #
  101. #define GR_DLR S(GR_4) // $
  102. #define GR_PERC S(GR_5) // %
  103. #define GR_CIRC S(GR_6) // ^
  104. #define GR_AMPR S(GR_7) // &
  105. #define GR_ASTR S(GR_8) // *
  106. #define GR_LPRN S(GR_9) // (
  107. #define GR_RPRN S(GR_0) // )
  108. #define GR_UNDS S(GR_MINS) // _
  109. #define GR_PLUS S(GR_EQL) // +
  110. // Row 2
  111. #define GR_COLN S(GR_SCLN) // :
  112. #define GR_DIAT S(GR_FSIG) // ΅ (dead)
  113. #define GR_LCBR S(GR_LBRC) // {
  114. #define GR_RCBR S(GR_RBRC) // }
  115. // Row 3
  116. #define GR_DIAE S(GR_TONS) // ¨ (dead)
  117. #define GR_DQUO S(GR_QUOT) // "
  118. #define GR_PIPE S(GR_BSLS) // |
  119. // Row 4
  120. #define GR_LABK S(GR_COMM) // <
  121. #define GR_RABK S(GR_DOT) // >
  122. #define GR_QUES S(GR_SLSH) // ?
  123. /* AltGr symbols
  124. *
  125. * ² ³ £ § ¤ ¦ ° ± ½
  126. *
  127. * ® ¥ « »
  128. *
  129. * ¬
  130. *
  131. * ©
  132. *
  133. *
  134. *
  135. */
  136. // Row 1
  137. #define GR_SUP2 ALGR(GR_2) // ²
  138. #define GR_SUP3 ALGR(GR_3) // ³
  139. #define GR_PND ALGR(GR_4) // £
  140. #define GR_SECT ALGR(GR_5) // §
  141. #define GR_PILC ALGR(GR_6) // ¶
  142. #define GR_CURR ALGR(GR_8) // ¤
  143. #define GR_BRKP ALGR(GR_9) // ¦
  144. #define GR_DEG ALGR(GR_0) // °
  145. #define GR_PLMN ALGR(GR_MINS) // ±
  146. #define GR_HALF ALGR(GR_EQL) // ½
  147. // Row 2
  148. #define GR_EURO ALGR(GR_EPSL) // €
  149. #define GR_REGD ALGR(GR_RHO) // ®
  150. #define GR_YEN ALGR(GR_UPSL) // ¥
  151. #define GR_LDAQ ALGR(GR_LBRC) // «
  152. #define GR_RDAQ ALGR(GR_RBRC) // »
  153. // Row 3
  154. #define GR_NOT ALGR(GR_BSLS) // ¬
  155. // Row 4
  156. #define GR_COPY ALGR(GR_PSI) // ©