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.

108 lines
2.4 KiB

  1. /* Copyright 2015-2016 Jack Humbert
  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. #ifndef KEYMAP_BELGIAN_H
  17. #define KEYMAP_BELGIAN_H
  18. #include "keymap.h"
  19. // Normal characters
  20. // Line 1
  21. #define BE_SUP2 KC_GRV
  22. #define BE_AMP KC_1
  23. #define BE_EACU KC_2
  24. #define BE_QUOT KC_3
  25. #define BE_APOS KC_4
  26. #define BE_LPRN KC_5
  27. #define BE_PARA KC_6
  28. #define BE_EGRV KC_7
  29. #define BE_EXLM KC_8
  30. #define BE_CCED KC_9
  31. #define BE_AGRV KC_0
  32. #define BE_RPRN KC_MINS
  33. #define BE_MINS KC_EQL
  34. // Line 2
  35. #define BE_A KC_Q
  36. #define BE_Z KC_W
  37. #define BE_CIRC KC_LBRC
  38. #define BE_DLR KC_RBRC
  39. // Line 3
  40. #define BE_Q KC_A
  41. #define BE_M KC_SCLN
  42. #define BE_UGRV KC_QUOT
  43. #define BE_MU KC_NUHS
  44. // Line 4
  45. #define BE_LESS KC_NUBS
  46. #define BE_W KC_Z
  47. #define BE_COMM KC_M
  48. #define BE_SCLN KC_COMM
  49. #define BE_COLN KC_DOT
  50. #define BE_EQL KC_SLSH
  51. // Shifted characters
  52. // Line 1
  53. #define BE_SUP3 KC_TILD
  54. #define BE_1 LSFT(KC_1)
  55. #define BE_2 LSFT(KC_2)
  56. #define BE_3 LSFT(KC_3)
  57. #define BE_4 LSFT(KC_4)
  58. #define BE_5 LSFT(KC_5)
  59. #define BE_6 LSFT(KC_6)
  60. #define BE_7 LSFT(KC_7)
  61. #define BE_8 LSFT(KC_8)
  62. #define BE_9 LSFT(KC_9)
  63. #define BE_0 LSFT(KC_0)
  64. #define BE_OVRR KC_UNDS
  65. #define BE_UNDS KC_PLUS
  66. // Line 2
  67. #define BE_UMLT LSFT(BE_CIRC)
  68. #define BE_PND LSFT(BE_DLR)
  69. // Line 3
  70. #define BE_PERC LSFT(BE_UGRV)
  71. // Line 4
  72. #define BE_GRTR LSFT(BE_LESS)
  73. #define BE_QUES LSFT(BE_COMM)
  74. #define BE_DOT LSFT(BE_SCLN)
  75. #define BE_SLSH LSFT(BE_COLN)
  76. #define BE_PLUS LSFT(BE_EQL)
  77. // Alt Gr-ed characters
  78. // Line 1
  79. #define BE_PIPE ALGR(KC_1)
  80. #define BE_AT ALGR(KC_2)
  81. #define BE_HASH ALGR(KC_3)
  82. #define BE_LCBR ALGR(KC_9)
  83. #define BE_RCBR ALGR(KC_0)
  84. // Line 2
  85. #define BE_EURO ALGR(KC_E)
  86. #define BE_LSBR ALGR(BE_CIRC)
  87. #define BE_RSBR ALGR(BE_DLR)
  88. // Line 3
  89. #define BE_ACUT ALGR(BE_UGRV)
  90. #define BE_GRV ALGR(BE_MU)
  91. // Line 4
  92. #define BE_BSLS ALGR(BE_LESS)
  93. #define BE_TILT ALGR(BE_EQL)
  94. #endif