1// Hellenic keyboard map for X.org 2// 3// Original version: 4// Kostas Gewrgiou <gewrgiou@imbc.gr> 5// Heavily modified and maintained by: 6// Vasilis Vasaitis <vvas@hal.csd.auth.gr> 7// Originally converted to single group form by: 8// Ivan Pascal <pascal@info.tsu.ru> 9 10default partial alphanumeric_keys alternate_group 11xkb_symbols "basic" { 12 include "gr(simple)" 13 14 name[Group1] = "Greek"; 15 16 include "eurosign(e)" 17 include "eurosign(5)" 18 include "kpdl(comma)" 19 include "level3(ralt_switch)" 20 21 key <AB01> { [ NoSymbol, NoSymbol, U037D, U03FF ] }; 22 key <AB02> { [ NoSymbol, NoSymbol, rightarrow, leftarrow ] }; 23 key <AB03> { [ NoSymbol, NoSymbol, copyright ] }; 24 key <AB04> { [ NoSymbol, NoSymbol, U03D6 ] }; 25 key <AB05> { [ NoSymbol, NoSymbol, U03D0 ] }; 26 key <AB06> { [ NoSymbol, NoSymbol, U0374, U0375 ] }; 27 key <AB07> { [ NoSymbol, NoSymbol, U03FB, U03FA ] }; 28 key <AB08> { [ NoSymbol, NoSymbol, guillemotleft ] }; 29 key <AB09> { [ NoSymbol, NoSymbol, guillemotright, periodcentered ] }; 30 key <AC03> { [ NoSymbol, NoSymbol, downarrow, uparrow ] }; 31 key <AC04> { [ NoSymbol, NoSymbol, U03D5 ] }; 32 key <AC05> { [ NoSymbol, NoSymbol, U03DD, U03DC ] }; 33 key <AC07> { [ NoSymbol, NoSymbol, U037C, U03FE ] }; 34 key <AC08> { [ NoSymbol, NoSymbol, U03DF, U03DE ] }; 35 key <AC09> { [ NoSymbol, NoSymbol, U03F2, U03F9 ] }; 36 key <AC10> { [ NoSymbol, NoSymbol, dead_acute, dead_psili ] }; 37 key <AC11> { [ NoSymbol, NoSymbol, dead_grave, dead_dasia ] }; 38 key <AD01> { [ NoSymbol, NoSymbol, periodcentered ] }; 39 key <AD02> { [ NoSymbol, NoSymbol, U03DB, U03DA ] }; 40 key <AD04> { [ NoSymbol, NoSymbol, registered, U03F1 ] }; 41 key <AD06> { [ NoSymbol, NoSymbol, U03D2, U03D2 ] }; 42 key <AD07> { [ NoSymbol, NoSymbol, U03D1, U03F4 ] }; 43 key <AD08> { [ NoSymbol, NoSymbol, U037B, U03FD ] }; 44 key <AD10> { [ NoSymbol, NoSymbol, U03E1, U03E0 ] }; 45 key <AD11> { [ NoSymbol, NoSymbol, dead_tilde, dead_macron ] }; 46 key <AD12> { [ NoSymbol, NoSymbol, dead_iota, dead_breve ] }; 47 key <AE01> { [ NoSymbol, NoSymbol, NoSymbol, onesuperior ] }; 48 key <AE02> { [ NoSymbol, NoSymbol, onehalf, twosuperior ] }; 49 key <AE03> { [ NoSymbol, NoSymbol, sterling, threesuperior ] }; 50 key <AE04> { [ NoSymbol, NoSymbol, onequarter, threequarters ] }; 51 key <AE06> { [ NoSymbol, NoSymbol, U03F0 ] }; 52 key <AE07> { [ NoSymbol, NoSymbol, U03D7, U03CF ] }; 53 key <AE08> { [ NoSymbol, NoSymbol, U20AF ] }; 54 key <AE10> { [ NoSymbol, NoSymbol, degree ] }; 55 key <AE11> { [ NoSymbol, NoSymbol, plusminus ] }; 56}; 57 58partial alphanumeric_keys alternate_group 59xkb_symbols "simple" { 60 61 include "gr(bare)" 62 63 name[Group1] = "Greek (simple)"; 64 65 key <TLDE> { [ grave, asciitilde ] }; // ` ~ 66 key <AE01> { [ 1, exclam ] }; // 1 ! 67 key <AE02> { [ 2, at ] }; // 2 @ 68 key <AE03> { [ 3, numbersign ] }; // 3 # 69 key <AE04> { [ 4, dollar ] }; // 4 $ 70 key <AE05> { [ 5, percent ] }; // 5 % 71 key <AE06> { [ 6, asciicircum ] }; // 6 ^ 72 key <AE07> { [ 7, ampersand ] }; // 7 & 73 key <AE08> { [ 8, asterisk ] }; // 8 * 74 key <AE09> { [ 9, parenleft ] }; // 9 ( 75 key <AE10> { [ 0, parenright ] }; // 0 ) 76 key <AE11> { [ minus, underscore ] }; // - _ 77 key <AE12> { [ equal, plus ] }; // = + 78 79 key <AD11> { [ bracketleft, braceleft ] }; // [ { 80 key <AD12> { [ bracketright, braceright ] }; // ] } 81 82 key <AC11> { [ apostrophe, quotedbl ] }; // ' " 83 84 key <AB08> { [ comma, less ] }; // , < 85 key <AB09> { [ period, greater ] }; // . > 86 key <AB10> { [ slash, question ] }; // / ? 87 key <BKSL> { [ backslash, bar ] }; // \ | 88 89 include "kpdl(comma)" 90}; 91 92hidden partial alphanumeric_keys alternate_group 93xkb_symbols "bare" { 94 95 key <AD01> { [ semicolon, colon ] }; // ; : 96 key <AD02> { [ Greek_finalsmallsigma, Greek_SIGMA ] }; // ς Σ 97 key <AD03> { [ Greek_epsilon, Greek_EPSILON ] }; // ε Ε 98 key <AD04> { [ Greek_rho, Greek_RHO ] }; // ρ Ρ 99 key <AD05> { [ Greek_tau, Greek_TAU ] }; // τ Τ 100 key <AD06> { [ Greek_upsilon, Greek_UPSILON ] }; // υ Υ 101 key <AD07> { [ Greek_theta, Greek_THETA ] }; // θ Θ 102 key <AD08> { [ Greek_iota, Greek_IOTA ] }; // ι Ι 103 key <AD09> { [ Greek_omicron, Greek_OMICRON ] }; // ο Ο 104 key <AD10> { [ Greek_pi, Greek_PI ] }; // π Π 105 106 key <AC01> { [ Greek_alpha, Greek_ALPHA ] }; // α Α 107 key <AC02> { [ Greek_sigma, Greek_SIGMA ] }; // σ Σ 108 key <AC03> { [ Greek_delta, Greek_DELTA ] }; // δ Δ 109 key <AC04> { [ Greek_phi, Greek_PHI ] }; // φ Φ 110 key <AC05> { [ Greek_gamma, Greek_GAMMA ] }; // γ Γ 111 key <AC06> { [ Greek_eta, Greek_ETA ] }; // η Η 112 key <AC07> { [ Greek_xi, Greek_XI ] }; // ξ Ξ 113 key <AC08> { [ Greek_kappa, Greek_KAPPA ] }; // κ Κ 114 key <AC09> { [ Greek_lamda, Greek_LAMDA ] }; // λ Λ 115 key <AC10> { [ dead_acute, dead_diaeresis ] }; // ´ ¨ 116 117 key <AB01> { [ Greek_zeta, Greek_ZETA ] }; // ζ Ζ 118 key <AB02> { [ Greek_chi, Greek_CHI ] }; // χ Χ 119 key <AB03> { [ Greek_psi, Greek_PSI ] }; // ψ Ψ 120 key <AB04> { [ Greek_omega, Greek_OMEGA ] }; // ω Ω 121 key <AB05> { [ Greek_beta, Greek_BETA ] }; // β Β 122 key <AB06> { [ Greek_nu, Greek_NU ] }; // ν Ν 123 key <AB07> { [ Greek_mu, Greek_MU ] }; // μ Μ 124 125 key <LSGT> { [ guillemotleft, guillemotright ] }; // « » 126}; 127 128// =========================================================================================== 129// Greek - Extended | 130// =========================================================================================== 131// 132// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━━━┓ 133// │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + ┃Backspace ┃ 134// │ ` │ 1 │ 2 │ 3 £ │ 4 │ 5 € │ 6 │ 7 │ 8 │ 9 │ 0 ° │ - ± │ = ┃ ┃ 135// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━━━┫ 136// ┃ ┃ : │ Σ │ Ε │ Ρ │ Τ │ Υ │ Θ │ Ι │ Ο │ Π │ { │ } ┃Enter ┃ 137// ┃Tab ┃ ; · │ ς │ ε € │ ρ ® │ τ │ υ │ θ │ ι │ ο │ π │ [ │ ] ┃ ┃ 138// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 139// ┃Caps ┃ Α │ Σ │ Δ │ Φ │ Γ │ Η │ Ξ │ Κ │ Λ │ ¨ │ " │ | ┃ ┃ 140// ┃Lock ┃ α │ σ │ δ │ φ │ γ │ η │ ξ │ κ │ λ │ ´ │ ' │ \ ┃ ┃ 141// ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━━━┫ 142// ┃ ┃ » │ Ζ │ Χ │ Ψ │ Ω │ Β │ Ν │ Μ │ < │ > │ ? ┃ ┃ 143// ┃Shift ┃ « │ ζ │ χ │ ψ © │ ω │ β │ ν │ μ │ , « │ . » │ / ┃Shift ┃ 144// ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴──┲━━┷━━━━┳┷━━━━━┻┳━━━━━━━┳━━━━━━┫ 145// ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ 146// ┃Ctrl ┃Meta ┃Alt ┃ Space ┃AltGr ┃Meta ┃Menu ┃Ctrl ┃ 147// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹──────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┻━━━━━━┛ 148 149partial alphanumeric_keys alternate_group 150xkb_symbols "extended" { 151 152 include "gr(simple)" 153 154 name[Group1] = "Greek (extended)"; 155 156 key.type[Group1] = "THREE_LEVEL"; 157 158 key <AE03> { [ NoSymbol, NoSymbol, sterling ] }; // £ 159 key <AE10> { [ NoSymbol, NoSymbol, degree ] }; // ° 160 key <AE11> { [ NoSymbol, NoSymbol, plusminus ] }; // ± 161 162 key <AD01> { [ NoSymbol, NoSymbol, periodcentered ] }; // · 163 key <AD04> { [ NoSymbol, NoSymbol, registered ] }; // ® 164 165 key <AB03> { [ NoSymbol, NoSymbol, copyright ] }; // © 166 key <AB08> { [ NoSymbol, NoSymbol, guillemotleft ] }; // « 167 key <AB09> { [ NoSymbol, NoSymbol, guillemotright ] }; // » 168 169 include "level3(ralt_switch)" 170 include "eurosign(5)" 171 include "eurosign(e)" 172}; 173 174partial alphanumeric_keys alternate_group 175xkb_symbols "polytonic" { 176 177 include "gr(extended)" 178 179 name[Group1] = "Greek (polytonic)"; 180 181 key.type[Group1] = "THREE_LEVEL"; 182 183 key <AD11> { [ dead_tilde, dead_diaeresis, dead_macron ] }; // ~ ¨ ¯ 184 key <AD12> { [ dead_iota, VoidSymbol, dead_breve ] }; // ͺ ˘ 185 186 key <AC10> { [ dead_acute, dead_psili ] }; // ´ ̓ 187 key <AC11> { type[Group1]="FOUR_LEVEL", 188 [ dead_grave, dead_dasia, apostrophe, quotedbl ] }; 189 // ` ̔ ' " 190}; 191 192partial alphanumeric_keys alternate_group 193xkb_symbols "nodeadkeys" { 194 195 include "gr(simple)" 196 197 name[Group1] = "Greek (no dead keys)"; 198 199 key <AC10> { [ semicolon, colon ] }; // ; : 200}; 201 202// Greek layout rearranged as Colemak 203 204partial alphanumeric_keys alternate_group 205xkb_symbols "colemak" { 206 207 include "gr(basic)" 208 209 name[Group1] = "Greek (Colemak)"; 210 211 key <AD01> { [ semicolon, colon, periodcentered ] }; 212 key <AD02> { [ Greek_finalsmallsigma, Greek_SIGMA, U03DB, U03DA ] }; 213 key <AD03> { [ Greek_phi, Greek_PHI, U03D5 ] }; 214 key <AD04> { [ Greek_pi, Greek_PI, U03E1, U03E0 ] }; 215 key <AD05> { [ Greek_gamma, Greek_GAMMA, U03DD, U03DC ] }; 216 key <AD06> { [ Greek_xi, Greek_XI, U037C, U03FE ] }; 217 key <AD07> { [ Greek_lamda, Greek_LAMDA, U03F2, U03F9 ] }; 218 key <AD08> { [ Greek_theta, Greek_THETA, U03D1, U03F4 ] }; 219 key <AD09> { [ Greek_upsilon, Greek_UPSILON, U03D2, U03D2 ] }; 220 key <AD10> { [ dead_acute, dead_diaeresis, dead_acute, dead_psili ] }; 221 222 key <AC01> { [ Greek_alpha, Greek_ALPHA ] }; 223 key <AC02> { [ Greek_rho, Greek_RHO, registered, U03F1 ] }; 224 key <AC03> { [ Greek_sigma, Greek_SIGMA ] }; 225 key <AC04> { [ Greek_tau, Greek_TAU ] }; 226 key <AC05> { [ Greek_delta, Greek_DELTA, downarrow, uparrow ] }; 227 key <AC06> { [ Greek_eta, Greek_ETA ] }; 228 key <AC07> { [ Greek_nu, Greek_NU, U0374, U0375 ] }; 229 key <AC08> { [ Greek_epsilon, Greek_EPSILON, EuroSign ] }; 230 key <AC09> { [ Greek_iota, Greek_IOTA, U037B, U03FD ] }; 231 key <AC10> { [ Greek_omicron, Greek_OMICRON ] }; 232 233 key <AB01> { [ Greek_zeta, Greek_ZETA, U037D, U03FF ] }; 234 key <AB02> { [ Greek_chi, Greek_CHI, rightarrow, leftarrow ] }; 235 key <AB03> { [ Greek_psi, Greek_PSI, copyright ] }; 236 key <AB04> { [ Greek_omega, Greek_OMEGA, U03D6 ] }; 237 key <AB05> { [ Greek_beta, Greek_BETA, U03D0 ] }; 238 key <AB06> { [ Greek_kappa, Greek_KAPPA, U03DF, U03DE ] }; 239 key <AB07> { [ Greek_mu, Greek_MU, U03FB, U03FA ] }; 240 241 key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] }; 242}; 243 244// EXTRAS: 245 246partial alphanumeric_keys 247 xkb_symbols "sun_type6" { 248 include "sun_vndr/gr(sun_type6)" 249}; 250