diff --git a/keyboards/ktec/ergodone/keymaps/vega/keymap.c b/keyboards/ktec/ergodone/keymaps/vega/keymap.c index ee6c56bf958..6105cddf155 100644 --- a/keyboards/ktec/ergodone/keymaps/vega/keymap.c +++ b/keyboards/ktec/ergodone/keymaps/vega/keymap.c @@ -1,413 +1,636 @@ +// Copyright 2021 Vega Carlson (@VegaDeftwing) +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H -enum layer_names { - BASE, - GREL, - GREU, - SYMB, - MATH, - QWER, - FNLR -}; +enum layer_names { BASE, GREL, GREU, SYMB, MATH, QWER, FNLR, TINY, FULL, FULU }; enum unicode_names { - //MATH - neq, //≠ - intgrl, //∫ - angl, //∠ - imply, //⇒ - equiv, //⇔ - porp, //∝ - exists, //∃ - nexists, //∄ - forall, //∀ - and, //∧ - or, //∨ - xor, //⊕ - apeql, //≅ - root, //√ - not, //¬ - sum, //∑ - plsminus, //± - infin, //∞ - emtyset, //∅ - Mn, //ℕ - Mz, //ℤ - Mq, //ℚ - Mr, //ℝ - Mc, //ℂ - eleof, //∈ - member, //∋ - neleof, //∉ - nmember, //∌ - subsetof, //⊂ - suprsetof, //⊃ - intersection, //∩ - Munion, //∪ + // MATH + neq, //≠ + intgrl, //∫ + angl, //∠ + imply, //⇒ + equiv, //⇔ + porp, //∝ + exists, //∃ + nexists, //∄ + forall, //∀ + and, //∧ + or + , //∨ + xor, //⊕ + apeql, //≅ + root, //√ + not, //¬ + sum, //∑ + plsminus, //± + infin, //∞ + emtyset, //∅ + Mn, //ℕ + Mz, //ℤ + Mq, //ℚ + Mr, //ℝ + Mc, //ℂ + eleof, //∈ + member, //∋ + neleof, //∉ + nmember, //∌ + subsetof, //⊂ + suprsetof, //⊃ + intersection, //∩ + Munion, //∪ - //SYMB - arwl, - arwu, - arwr, - arwd, + // SYMB + arwl, + arwu, + arwr, + arwd, - uxclm, - cent, - degree, - trade, - copy, - numero, - sect, - mdot, - rang, + uxclm, + cent, + degree, + trade, + copy, + numero, + sect, + mdot, + rang, + lshade, + mshade, + dshade, - lshade, - mshade, - dshade, + fire, + water, + cleft, + baster, + neteen, + floppy, - fire, - water, - cleft, - baster, - neteen, - floppy, + boxemp, + boxchk, + boxX, - boxemp, - boxchk, - boxX, + bbstr, + bbstl, + bbml, + bbmr, + bbmb, + bbrtr, + bbrbr, + bbrtl, + bbrbl, + bbsbr, + bbsbl, + bbmbr, + bbmbl, - bbstr, - bbstl, - bbml, - bbmr, - bbmb, - bbrtr, - bbrbr, - bbrtl, - bbrbl, - bbsbr, - bbsbl, - bbmbr, - bbmbl, - - Agrave, - Aacute, - Acircm, - Atilde, - Abreve, - Adiaer, - Adacut, + Agrave, + Aacute, + Acircm, + Atilde, + Abreve, + Adiaer, + Adacut, // not all ogham letters, as I // actually intend to use them for hex - OS, - Oa, - Ob, - Oc, - Od, - Oe, - Of, - Og, - Oh, - Oi, - OA, - OB, - OC, - OD, - OE, - OF, - Os, - OED, - Ox, - gnd, - sqr, - sine, - opt, + OS, + Oa, + Ob, + Oc, + Od, + Oe, + Of, + Og, + Oh, + Oi, + OA, + OB, + OC, + OD, + OE, + OF, + Os, + OED, + Ox, + gnd, + sqr, + sine, + opt, - geq, - leq, - brkup, - brkdn, - perup, - perdn, + geq, + leq, + brkup, + brkdn, + perup, + perdn, - //GREEL - rone, // 1:: ⅰ - rtwo, - rthree, - rfour, // 4:: ⅳ - rfive, // 5:: ⅴ - rsix, // 6:: ⅵ - rseven, // 7:: ⅶ - reight, // 8:: ⅷ - rnine, // 9:: ⅸ - rten, // 0:: ⅹ - gq, // q:: θ - gw, // w:: ω - ge, // e:: ε - gr, // r:: ρ - gt, // t:: τ - gy, // y:: ψ - gu, // u:: υ - gi, // i:: ι - go, // o:: ο - gp, // p:: π - ga, // a:: α - gs, // s:: σ - gd, // d:: δ - gf, // f:: φ - gg, // g:: γ - gh, // h:: η - gj, // j:: ϑ - gk, // k:: κ - gl, // l:: λ - gz, // z:: ζ - gx, // x:: ξ - gc, // c:: χ - gv, // v:: ς - gb, // b:: β - gn, // n:: ν - gm, // m:: μ + // GREEL + rone, // 1:: ⅰ + rtwo, + rthree, + rfour, // 4:: ⅳ + rfive, // 5:: ⅴ + rsix, // 6:: ⅵ + rseven, // 7:: ⅶ + reight, // 8:: ⅷ + rnine, // 9:: ⅸ + rten, // 0:: ⅹ + gq, // q:: θ + gw, // w:: ω + ge, // e:: ε + gr, // r:: ρ + gt, // t:: τ + gy, // y:: ψ + gu, // u:: υ + gi, // i:: ι + go, // o:: ο + gp, // p:: π + ga, // a:: α + gs, // s:: σ + gd, // d:: δ + gf, // f:: φ + gg, // g:: γ + gh, // h:: η + gj, // j:: ϑ + gk, // k:: κ + gl, // l:: λ + gz, // z:: ζ + gx, // x:: ξ + gc, // c:: χ + gv, // v:: ς + gb, // b:: β + gn, // n:: ν + gm, // m:: μ - //GREEU - Rone, // 1:: Ⅰ - Rtwo, // 2:: Ⅱ - Rthree, // 3:: Ⅲ - Rfour, // 4:: Ⅳ - Rfive, // 5:: Ⅴ - Rsix, // 6:: Ⅵ - Rseven, // 7:: Ⅶ - Reight, // 8:: Ⅷ - Rnine, // 9:: Ⅸ - Rten, - Gq, // Q:: Θ - Gw, // W:: Ω - Ge, // E:: Ε - Gr, // R:: Ρ - Gt, // T:: Τ - Gy, // Y:: Ψ - Gu, // U:: Υ - Gi, // I:: Ι - Go, // O:: Ο - Gp, // P:: Π - Ga, // A:: Α - Gs, // S:: Σ - Gd, // D:: Δ - Gf, // F:: Φ - Gg, // G:: Γ - Gh, // H:: Η - Gj, // J:: J - Gk, // K:: Κ - Gl, // L:: Λ - Gz, // Z:: Ζ - Gx, // X:: Ξ - Gc, // C:: Χ - Gv, // V:: V - Gb, // B:: Β - Gn, // N:: Ν - Gm, // M:: Μ + // GREEU + Rone, // 1:: Ⅰ + Rtwo, // 2:: Ⅱ + Rthree, // 3:: Ⅲ + Rfour, // 4:: Ⅳ + Rfive, // 5:: Ⅴ + Rsix, // 6:: Ⅵ + Rseven, // 7:: Ⅶ + Reight, // 8:: Ⅷ + Rnine, // 9:: Ⅸ + Rten, + Gq, // Q:: Θ + Gw, // W:: Ω + Ge, // E:: Ε + Gr, // R:: Ρ + Gt, // T:: Τ + Gy, // Y:: Ψ + Gu, // U:: Υ + Gi, // I:: Ι + Go, // O:: Ο + Gp, // P:: Π + Ga, // A:: Α + Gs, // S:: Σ + Gd, // D:: Δ + Gf, // F:: Φ + Gg, // G:: Γ + Gh, // H:: Η + Gj, // J:: J + Gk, // K:: Κ + Gl, // L:: Λ + Gz, // Z:: Ζ + Gx, // X:: Ξ + Gc, // C:: Χ + Gv, // V:: V + Gb, // B:: Β + Gn, // N:: Ν + Gm, // M:: Μ + // ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ ⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ + tone, // 1:: ¹ + ttwo, // 2:: ² + tthree, // 3:: ³ + tfour, // 4:: ⁴ + tfive, // 5:: ⁵ + tsix, // 6:: ⁶ + tseven, // 7:: ⁷ + teight, // 8:: ⁸ + tnine, // 9:: ⁹ + tzero, // 0 :: ⁰ + tq, // Q:: ۹ + tw, // W:: ʷ + te, // E:: ᵉ + tr, // R:: ʳ + tt, // T:: ᵗ + ty, // Y:: ʸ + tu, // U:: ᵘ + ti, // I:: ⁱ + to, // O:: ᵒ + tp, // P:: ᵖ + ta, // A:: ᵃ + ts, // S:: ˢ + td, // D:: ᵈ + tf, // F:: ᶠ + tg, // G:: ᵍ + th, // H:: ʰ + tj, // J:: ʲ + tk, // K:: ᵏ + tl, // L:: ˡ + tz, // Z:: ᶻ + tx, // X:: ˣ + tc, // C:: ᶜ + tv, // V:: ᵛ + tb, // B:: ᵇ + tn, // N:: ⁿ + tm, // M:: ᵐ + // Fullwitdth - note, these are *not* the monospace unicode code points. + // This is done to prevent something eating it and using a weird font, which, + // presumably, isn't desired if doing this. + fwone, // 1:: 1 + fwtwo, // 2:: 2 + fwthree, // 3:: 3 + fwfour, // 4:: 4 + fwfive, // 5:: 5 + fwsix, // 6:: 6 + fwseven, // 7:: 7 + fweight, // 8:: 8 + fwnine, // 9:: 9 + fwzero, // 0 :: 0 + fwq, // Q:: q + fww, // W:: w + fwe, // E:: e + fwr, // R:: r + fwt, // T:: t + fwy, // Y:: y + fwu, // U:: u + fwi, // I:: i + fwo, // O:: o + fwp, // P:: p + fwa, // A:: a + fws, // S:: s + fwd, // D:: d + fwf, // F:: f + fwg, // G:: g + fwh, // H:: h + fwj, // J:: j + fwk, // K:: k + fwl, // L:: l + fwz, // Z:: z + fwx, // X:: x + fwc, // C:: c + fwv, // V:: v + fwb, // B:: b + fwn, // N:: n + fwm, // M:: m + // Full width caps + fractions, and a few extra symbols that lack a better place + Fwone, // 1:: ¼ + Fwtwo, // 2:: ½ + Fwthree, // 3:: ¾ + Fwfour, // 4:: ⅓ + Fwfive, // 5:: ⅔ + Fwsix, // 6:: ⅕ + Fwseven, // 7:: ⅛ + Fweight, // 8:: 𝒳 + Fwnine, // 9:: 𝒴 + Fwzero, // 0 :: 𝒵 + Fwq, // Q:: Q + Fww, // W:: W + Fwe, // E:: E + Fwr, // R:: R + Fwt, // T:: T + Fwy, // Y:: Y + Fwu, // U:: U + Fwi, // I:: I + Fwo, // O:: O + Fwp, // P:: P + Fwa, // A:: A + Fws, // S:: S + Fwd, // D:: D + Fwf, // F:: F + Fwg, // G:: G + Fwh, // H:: H + Fwj, // J:: J + Fwk, // K:: K + Fwl, // L:: L + Fwz, // Z:: Z + Fwx, // X:: X + Fwc, // C:: C + Fwv, // V:: V + Fwb, // B:: B + Fwn, // N:: N + Fwm, // M:: M + nbsp, // You know what this is   + ibang, //‽ + nullpic, // Null picture - ␀ }; const uint32_t PROGMEM unicode_map[] = { - //MATH - [neq] = 0x2260, //≠ - [intgrl] = 0x222B, //∫ - [angl] = 0x2220, //∠ - [imply] = 0x21D2, //⇒ - [equiv] = 0x21D4, //⇔ - [porp] = 0x221D, //∝ - [exists] = 0x2203, //∃ - [nexists] = 0x2204, //∄ - [forall] = 0x2200, //∀ - [and] = 0x2227, //∧ - [or] = 0x2228, //∨ - [xor] = 0x2295, //⊕ - [apeql] = 0x2245, //≅ - [root] = 0x221A, //√ - [not] = 0x00AC, //¬ - [sum] = 0x2211, //∑ - [plsminus] = 0x00B1, //± - [infin] = 0x221E, //∞ - [emtyset] = 0x2205, //∅ - [Mn] = 0x2115, //ℕ - [Mz] = 0x2124, //ℤ - [Mq] = 0x211A, //ℚ - [Mr] = 0x211D, //ℝ - [Mc] = 0x2102, //ℂ - [eleof] = 0x2208, //∈ - [member] = 0x220B, //∋ - [neleof] = 0x2209, //∉ - [nmember] = 0x220C, //∌ - [subsetof] = 0x2282, //⊂ - [suprsetof] = 0x2283, // - [intersection] = 0x2229, //∩ - [Munion] = 0x222A, //∪ - //Symbol - [arwl] = 0x2190, //← - [arwu] = 0x2191, //↑ - [arwr] = 0x2192, //→ - [arwd] = 0x2193, //↓ + // MATH + [neq] = 0x2260, //≠ + [intgrl] = 0x222B, //∫ + [angl] = 0x2220, //∠ + [imply] = 0x21D2, //⇒ + [equiv] = 0x21D4, //⇔ + [porp] = 0x221D, //∝ + [exists] = 0x2203, //∃ + [nexists] = 0x2204, //∄ + [forall] = 0x2200, //∀ + [and] = 0x2227, //∧ + [or] = 0x2228, //∨ + [xor] = 0x2295, //⊕ + [apeql] = 0x2245, //≅ + [root] = 0x221A, //√ + [not ] = 0x00AC, //¬ + [sum] = 0x2211, //∑ + [plsminus] = 0x00B1, //± + [infin] = 0x221E, //∞ + [emtyset] = 0x2205, //∅ + [Mn] = 0x2115, //ℕ + [Mz] = 0x2124, //ℤ + [Mq] = 0x211A, //ℚ + [Mr] = 0x211D, //ℝ + [Mc] = 0x2102, //ℂ + [eleof] = 0x2208, //∈ + [member] = 0x220B, //∋ + [neleof] = 0x2209, //∉ + [nmember] = 0x220C, //∌ + [subsetof] = 0x2282, //⊂ + [suprsetof] = 0x2283, // + [intersection] = 0x2229, //∩ + [Munion] = 0x222A, //∪ + // Symbol + [arwl] = 0x2190, //← + [arwu] = 0x2191, //↑ + [arwr] = 0x2192, //→ + [arwd] = 0x2193, //↓ - [uxclm] = 0x00A1, //¡ - [cent] = 0x00A2, //¢ - [degree] = 0x00B0, //° - [trade] = 0x2122, //™ - [copy] = 0x00A9, //© - [numero] = 0x2116, //№ - [sect] = 0x00A7, //§ - [mdot] = 0x00B7, //· - [rang] = 0x299C, //⦜ + [uxclm] = 0x00A1, //¡ + [cent] = 0x00A2, //¢ + [degree] = 0x00B0, //° + [trade] = 0x2122, //™ + [copy] = 0x00A9, //© + [numero] = 0x2116, //№ + [sect] = 0x00A7, //§ + [mdot] = 0x00B7, //· + [rang] = 0x299C, //⦜ + [lshade] = 0x2591, //░ + [mshade] = 0x2592, //▒ + [dshade] = 0x2593, //▓ - [lshade] = 0x2591,//░ - [mshade] = 0x2592,//▒ - [dshade] = 0x2593,//▓ + [fire] = 0x1F525, //🔥 + [water] = 0x1F322, //🌢 + [cleft] = 0x1F12F, //🄯 + [baster] = 0x1F7BC, //🞼 + [neteen] = 0x1F51E, //🔞 + [floppy] = 0x1F5AB, //🖫 - [fire] = 0x1F525, //🔥 - [water] = 0x1F322, //🌢 - [cleft] = 0x1F12F, //🄯 - [baster] = 0x1F7BC, //🞼 - [neteen] = 0x1F51E, //🔞 - [floppy] = 0x1F5AB, //🖫 + [boxemp] = 0x2610, //☐ + [boxchk] = 0x2611, //☑ + [boxX] = 0x2612, //☒ - [boxemp] = 0x2610, //☐ - [boxchk] = 0x2611, //☑ - [boxX] = 0x2612, //☒ + [bbstr] = 0x23A1, //⎡ + [bbstl] = 0x23A4, //⎤ + [bbml] = 0x23A8, //⎨ + [bbmr] = 0x23AC, //⎬ + [bbmb] = 0x23AA, //⎪ + [bbrtr] = 0x23A7, //⎧ + [bbrbr] = 0x23A9, //⎩ + [bbrtl] = 0x23AB, //⎫ + [bbrbl] = 0x23AD, //⎭ + [bbsbr] = 0x23A3, //⎣ + [bbsbl] = 0x23A6, //⎦ + [bbmbr] = 0x23A5, //⎥ + [bbmbl] = 0x23A2, //⎢ - [bbstr] = 0x23A1, //⎡ - [bbstl] = 0x23A4, //⎤ - [bbml] = 0x23A8, //⎨ - [bbmr] = 0x23AC, //⎬ - [bbmb] = 0x23AA, //⎪ - [bbrtr] = 0x23A7, //⎧ - [bbrbr] = 0x23A9, //⎩ - [bbrtl] = 0x23AB, //⎫ - [bbrbl] = 0x23AD, //⎭ - [bbsbr] = 0x23A3, //⎣ - [bbsbl] = 0x23A6, //⎦ - [bbmbr] = 0x23A5, //⎥ - [bbmbl] = 0x23A2, //⎢ + [Agrave] = 0x0300, // è //above [wtf] = 0x1242A, //𒐪 + [Aacute] = 0x0301, // é //1st + [Acircm] = 0x0302, // ê //2nd + [Atilde] = 0x0303, // ẽ //5th + [Abreve] = 0x0306, // ĕ //4th + [Adiaer] = 0x0308, // ë //3rd + [Adacut] = 0x030B, // e̋ - [Agrave] = 0x0300,//è //above [wtf] = 0x1242A, //𒐪 - [Aacute] = 0x0301,//é //1st - [Acircm] = 0x0302,//ê //2nd - [Atilde] = 0x0303,//ẽ //5th - [Abreve] = 0x0306,//ĕ //4th - [Adiaer] = 0x0308,//ë //3rd - [Adacut] = 0x030B,//e̋ + // not all ogham letters, as I + // actually intend to use them for hex + [OS] = 0x1680, // space + [Oa] = 0x1681, // 1 + [Ob] = 0x1682, // 2 + [Oc] = 0x1683, // 3 + [Od] = 0x1684, // 4 + [Oe] = 0x1685, // 5 + [Of] = 0x1686, // 6 + [Og] = 0x1687, // 7 + [Oh] = 0x1688, // 8 + [Oi] = 0x1689, // 9 + [OA] = 0x168A, // A + [OB] = 0x168B, // B + [OC] = 0x168C, // C + [OD] = 0x168D, // D + [OE] = 0x168E, // E + [OF] = 0x168F, // F + [Os] = 0x169B, // Start + [OED] = 0x169C, // End + [Ox] = 0x1695, // X - // not all ogham letters, as I - // actually intend to use them for hex - [OS] = 0x1680,//space - [Oa] = 0x1681,//1 - [Ob] = 0x1682,//2 - [Oc] = 0x1683,//3 - [Od] = 0x1684,//4 - [Oe] = 0x1685,//5 - [Of] = 0x1686,//6 - [Og] = 0x1687,//7 - [Oh] = 0x1688,//8 - [Oi] = 0x1689,//9 - [OA] = 0x168A,//A - [OB] = 0x168B,//B - [OC] = 0x168C,//C - [OD] = 0x168D,//D - [OE] = 0x168E,//E - [OF] = 0x168F,//F - [Os] = 0x169B,//Start - [OED] = 0x169C,//End - [Ox] = 0x1695,//X + [gnd] = 0x23DA, //⏚ + [sqr] = 0x238D, //⎍, actually monostable + [sine] = 0x223F, //∿ + [opt] = 0x2325, //⌥, actually option used for switch - [gnd] = 0x23DA,//⏚ - [sqr] = 0x238D,//⎍, actually monostable - [sine] = 0x223F,//∿ - [opt] = 0x2325,//⌥, actually option used for switch + [geq] = 0x2264, //≤ + [leq] = 0x2265, //≥ + [brkup] = 0xFE38, //︸ + [brkdn] = 0xFE37, //︷ + [perup] = 0xFE35, //︵ + [perdn] = 0xFE36, //︶ + // GREEKL + [rone] = 0x2170, // 1:: ⅰ + [rtwo] = 0x2171, // 2:: ⅱ + [rthree] = 0x2172, // 3:: ⅲ + [rfour] = 0x2173, // 4:: ⅳ + [rfive] = 0x2174, // 5:: ⅴ + [rsix] = 0x2175, // 6:: ⅵ + [rseven] = 0x2176, // 7:: ⅶ + [reight] = 0x2177, // 8:: ⅷ + [rnine] = 0x2178, // 9:: ⅸ + [rten] = 0x2179, // 0:: ⅹ + [gq] = 0x03B8, // q:: θ + [gw] = 0x03C9, // w:: ω + [ge] = 0x03B5, // e:: ε + [gr] = 0x03C1, // r:: ρ + [gt] = 0x03C4, // t:: τ + [gy] = 0x03C8, // y:: ψ + [gu] = 0x03C5, // u:: υ + [gi] = 0x03B9, // i:: ι + [go] = 0x03BF, // o:: ο + [gp] = 0x03C0, // p:: π + [ga] = 0x03B1, // a:: α + [gs] = 0x03C3, // s:: σ + [gd] = 0x03B4, // d:: δ + [gf] = 0x03C6, // f:: φ + [gg] = 0x03B3, // g:: γ + [gh] = 0x03B7, // h:: η + [gj] = 0x03D1, // j:: ϑ + [gk] = 0x03BA, // k:: κ + [gl] = 0x03BB, // l:: λ + [gz] = 0x03B6, // z:: ζ + [gx] = 0x03BE, // x:: ξ + [gc] = 0x03C7, // c:: χ + [gv] = 0x03C2, // v:: ς + [gb] = 0x03B2, // b:: β + [gn] = 0x03BD, // n:: ν + [gm] = 0x03BC, // m:: μ + // GREEKU + [Rone] = 0x2160, // 1:: Ⅰ + [Rtwo] = 0x2161, // 2:: Ⅱ + [Rthree] = 0x2162, // 3:: Ⅲ + [Rfour] = 0x2163, // 4:: Ⅳ + [Rfive] = 0x2164, // 5:: Ⅴ + [Rsix] = 0x2165, // 6:: Ⅵ + [Rseven] = 0x2166, // 7:: Ⅶ + [Reight] = 0x2167, // 8:: Ⅷ + [Rnine] = 0x2168, // 9:: Ⅸ + [Rten] = 0x2169, // 0:: Ⅹ + [Gq] = 0x0398, // Q:: Θ + [Gw] = 0x03A9, // W:: Ω + [Ge] = 0x0395, // E:: Ε + [Gr] = 0x03A1, // R:: Ρ + [Gt] = 0x03A4, // T:: Τ + [Gy] = 0x03A8, // Y:: Ψ + [Gu] = 0x03A5, // U:: Υ + [Gi] = 0x0399, // I:: Ι + [Go] = 0x039F, // O:: Ο + [Gp] = 0x03A0, // P:: Π + [Ga] = 0x0391, // A:: Α + [Gs] = 0x03A3, // S:: Σ + [Gd] = 0x0394, // D:: Δ + [Gf] = 0x03A6, // F:: Φ + [Gg] = 0x0393, // G:: Γ + [Gh] = 0x0397, // H:: Η + [Gj] = 0x004A, // J:: J + [Gk] = 0x039A, // K:: Κ + [Gl] = 0x039B, // L:: Λ + [Gz] = 0x0396, // Z:: Ζ + [Gx] = 0x039E, // X:: Ξ + [Gc] = 0x03A7, // C:: Χ + [Gv] = 0x0056, // V:: V + [Gb] = 0x0392, // B:: Β + [Gn] = 0x039D, // N:: Ν + [Gm] = 0x039C, // M:: Μ - [geq] = 0x2264, //≤ - [leq] = 0x2265, //≥ - [brkup] = 0xFE38, //︸ - [brkdn] = 0xFE37, //︷ - [perup] = 0xFE35, //︵ - [perdn] = 0xFE36, //︶ - //GREEKL - [rone] = 0x2170, // 1:: ⅰ - [rtwo] = 0x2171, // 2:: ⅱ - [rthree] = 0x2172, // 3:: ⅲ - [rfour] = 0x2173, // 4:: ⅳ - [rfive] = 0x2174, // 5:: ⅴ - [rsix] = 0x2175, // 6:: ⅵ - [rseven] = 0x2176, // 7:: ⅶ - [reight] = 0x2177, // 8:: ⅷ - [rnine] = 0x2178, // 9:: ⅸ - [rten] = 0x2179, // 0:: ⅹ - [gq] = 0x03B8, // q:: θ - [gw] = 0x03C9, // w:: ω - [ge] = 0x03B5, // e:: ε - [gr] = 0x03C1, // r:: ρ - [gt] = 0x03C4, // t:: τ - [gy] = 0x03C8, // y:: ψ - [gu] = 0x03C5, // u:: υ - [gi] = 0x03B9, // i:: ι - [go] = 0x03BF, // o:: ο - [gp] = 0x03C0, // p:: π - [ga] = 0x03B1, // a:: α - [gs] = 0x03C3, // s:: σ - [gd] = 0x03B4, // d:: δ - [gf] = 0x03C6, // f:: φ - [gg] = 0x03B3, // g:: γ - [gh] = 0x03B7, // h:: η - [gj] = 0x03D1, // j:: ϑ - [gk] = 0x03BA, // k:: κ - [gl] = 0x03BB, // l:: λ - [gz] = 0x03B6, // z:: ζ - [gx] = 0x03BE, // x:: ξ - [gc] = 0x03C7, // c:: χ - [gv] = 0x03C2, // v:: ς - [gb] = 0x03B2, // b:: β - [gn] = 0x03BD, // n:: ν - [gm] = 0x03BC, // m:: μ - //GREEKU - [Rone] = 0x2160, // 1:: Ⅰ - [Rtwo] = 0x2161, // 2:: Ⅱ - [Rthree] = 0x2162, // 3:: Ⅲ - [Rfour] = 0x2163, // 4:: Ⅳ - [Rfive] = 0x2164, // 5:: Ⅴ - [Rsix] = 0x2165, // 6:: Ⅵ - [Rseven] = 0x2166, // 7:: Ⅶ - [Reight] = 0x2167, // 8:: Ⅷ - [Rnine] = 0x2168, // 9:: Ⅸ - [Rten] = 0x2169, // 0:: Ⅹ - [Gq] = 0x0398, // Q:: Θ - [Gw] = 0x03A9, // W:: Ω - [Ge] = 0x0395, // E:: Ε - [Gr] = 0x03A1, // R:: Ρ - [Gt] = 0x03A4, // T:: Τ - [Gy] = 0x03A8, // Y:: Ψ - [Gu] = 0x03A5, // U:: Υ - [Gi] = 0x0399, // I:: Ι - [Go] = 0x039F, // O:: Ο - [Gp] = 0x03A0, // P:: Π - [Ga] = 0x0391, // A:: Α - [Gs] = 0x03A3, // S:: Σ - [Gd] = 0x0394, // D:: Δ - [Gf] = 0x03A6, // F:: Φ - [Gg] = 0x0393, // G:: Γ - [Gh] = 0x0397, // H:: Η - [Gj] = 0x004A, // J:: J - [Gk] = 0x039A, // K:: Κ - [Gl] = 0x039B, // L:: Λ - [Gz] = 0x0396, // Z:: Ζ - [Gx] = 0x039E, // X:: Ξ - [Gc] = 0x03A7, // C:: Χ - [Gv] = 0x0056, // V:: V - [Gb] = 0x0392, // B:: Β - [Gn] = 0x039D, // N:: Ν - [Gm] = 0x039C, // M:: Μ + [tone] = 0x00B9, // 1:: ¹ + [ttwo] = 0x00B2, // 2:: ² + [tthree] = 0x00B3, // 3:: ³ + [tfour] = 0x2074, // 4:: ⁴ + [tfive] = 0x2075, // 5:: ⁵ + [tsix] = 0x2076, // 6:: ⁶ + [tseven] = 0x2077, // 7:: ⁷ + [teight] = 0x2078, // 8:: ⁸ + [tnine] = 0x2079, // 9:: ⁹ + [tzero] = 0x2070, // 0 :: ⁰ + [tq] = 0x06F9, // Q:: ۹ - superscript q doesn't exist. + [tw] = 0x02B7, // W:: ʷ + [te] = 0x1D49, // E:: ᵉ + [tr] = 0x02B3, // R:: ʳ + [tt] = 0x1D57, // T:: ᵗ + [ty] = 0x02B8, // Y:: ʸ + [tu] = 0x1D58, // U:: ᵘ + [ti] = 0x2071, // I:: ⁱ + [to] = 0x1D52, // O:: ᵒ + [tp] = 0x1D56, // P:: ᵖ + [ta] = 0x1D43, // A:: ᵃ + [ts] = 0x02E2, // S:: ˢ + [td] = 0x1D48, // D:: ᵈ + [tf] = 0x1DA0, // F:: ᶠ + [tg] = 0x1D4D, // G:: ᵍ + [th] = 0x02B0, // H:: ʰ + [tj] = 0x02B2, // J:: ʲ + [tk] = 0x1D4F, // K:: ᵏ + [tl] = 0x02E1, // L:: ˡ + [tz] = 0x1DBB, // Z:: ᶻ + [tx] = 0x02E3, // X:: ˣ + [tc] = 0x1D9C, // C:: ᶜ + [tv] = 0x1D5B, // V:: ᵛ + [tb] = 0x1D47, // B:: ᵇ + [tn] = 0x207F, // N:: ⁿ + [tm] = 0x1D50, // M:: ᵐ + + [fwone] = 0xFF11, // 1:: 1 + [fwtwo] = 0xFF12, // 2:: 2 + [fwthree] = 0xFF13, // 3:: 3 + [fwfour] = 0xFF14, // 4:: 4 + [fwfive] = 0xFF15, // 5:: 5 + [fwsix] = 0xFF16, // 6:: 6 + [fwseven] = 0xFF17, // 7:: 7 + [fweight] = 0xFF18, // 8:: 8 + [fwnine] = 0xFF19, // 9:: 9 + [fwzero] = 0xFF10, // 0 :: 0 + [fwq] = 0xFF51, // Q:: q + [fww] = 0xFF57, // W:: w + [fwe] = 0xFF45, // E:: e + [fwr] = 0xFF52, // R:: r + [fwt] = 0xFF54, // T:: t + [fwy] = 0xFF59, // Y:: y + [fwu] = 0xFF55, // U:: u + [fwi] = 0xFF49, // I:: i + [fwo] = 0xFF4F, // O:: o + [fwp] = 0xFF50, // P:: p + [fwa] = 0xFF41, // A:: a + [fws] = 0xFF53, // S:: s + [fwd] = 0xFF44, // D:: d + [fwf] = 0xFF46, // F:: f + [fwg] = 0xFF47, // G:: g + [fwh] = 0xFF48, // H:: h + [fwj] = 0xFF4A, // J:: j + [fwk] = 0xFF4B, // K:: k + [fwl] = 0xFF4C, // L:: l + [fwz] = 0xFF5A, // Z:: z + [fwx] = 0xFF58, // X:: x + [fwc] = 0xFF43, // C:: c + [fwv] = 0xFF56, // V:: v + [fwb] = 0xFF42, // B:: b + [fwn] = 0xFF4E, // N:: n + [fwm] = 0xFF4D, // M:: m + // Full width caps + fractions, and a few extra symbols that lack a better place + [Fwone] = 0x00BC, // 1:: ¼ + [Fwtwo] = 0x00BD, // 2:: ½ + [Fwthree] = 0x00BE, // 3:: ¾ + [Fwfour] = 0x2153, // 4:: ⅓ + [Fwfive] = 0x2154, // 5:: ⅔ + [Fwsix] = 0x2155, // 6:: ⅕ + [Fwseven] = 0x215B, // 7:: ⅛ + [Fweight] = 0x00A0, // 8::   + [Fwnine] = 0x203D, // 9:: ibang ‽ + [Fwzero] = 0x2400, // 0 :: nullpic ␀ + [Fwq] = 0xFF31, // Q:: Q + [Fww] = 0xFF37, // W:: W + [Fwe] = 0xFF25, // E:: E + [Fwr] = 0xFF32, // R:: R + [Fwt] = 0xFF34, // T:: T + [Fwy] = 0xFF39, // Y:: Y + [Fwu] = 0xFF35, // U:: U + [Fwi] = 0xFF29, // I:: I + [Fwo] = 0xFF2F, // O:: O + [Fwp] = 0xFF30, // P:: P + [Fwa] = 0xFF21, // A:: A + [Fws] = 0xFF33, // S:: S + [Fwd] = 0xFF24, // D:: D + [Fwf] = 0xFF26, // F:: F + [Fwg] = 0xFF27, // G:: G + [Fwh] = 0xFF28, // H:: H + [Fwj] = 0xFF2A, // J:: J + [Fwk] = 0xFF2B, // K:: K + [Fwl] = 0xFF2C, // L:: L + [Fwz] = 0xFF3A, // Z:: Z + [Fwx] = 0xFF38, // X:: X + [Fwc] = 0xFF23, // C:: C + [Fwv] = 0xFF36, // V:: V + [Fwb] = 0xFF22, // B:: B + [Fwn] = 0xFF2E, // N:: N + [Fwm] = 0xFF2D, // M:: M }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // clang-format off + [BASE] = LAYOUT_ergodox( // layer 0 : default KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_GRV, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_BSLS, @@ -428,8 +651,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand UC_M_LN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, UC_M_WC,KC_F11, KC_F12, KC_F13,KC_F14, KC_F15, KC_NO, - KC_NO,KC_F21, KC_F22, KC_F23,KC_F24, KC_NO, - KC_NO,KC_PAUSE,KC_PSCR,KC_SLCK,KC_NO,KC_NO,KC_NO, + TO(TINY),KC_F21, KC_F22, KC_F23,KC_F24, MAGIC_TOGGLE_NKRO, + TO(FULL),KC_PAUSE,KC_PSCR,KC_SLCK,KC_NO,KC_NO,KC_NO, EEP_RST,TO(BASE),TO(BASE),TO(BASE),TO(BASE), KC_NO,KC_NO, KC_NO, @@ -525,10 +748,60 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_END, KC_RBRC, KC_LEFT, KC_RGHT, KC_ENT, KC_SPC ), +[TINY] = LAYOUT_ergodox( + KC_ESC, X(tone), X(ttwo), X(tthree), X(tfour), X(tfive), KC_GRV, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, X(tp), X(ty), KC_SLSH, + KC_SLSH, X(ta), X(to), X(te), X(tu), X(ti), + KC_TRNS, KC_SCLN, X(tq), X(tj), X(tk), X(tx), KC_AMPR, + KC_MS_L, TO(BASE), TO(BASE), KC_INS, KC_DEL, + KC_LBRC, KC_HOME, KC_UP, KC_SPC, KC_LGUI, KC_DOWN, + + TO(BASE), X(tsix), X(tseven), X(teight), X(tnine), X(tzero), KC_BSPC, + KC_PGUP, X(tf), X(tg), X(tc), X(tr), X(tl), KC_EQL, + X(td), X(th), X(tt), X(tn), X(ts), KC_MINS, + KC_PGDN, X(tb), X(tm), X(tw), X(tv), X(tz), KC_TRNS, + KC_RCTL, KC_RALT, KC_APP, TO(BASE), TO(BASE), + KC_END, KC_RBRC, KC_LEFT, KC_RGHT, KC_ENT, KC_SPC +), + +[FULL] = LAYOUT_ergodox( + KC_ESC, X(fwone), X(fwtwo), X(fwthree), X(fwfour), X(fwfive), KC_GRV, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, X(fwp), X(fwy), KC_SLSH, + KC_SLSH, X(fwa), X(fwo), X(fwe), X(fwu), X(fwi), + MO(FULU), KC_SCLN, X(fwq), X(fwj), X(fwk), X(fwx), KC_AMPR, + KC_MS_L, TO(BASE), TO(BASE), KC_INS, KC_DEL, + KC_LBRC, KC_HOME, KC_UP, KC_SPC, KC_LGUI, KC_DOWN, + + TO(BASE), X(fwsix), X(fwseven), X(fweight), X(fwnine), X(fwzero), KC_BSPC, + KC_PGUP, X(fwf), X(fwg), X(fwc), X(fwr), X(fwl), KC_EQL, + X(fwd), X(fwh), X(fwt), X(fwn), X(fws), KC_MINS, + KC_PGDN, X(fwb), X(fwm), X(fww), X(fwv), X(fwz), MO(FULU), + KC_RCTL, KC_RALT, KC_APP, TO(BASE), TO(BASE), + KC_END, KC_RBRC, KC_LEFT, KC_RGHT, KC_ENT, KC_SPC +), + +[FULU] = LAYOUT_ergodox( + KC_ESC, X(Fwone), X(Fwtwo), X(Fwthree), X(Fwfour), X(Fwfive), KC_GRV, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, X(Fwp), X(Fwy), KC_SLSH, + KC_SLSH, X(Fwa), X(Fwo), X(Fwe), X(Fwu), X(Fwi), + KC_TRNS, KC_SCLN, X(Fwq), X(Fwj), X(Fwk), X(Fwx), KC_AMPR, + KC_MS_L, TO(BASE), TO(BASE), KC_INS, KC_DEL, + KC_LBRC, KC_HOME, KC_UP, KC_SPC, KC_LGUI, KC_DOWN, + + TO(BASE), X(Fwsix), X(Fwseven), X(Fweight), X(Fwnine), X(Fwzero), KC_BSPC, + KC_PGUP, X(Fwf), X(Fwg), X(Fwc), X(Fwr), X(Fwl), KC_EQL, + X(Fwd), X(Fwh), X(Fwt), X(Fwn), X(Fws), KC_MINS, + KC_PGDN, X(Fwb), X(Fwm), X(Fww), X(Fwv), X(Fwz), KC_TRNS, + KC_RCTL, KC_RALT, KC_APP, TO(BASE), TO(BASE), + KC_END, KC_RBRC, KC_LEFT, KC_RGHT, KC_ENT, KC_SPC +), + + // clang-format on + }; // Runs just one time when the keyboard initializes. -void matrix_init_user(void) { +void matrix_init_user(void){ }; @@ -541,7 +814,7 @@ void matrix_scan_user(void) { ergodox_right_led_2_off(); ergodox_right_led_3_off(); switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. + // TODO: Make this relevant to the ErgoDox EZ. case 1: ergodox_right_led_1_on(); break;