diff options
author | Ryan <fauxpark@gmail.com> | 2020-04-05 17:56:20 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-05 00:56:20 -0700 |
commit | c3c2eb71e14500117aa974e10fa670fbca893661 (patch) | |
tree | 85ae6787be02e3031afcdb337ed0ec09acf9939e /quantum/keymap_extras | |
parent | 28a6a4a15bc1d2ed8432ac81c37bef5bc0c7515e (diff) | |
download | qmk_firmware-c3c2eb71e14500117aa974e10fa670fbca893661.tar.gz qmk_firmware-c3c2eb71e14500117aa974e10fa670fbca893661.zip |
Add Greek keymap (#8636)
* Add Greek keymap
* Split left shift (unused), change keycode for dialytika tonos
* Update quantum/keymap_extras/keymap_greek.h
Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
* Fix definition for DTON
Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
Diffstat (limited to 'quantum/keymap_extras')
-rw-r--r-- | quantum/keymap_extras/keymap_greek.h | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/quantum/keymap_extras/keymap_greek.h b/quantum/keymap_extras/keymap_greek.h new file mode 100644 index 0000000000..6ea9f289b0 --- /dev/null +++ b/quantum/keymap_extras/keymap_greek.h @@ -0,0 +1,162 @@ +/* Copyright 2020 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#pragma once + +#include "keymap.h" + +// clang-format off + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ ; │ ς │ Ε │ Ρ │ Τ │ Υ │ Θ │ Ι │ Ο │ Π │ [ │ ] │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ Α │ Σ │ Δ │ Φ │ Γ │ Η │ Ξ │ Κ │ Λ │ ΄ │ ' │ \ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ │ Ζ │ Χ │ Ψ │ Ω │ Β │ Ν │ Μ │ , │ . │ / │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define GR_GRV KC_GRV // ` +#define GR_1 KC_1 // 1 +#define GR_2 KC_2 // 2 +#define GR_3 KC_3 // 3 +#define GR_4 KC_4 // 4 +#define GR_5 KC_5 // 5 +#define GR_6 KC_6 // 6 +#define GR_7 KC_7 // 7 +#define GR_8 KC_8 // 8 +#define GR_9 KC_9 // 9 +#define GR_0 KC_0 // 0 +#define GR_MINS KC_MINS // - +#define GR_EQL KC_EQL // = +// Row 2 +#define GR_SCLN KC_Q // ; +#define GR_FSIG KC_W // ς +#define GR_EPSL KC_E // Ε +#define GR_RHO KC_R // Ρ +#define GR_TAU KC_T // Τ +#define GR_UPSL KC_Y // Υ +#define GR_THET KC_U // Θ +#define GR_IOTA KC_I // Ι +#define GR_OMCR KC_O // Ο +#define GR_PI KC_P // Π +#define GR_LBRC KC_LBRC // [ +#define GR_RBRC KC_RBRC // ] +// Row 3 +#define GR_ALPH KC_A // Α +#define GR_SIGM KC_S // Σ +#define GR_DELT KC_D // Δ +#define GR_PHI KC_F // Φ +#define GR_GAMM KC_G // Γ +#define GR_ETA KC_H // Η +#define GR_XI KC_J // Ξ +#define GR_KAPP KC_K // Κ +#define GR_LAMB KC_L // Λ +#define GR_TONS KC_SCLN // ΄ (dead) +#define GR_QUOT KC_QUOT // ' +#define GR_BSLS KC_NUHS // (backslash) +// Row 4 +#define GR_ZETA KC_Z // Ζ +#define GR_CHI KC_X // Χ +#define GR_PSI KC_C // Ψ +#define GR_OMEG KC_V // Ω +#define GR_BETA KC_B // Β +#define GR_NU KC_N // Ν +#define GR_MU KC_M // Μ +#define GR_COMM KC_COMM // , +#define GR_DOT KC_DOT // . +#define GR_SLSH KC_SLSH // / + +/* Shifted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ : │ ΅ │ │ │ │ │ │ │ │ │ { │ } │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ │ │ │ │ │ │ │ │ │ ¨ │ " │ | │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ │ │ │ │ │ │ │ │ < │ > │ ? │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define GR_TILD S(GR_GRV) // ~ +#define GR_EXLM S(GR_1) // ! +#define GR_AT S(GR_2) // @ +#define GR_HASH S(GR_3) // # +#define GR_DLR S(GR_4) // $ +#define GR_PERC S(GR_5) // % +#define GR_CIRC S(GR_6) // ^ +#define GR_AMPR S(GR_7) // & +#define GR_ASTR S(GR_8) // * +#define GR_LPRN S(GR_9) // ( +#define GR_RPRN S(GR_0) // ) +#define GR_UNDS S(GR_MINS) // _ +#define GR_PLUS S(GR_EQL) // + +// Row 2 +#define GR_COLN S(GR_SCLN) // : +#define GR_DTON S(GR_FSIG) // ΅ (dead) +#define GR_LCBR S(GR_LBRC) // { +#define GR_RCBR S(GR_RBRC) // } +// Row 3 +#define GR_DIAE S(GR_TONS) // ¨ (dead) +#define GR_DQUO S(GR_QUOT) // " +#define GR_PIPE S(GR_BSLS) // | +// Row 4 +#define GR_LABK S(GR_COMM) // < +#define GR_RABK S(GR_DOT) // > +#define GR_QUES S(GR_SLSH) // ? + +/* AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ │ │ ² │ ³ │ £ │ § │ ¶ │ │ ¤ │ ¦ │ ° │ ± │ ½ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ € │ ® │ │ ¥ │ │ │ │ │ « │ » │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ │ │ │ │ │ │ │ │ │ │ │ ¬ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ │ │ │ © │ │ │ │ │ │ │ │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define GR_SUP2 ALGR(GR_2) // ² +#define GR_SUP3 ALGR(GR_3) // ³ +#define GR_PND ALGR(GR_4) // £ +#define GR_SECT ALGR(GR_5) // § +#define GR_PILC ALGR(GR_6) // ¶ +#define GR_CURR ALGR(GR_8) // ¤ +#define GR_BRKP ALGR(GR_9) // ¦ +#define GR_DEG ALGR(GR_0) // ° +#define GR_PLMN ALGR(GR_MINS) // ± +#define GR_HALF ALGR(GR_EQL) // ½ +// Row 2 +#define GR_EURO ALGR(GR_EPSL) // € +#define GR_REGD ALGR(GR_RHO) // ® +#define GR_YEN ALGR(GR_UPSL) // ¥ +#define GR_LDAQ ALGR(GR_LBRC) // « +#define GR_RDAQ ALGR(GR_RBRC) // » +// Row 3 +#define GR_NOT ALGR(GR_BSLS) // ¬ +// Row 4 +#define GR_COPY ALGR(GR_PSI) // © |