keymap_dvp.h 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. /* Copyright 2016 Artyom Mironov
  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. * │ $ │ & │ [ │ { │ } │ ( │ = │ * │ ) │ + │ ] │ ! │ # │       │
  22. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
  23. * │     │ ; │ , │ . │ P │ Y │ F │ G │ C │ R │ L │ / │ @ │  \  │
  24. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
  25. * │      │ A │ O │ E │ U │ I │ D │ H │ T │ N │ S │ - │        │
  26. * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
  27. * │        │ ' │ Q │ J │ K │ X │ B │ M │ W │ V │ Z │          │
  28. * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
  29. * │    │    │    │                        │    │    │    │    │
  30. * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
  31. */
  32. // Row 1
  33. #define DP_DLR KC_GRV // $
  34. #define DP_AMPR KC_1 // &
  35. #define DP_LBRC KC_2 // [
  36. #define DP_LCBR KC_3 // {
  37. #define DP_RCBR KC_4 // }
  38. #define DP_LPRN KC_5 // (
  39. #define DP_EQL KC_6 // =
  40. #define DP_ASTR KC_7 // *
  41. #define DP_RPRN KC_8 // )
  42. #define DP_PLUS KC_9 // +
  43. #define DP_RBRC KC_0 // ]
  44. #define DP_EXLM KC_MINS // !
  45. #define DP_HASH KC_EQL // #
  46. // Row 2
  47. #define DP_SCLN KC_Q // ;
  48. #define DP_COMM KC_W // ,
  49. #define DP_DOT KC_E // .
  50. #define DP_P KC_R // P
  51. #define DP_Y KC_T // Y
  52. #define DP_F KC_Y // F
  53. #define DP_G KC_U // G
  54. #define DP_C KC_I // C
  55. #define DP_R KC_O // R
  56. #define DP_L KC_P // L
  57. #define DP_SLSH KC_LBRC // /
  58. #define DP_AT KC_RBRC // @
  59. #define DP_BSLS KC_BSLS // (backslash)
  60. // Row 3
  61. #define DP_A KC_A // A
  62. #define DP_O KC_S // O
  63. #define DP_E KC_D // E
  64. #define DP_U KC_F // U
  65. #define DP_I KC_G // I
  66. #define DP_D KC_H // D
  67. #define DP_H KC_J // H
  68. #define DP_T KC_K // T
  69. #define DP_N KC_L // N
  70. #define DP_S KC_SCLN // S
  71. #define DP_MINS KC_QUOT // -
  72. // Row 4
  73. #define DP_QUOT KC_Z // '
  74. #define DP_Q KC_X // Q
  75. #define DP_J KC_C // J
  76. #define DP_K KC_V // K
  77. #define DP_X KC_B // X
  78. #define DP_B KC_N // B
  79. #define DP_M KC_M // M
  80. #define DP_W KC_COMM // W
  81. #define DP_V KC_DOT // V
  82. #define DP_Z KC_SLSH // Z
  83. /* Shifted symbols
  84. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
  85. * │ ~ │ % │ 7 │ 5 │ 3 │ 1 │ 9 │ 0 │ 2 │ 4 │ 6 │ 8 │ ` │       │
  86. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
  87. * │     │ : │ < │ > │   │   │   │   │   │   │   │ ? │ ^ │  |  │
  88. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
  89. * │      │   │   │   │   │   │   │   │   │   │   │ _ │        │
  90. * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
  91. * │        │ " │   │   │   │   │   │   │   │   │   │          │
  92. * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
  93. * │    │    │    │                        │    │    │    │    │
  94. * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
  95. */
  96. // Row 1
  97. #define DP_TILD S(DP_DLR) // ~
  98. #define DP_PERC S(DP_AMPR) // %
  99. #define DP_7 S(DP_LBRC) // 7
  100. #define DP_5 S(DP_LCBR) // 5
  101. #define DP_3 S(DP_RCBR) // 3
  102. #define DP_1 S(DP_LPRN) // 1
  103. #define DP_9 S(DP_EQL) // 9
  104. #define DP_0 S(DP_ASTR) // 0
  105. #define DP_2 S(DP_RPRN) // 2
  106. #define DP_4 S(DP_PLUS) // 4
  107. #define DP_6 S(DP_RBRC) // 6
  108. #define DP_8 S(DP_EXLM) // 8
  109. #define DP_GRV S(DP_HASH) // `
  110. // Row 2
  111. #define DP_COLN S(DP_SCLN) // :
  112. #define DP_LABK S(DP_COMM) // <
  113. #define DP_RABK S(DP_DOT) // >
  114. #define DP_QUES S(DP_SLSH) // ?
  115. #define DP_CIRC S(DP_AT) // ^
  116. #define DP_PIPE S(DP_BSLS) // |
  117. // Row 3
  118. #define DP_UNDS S(DP_MINS) // _
  119. // Row 4
  120. #define DP_DQUO S(DP_QUOT) // "