diff options
Diffstat (limited to 'keyboards/thevankeyboards/minivan/keymaps/josjoha')
13 files changed, 1157 insertions, 132 deletions
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.c b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.c new file mode 100644 index 000000000..cac77aac6 --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.c | |||
| @@ -0,0 +1,291 @@ | |||
| 1 | /* | ||
| 2 | * License (GPL): | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | |||
| 17 | * Author: © 2021 by Jos Boersema | ||
| 18 | * | ||
| 19 | */ | ||
| 20 | |||
| 21 | // --------------------------------------v--------------------------------------- | ||
| 22 | // Configuration: | ||
| 23 | // --------------------------------------v--------------------------------------- | ||
| 24 | |||
| 25 | // See the user configuration file: ./base_hebrew.h | ||
| 26 | |||
| 27 | // --------------------------------------^--------------------------------------- | ||
| 28 | // Below here no more comfortable configuration options..... | ||
| 29 | // --------------------------------------^--------------------------------------- | ||
| 30 | |||
| 31 | /* ⬇ */ | ||
| 32 | |||
| 33 | /* Layer _..._BASE: default BASE layer (Hebrew) | ||
| 34 | * | ||
| 35 | * - Dual use keys create a delay in the key (tap/hold keys), therefore | ||
| 36 | * space is not dual use (most used key), neither is hyphen. | ||
| 37 | */ | ||
| 38 | |||
| 39 | // Process user configuration wrt ‛Default’ or ‛Alternative’ spot for this layout. | ||
| 40 | # if defined(BASE_HEBREW__DEF_BASE) | ||
| 41 | [ _DEF_BASE ] = LAYOUT_redefined ( | ||
| 42 | # elif defined(BASE_HEBREW__ALT_BASE) | ||
| 43 | [ _ALT_BASE ] = LAYOUT_redefined ( | ||
| 44 | # endif | ||
| 45 | |||
| 46 | /* | ||
| 47 | Layer _..._BASE (LeTteRs, standard Hebrew as in Israel) | ||
| 48 | ➡ This is a simple hebrew layout. Notice the letter ק is displaced from normal, | ||
| 49 | to retain compatibility with Dvorak-English for ,<.>. There are no niqqud | ||
| 50 | available, because it is far too many unique symbols in Unicode, and it is | ||
| 51 | rarely used. | ||
| 52 | |||
| 53 | HEBREW_ISRAEL | ||
| 54 | | Right hand | ||
| 55 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger | ||
| 56 | -o- <|> ... //-o- BASE access | ||
| 57 | Esc /; ׳ ק ר א | ט ו ן ם פ Bksp | ||
| 58 | Tab+LCtl ש ד ג/RLM כ₪ ע | י ח ל/LRM ך ף: ,״ //Right-Left-Mark | ||
| 59 | LSht+_PAD ז ס ב ה נ | מ צ ת< ץ> .? RSht+_FUN //<>os side flip? | ||
| 60 | +_MOV⁵ | +_RAR⁶ | ||
| 61 | --------------------------------------------------------------------------------------- | ||
| 62 | Left+LAlt Del;_ACC _..._NSY(_DRA) Enter+_MOV| Space _..._NSY(_DRA) LGUI Right;_RAR | ||
| 63 | hold hold₍₁,₂٭₎ hold | hold₍₁,₂٭₎ hold // switch type | ||
| 64 | hold₍₂₎ ^-┃-----------------------+--------^ ┃ // ₁₎ both = _DRA | ||
| 65 | ┗━━━_BON━━━╋┅───────────┄┄┄«or»┄┄┄─+─────────┅┛ // ₂₎ both = _BON | ||
| 66 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> // Keys by number | ||
| 67 | ^³ ^⁴ // Optional more keys | ||
| 68 | … … | ||
| 69 | |||
| 70 | HEBREW_QWERTY | ||
| 71 | | Right hand | ||
| 72 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger | ||
| 73 | -o- <|> ... //-o- BASE access | ||
| 74 | Esc ת• ץ• ק ר א | ט ו ן ם׳ פ״ Bksp | ||
| 75 | Tab+LCtl ש ד ג/RLM כ₪ ע | י ח ל/LRM ך ף: '" //Right-Left-Mark | ||
| 76 | LSht+_PAD ז ס ב ה נ | מ צ ,< .> /? RSht+_FUN | ||
| 77 | +_MOV⁵ | +_RAR⁶ | ||
| 78 | --------------------------------------------------------------------------------------- | ||
| 79 | Left+LAlt Del;_ACC _..._NSY(_DRA) Enter+_MOV| Space _..._NSY(_DRA) LGUI Right;_RAR | ||
| 80 | hold hold₍₁,₂٭₎ hold | hold₍₁,₂٭₎ hold // switch type | ||
| 81 | hold₍₂₎ ^-┃-----------------------+--------^ ┃ // ₁₎ both = _DRA | ||
| 82 | ┗━━━_BON━━━╋┅───────────┄┄┄«or»┄┄┄─+─────────┅┛ // ₂₎ both = _BON | ||
| 83 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> // Keys by number | ||
| 84 | ^³ ^⁴ // Optional more keys | ||
| 85 | … … | ||
| 86 | |||
| 87 | HEBREW_DVORAK | ||
| 88 | | Right hand | ||
| 89 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger | ||
| 90 | -o- <|> ... //-o- BASE access | ||
| 91 | Esc '" ,< .> ר א | ט ו ן ם׳ פ״ Bksp | ||
| 92 | Tab+LCtl ש ד ג/RLM כ₪ ע | י ח ל/LRM ך ף ־ //Right-Left-Mark | ||
| 93 | LSht+_PAD ז: ס ב ה נ | מ צ ת ץ ק• RSht+_FUN | ||
| 94 | +_MOV⁵ | +_RAR⁶ | ||
| 95 | --------------------------------------------------------------------------------------- | ||
| 96 | Left+LAlt Del;_ACC _..._NSY(_DRA) Enter+_MOV| Space _..._NSY(_DRA) LGUI Right;_RAR | ||
| 97 | hold hold₍₁,₂٭₎ hold | hold₍₁,₂٭₎ hold // switch type | ||
| 98 | hold₍₂₎ ^-┃-----------------------+--------^ ┃ // ₁₎ both = _DRA | ||
| 99 | ┗━━━_BON━━━╋┅───────────┄┄┄«or»┄┄┄─+─────────┅┛ // ₂₎ both = _BON | ||
| 100 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> // Keys by number | ||
| 101 | ^³ ^⁴ // Optional more keys | ||
| 102 | … … | ||
| 103 | |||
| 104 | |||
| 105 | ₁) Dual hold for _DRA, single hold for _..._NSY. Marked by: ^--…--^ | ||
| 106 | ₂) Hold key “<2” with either٭ key “<3” or “3>” for _BON, single hold “<2” for _ACC. Marked: ┗━━…━━┛ | ||
| 107 | ³) 'South paw' hardware configuration | ||
| 108 | ⁴) 'Arrow' hardware configuration | ||
| 109 | ³ ⁴) There are two more optional hardware keys, to make it easier to compile for | ||
| 110 | a 12x12x12x11 or 12x12x12x12 layouts. | ||
| 111 | ⁵) Left Shift when pressed with another key. Medium long: to toggle _PAD. Long: toggle _MOV. | ||
| 112 | ⁶) Right shift when pressed with another key. medium long: to toggle _FUN. Long: toggle _RAR. | ||
| 113 | ⁷) Letters marked with • are displaced from standard hebrew layout. | ||
| 114 | */ | ||
| 115 | // | ||
| 116 | // <pink2 , <pinky , <ring , <middl , <indx , <ind|, indx> , inde> , midd> , ring> , pink> , pink2> , | ||
| 117 | // -*!- , , , , , <|,> , , , , , , | ||
| 118 | KC_ESC | ||
| 119 | |||
| 120 | # if defined(HEBREW_ISRAEL) | ||
| 121 | , XP_HEB_AA , XP_HEB_AB , XP_HEB_AC | ||
| 122 | # elif defined(HEBREW_QWERTY) | ||
| 123 | , XP_HEB_AA , XP_HEB_AB , XP_HEB_AC | ||
| 124 | # elif defined(HEBREW_DVORAK) | ||
| 125 | , KC_QUOT , KC_COMM , KC_DOT | ||
| 126 | # endif // HEBREW_DVORAK/QWERTY | ||
| 127 | , XP_HEB_AD , XP_HEB_AE , XP_HEB_AF , XP_HEB_AG , XP_HEB_AH , XP_HEB_AI , XP_HEB_AJ , KC_BSPC , | ||
| 128 | LCTL_T ( KC_TAB ) , XP_HEB_BA , XP_HEB_BB , XP_HEB_BC , XP_HEB_BD , XP_HEB_BE , XP_HEB_BF , XP_HEB_BG , XP_HEB_BH , XP_HEB_BI , XP_HEB_BJ | ||
| 129 | // ^^^^^^^^^ Different in Qwerty (done in macros) with ':' | ||
| 130 | |||
| 131 | # if defined(HEBREW_ISRAEL) | ||
| 132 | , XP_HEB_BK , // ," | ||
| 133 | # elif defined(HEBREW_QWERTY) | ||
| 134 | , KC_QUOT , // '" | ||
| 135 | # elif defined(HEBREW_DVORAK) | ||
| 136 | , XP_HEB_MQF , // ־ | ||
| 137 | # endif // HEBREW_* | ||
| 138 | |||
| 139 | CHOLTAP_LSHFT , XP_HEB_CA , XP_HEB_CB , XP_HEB_CC , XP_HEB_CD , XP_HEB_CE , XP_HEB_CF , XP_HEB_CG | ||
| 140 | |||
| 141 | # if defined(HEBREW_ISRAEL) | ||
| 142 | , XP_HEB_CH , XP_HEB_CI , XP_HEB_CJ | ||
| 143 | # elif defined(HEBREW_QWERTY) | ||
| 144 | , KC_COMM , KC_DOT , KC_SLSH | ||
| 145 | # elif defined(HEBREW_DVORAK) | ||
| 146 | , XP_HEB_CH , XP_HEB_CI , XP_HEB_CJ | ||
| 147 | # endif // HEBREW_* | ||
| 148 | , CHOLTAP_RSHFT , | ||
| 149 | // ----------------------------------------------------------------------------------------------------------------- | ||
| 150 | LALT_T ( KC_LEFT ) | ||
| 151 | |||
| 152 | # ifdef TRANSMINIVAN_LEFTSIDE | ||
| 153 | , MO ( _PAD ) | ||
| 154 | # endif | ||
| 155 | |||
| 156 | # ifdef MORE_KEY__COMMAND | ||
| 157 | , MORE_key1_BASE | ||
| 158 | # endif | ||
| 159 | |||
| 160 | # ifdef SWITCH_HOLD_ACC_NSY | ||
| 161 | , DUO_HOLD , CHOLTAP_ACCE | ||
| 162 | # else | ||
| 163 | , CHOLTAP_ACCE , DUO_HOLD | ||
| 164 | # endif | ||
| 165 | |||
| 166 | , LEFTCENTER_THUMB | ||
| 167 | |||
| 168 | # ifdef TRANSMINIVAN_MIDLEFT | ||
| 169 | , TRANS_MIDLEFT | ||
| 170 | # endif | ||
| 171 | |||
| 172 | , RIGHTCENTER_THUMB , DUO_HOLD , KC__YGUI | ||
| 173 | |||
| 174 | # ifdef TRANSMINIVAN_RIGHTSIDE | ||
| 175 | , MO ( _FUN ) | ||
| 176 | # endif | ||
| 177 | |||
| 178 | # ifdef MORE_KEY__ARROW | ||
| 179 | , MORE_key2 | ||
| 180 | # endif | ||
| 181 | |||
| 182 | , CHOLTAP_LAYR | ||
| 183 | // , , , <|,> , , , | ||
| 184 | // <1 ± ± , <2 , <3 , <4 |, 4> , 3> , 2> , ± ± 1> | ||
| 185 | |||
| 186 | ), | ||
| 187 | |||
| 188 | /* ⬆⬇ */ | ||
| 189 | |||
| 190 | /* Layer _..._NSY: Numbers and symbols. | ||
| 191 | * Off hand Number input (-.Bksp ent (shft)tab). | ||
| 192 | */ | ||
| 193 | // KC_TILD does not work there, because of a limitation with shifted keys (nov 2019). | ||
| 194 | |||
| 195 | // Process user configuration wrt ‛Default’ or ‛Alternative’ spot for this layout. | ||
| 196 | # if defined(BASE_HEBREW__DEF_BASE) | ||
| 197 | [ _DEF_NSY ] = LAYOUT_redefined ( | ||
| 198 | # elif defined(BASE_HEBREW__ALT_BASE) | ||
| 199 | [ _ALT_NSY ] = LAYOUT_redefined ( | ||
| 200 | # endif | ||
| 201 | |||
| 202 | /* | ||
| 203 | Layer _..._NSY (Numbers and SYmbols) | ||
| 204 | ➡ The brace type symbols are *not* reversed as on standard hebrew boards (I find it confusing). | ||
| 205 | |||
| 206 | HEBREW_ISRAEL & HEBREW_QWERTY | ||
| 207 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring>pin>pink2> | ||
| 208 | -*- <|> //(toggle) Access on _FUN | ||
| 209 | BASE ! @ # $ % | ^ & * ( ) Del | ||
| 210 | Tab+LCtl 1! 2@ 3# 4$ 5% | 6^ 7& 8* 9( 0) `~+RCtl | ||
| 211 | -+LSht [{ ]} -_ \| =+ | + | ־ { } ~+RSht | ||
| 212 | ^ // Only difference with Qwerty | ||
| 213 | --------------------------------------------------------------------------- | ||
| 214 | Left+LAlt ___ ___ Ent | . ___ LGUI Right+RAlt | ||
| 215 | -*- <|> -*- //(hold) Access on _..._BASE | ||
| 216 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> | ||
| 217 | … … | ||
| 218 | |||
| 219 | HEBREW_DVORAK (Same as standard Dvorak) | ||
| 220 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring>pin>pink2> | ||
| 221 | -*- <|> //(toggle) Access on _FUN | ||
| 222 | BASE ! @ # $ % | ^ & * ( ) Del | ||
| 223 | Tab+LCtl 1! 2@ 3# 4$ 5% | 6^ 7& 8* 9( 0) `~+RCtl | ||
| 224 | -+LSht [{ ]} /? \| =+ | + | ? { } ~+RSht | ||
| 225 | --------------------------------------------------------------------------- | ||
| 226 | Left+LAlt ___ ___ Ent | . ___ LGUI Right+RAlt | ||
| 227 | -*- <|> -*- //(hold) Access on _..._BASE | ||
| 228 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> | ||
| 229 | … … | ||
| 230 | */ | ||
| 231 | // | ||
| 232 | // | ||
| 233 | // <pink2 , <pinky , <ring , <middl , <index , <indx2 |, indx2> , index> , middl> , ring> , pinky> , pink2> , | ||
| 234 | // , -*- , , , , <|,> , , , , , , | ||
| 235 | CTO_BASE , KC_EXLM , KC_AT , KC_HASH , KC_DLR , KC_PERC , KC_CIRC , KC_AMPR , KC_ASTR , KC_LPRN , KC_RPRN , KC_DEL , | ||
| 236 | LCTL_T ( KC_TAB ) , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , RCTL_T ( KC_GRV ) , | ||
| 237 | LSFT_DASH , KC_LBRC , KC_RBRC | ||
| 238 | |||
| 239 | # if defined(HEBREW_ISRAEL) | ||
| 240 | , KC_MINUS // allows -_, with Maqaf on mirror place right | ||
| 241 | # elif defined(HEBREW_QWERTY) | ||
| 242 | , KC_MINUS // same as HEBREW_ISRAEL | ||
| 243 | # elif defined(HEBREW_DVORAK) | ||
| 244 | , KC_SLSH | ||
| 245 | # endif // HEBREW_* | ||
| 246 | |||
| 247 | , KC_BSLS , KC_EQL , KC_PLUS , KC_PIPE | ||
| 248 | |||
| 249 | |||
| 250 | # if defined(HEBREW_ISRAEL) | ||
| 251 | , XP_HEB_MQF // '־' Maqaf | ||
| 252 | # elif defined(HEBREW_QWERTY) | ||
| 253 | , XP_HEB_MQF // | ||
| 254 | # elif defined(HEBREW_DVORAK) | ||
| 255 | , KC_QUES | ||
| 256 | # endif // HEBREW_* | ||
| 257 | , KC_LCBR , KC_RCBR , RSFT_TILDE , | ||
| 258 | // --------------------------------------------------------------------------------------------------------------------------------------------- | ||
| 259 | LALT_T ( KC_LEFT ) | ||
| 260 | |||
| 261 | # ifdef TRANSMINIVAN_LEFTSIDE | ||
| 262 | , TRANS_LEFT | ||
| 263 | # endif | ||
| 264 | |||
| 265 | # ifdef MORE_KEY__COMMAND | ||
| 266 | , MORE_key1 | ||
| 267 | # endif | ||
| 268 | |||
| 269 | , _______ , _______ , KC_ENT | ||
| 270 | |||
| 271 | # ifdef TRANSMINIVAN_MIDLEFT | ||
| 272 | , TRANS_MIDLEFT | ||
| 273 | # endif | ||
| 274 | , KC_DOT , DUO_HOLD , KC__YGUI | ||
| 275 | |||
| 276 | # ifdef TRANSMINIVAN_RIGHTSIDE | ||
| 277 | , TRANS_RIGHT | ||
| 278 | # endif | ||
| 279 | |||
| 280 | # ifdef MORE_KEY__ARROW | ||
| 281 | , MORE_key2 | ||
| 282 | # endif | ||
| 283 | |||
| 284 | , RALT_T ( KC_RIGHT ) | ||
| 285 | // , , -*- , <|,> , -*- , , | ||
| 286 | // <1 ± ± , <2 , <3 , <4 |, 4> , 3> , 2> , ± ± 1> | ||
| 287 | |||
| 288 | ), | ||
| 289 | |||
| 290 | |||
| 291 | /* ⬆⬇ */ | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.h new file mode 100644 index 000000000..f5604b8f1 --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.h | |||
| @@ -0,0 +1,52 @@ | |||
| 1 | /* | ||
| 2 | * License (GPL): | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | |||
| 17 | * Author: © 2021 by Jos Boersema | ||
| 18 | * | ||
| 19 | */ | ||
| 20 | |||
| 21 | #pragma once | ||
| 22 | |||
| 23 | // --------------------------------------v--------------------------------------- | ||
| 24 | // Configuration: | ||
| 25 | // --------------------------------------v--------------------------------------- | ||
| 26 | |||
| 27 | /* Harmonize layout with a Latin layout | ||
| 28 | * | ||
| 29 | * See base_hebrew.md for design objectives. | ||
| 30 | */ | ||
| 31 | #define HEBREW_ISRAEL // Close to standard Israeli hebrew. | ||
| 32 | //#define HEBREW_QWERTY // Harmonize punctuation symbols with Qwerty. | ||
| 33 | //#define HEBREW_DVORAK // Harmonize punctuation symbols with Dvorak. | ||
| 34 | |||
| 35 | // --------------------------------------^--------------------------------------- | ||
| 36 | // Below here no more comfortable configuration options..... | ||
| 37 | // --------------------------------------^--------------------------------------- | ||
| 38 | |||
| 39 | /* Redefine a layer in this file | ||
| 40 | * | ||
| 41 | * _Activate_ one or more of the below BASESFILE_LAYER_..., to redefine the layer | ||
| 42 | * in this file. The version in ./keymap.c will be ignored. Keep in mind to use | ||
| 43 | * transparent keys (_______) for “hold” layer switch keys on the BASE map, for | ||
| 44 | * your new layer. | ||
| 45 | */ | ||
| 46 | // #define BASESFILE_LAYER_ACC | ||
| 47 | // #define BASESFILE_LAYER_DRA | ||
| 48 | // #define BASESFILE_LAYER_BON | ||
| 49 | // #define BASESFILE_LAYER_PAD | ||
| 50 | // #define BASESFILE_LAYER_MOV | ||
| 51 | // #define BASESFILE_LAYER_RAR | ||
| 52 | // #define BASESFILE_LAYER_FUN | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.md b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.md new file mode 100644 index 000000000..0e7adc40c --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_hebrew.md | |||
| @@ -0,0 +1,198 @@ | |||
| 1 | # Minifan layout | ||
| 2 | |||
| 3 | Compiled for: Hebrew | ||
| 4 | ==================== | ||
| 5 | |||
| 6 | This file details the compile version `#define BASE_HEBREW__DEF_BASE, | ||
| 7 | BASE_HEBREW__ALT_BASE`. This is a basic Hebrew layout, without niqqud. | ||
| 8 | |||
| 9 | Only the most common symbols are implemented. Hebrew symbols are all | ||
| 10 | done in Unicode. | ||
| 11 | |||
| 12 | See also  chapter 7 _Language support_. | ||
| 13 | |||
| 14 | Parenthesis/braces/etc direction seems to be dealt with at the computer | ||
| 15 | side, depending on the surrounding symbols. The keyboard is printing | ||
| 16 | these symbols unchanged from what they are in standard Latin layouts, | ||
| 17 | and are represented that way in the manual. | ||
| 18 | |||
| 19 | Options | ||
| 20 | ======= | ||
| 21 | |||
| 22 | You can compile the hebrew to be like a common Israeli layout, or to harmonize the | ||
| 23 | punctuation symbols with either Dvorak or Qwerty. See the configuration file | ||
| 24 |  | ||
| 25 | |||
| 26 | ☞ Israeli Hebrew | ||
| 27 | |||
| 28 | As close to a simple standard hebrew layout as possible. | ||
| 29 | A little larger memory cost than the other options. No `'"` ASCII quotes symbols, | ||
| 30 | but proper ׳ and ״ (in Unicode). | ||
| 31 | |||
| 32 | ☞ Qwerty with Hebrew | ||
| 33 | |||
| 34 | The letters ת, ץ get displaced from the standard hebrew layout. | ||
| 35 | Numerical layer is the same as standard Qwerty, except the symbol | ||
| 36 | `_` symbol becomes `־` (Maqaf). No `;` symbol. | ||
| 37 | |||
| 38 | ☞ Qwerty derivatives with Hebrew | ||
| 39 | |||
| 40 | It is adviced to use Qwerty with Hebrew in this case, and adjust by hand | ||
| 41 | coding if needed. “Workman” should harmonize the same as Qwerty. | ||
| 42 | Colemak displaces the “;:” key relative to Qwerty, therefore you may | ||
| 43 | like to change the “:” shifted symbol (by hand). The obscurity of this | ||
| 44 | use case gets extreme, there will not be options for this. | ||
| 45 | |||
| 46 | ☞ Dvorak with Hebrew | ||
| 47 | |||
| 48 | The letter ק gets displaced from the standard hebrew layout. | ||
| 49 | Numerical layer is the same as standard Dvorak. No `;` symbol. | ||
| 50 | |||
| 51 | |||
| 52 | Flash memory cost | ||
| 53 | ----------------- | ||
| 54 | |||
| 55 | This layout adds several dozen new Unicode symbols, which takes up a certain | ||
| 56 | amount of additional space in keyboard memory. If you end up going over | ||
| 57 | the limit, you may need to change your compilation software setup, and/or | ||
| 58 | you can look into the “Eviscerations” chapters in  | ||
| 59 | |||
| 60 | Hebrew keymaps | ||
| 61 | -------------- | ||
| 62 | |||
| 63 | ──────────Hebrew Israel──────── | ||
| 64 | |||
| 65 |  | ||
| 66 | Layer: `..._BASE` | ||
| 67 | |||
| 68 |  | ||
| 69 | Layer: `..._NSY` | ||
| 70 | |||
| 71 | ──────────in common──────────── | ||
| 72 | |||
| 73 | (…) | ||
| 74 | |||
| 75 | ──────────Hebrew Qwerty──────── | ||
| 76 | |||
| 77 |  | ||
| 78 | Layer: `..._BASE` | ||
| 79 | |||
| 80 |  | ||
| 81 | Layer: `..._NSY` | ||
| 82 | |||
| 83 | ──────────in common──────────── | ||
| 84 | |||
| 85 | (…) | ||
| 86 | |||
| 87 | ──────────Hebrew Dvorak──────── | ||
| 88 | |||
| 89 |  | ||
| 90 | Layer: `..._BASE` | ||
| 91 | |||
| 92 |  | ||
| 93 | Layer: `..._NSY` (Same as Dvorak.) | ||
| 94 | |||
| 95 | ──────────in common──────────── | ||
| 96 | |||
| 97 | (…) | ||
| 98 | |||
| 99 | For more about the other layers, see ➡  ⬅ | ||
| 100 | |||
| 101 |  | ||
| 102 | |||
| 103 | Layers (text) | ||
| 104 | ============= | ||
| 105 | |||
| 106 | (The “x” padding was necessary to undo the direction of these characters being reversed. | ||
| 107 | This layout might still not be represenetd correctly on your system. See the graphics instead.) | ||
| 108 | |||
| 109 | HEBREW_ISRAEL | ||
| 110 | | Right hand | ||
| 111 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger | ||
| 112 | -o- <|> ... //-o- BASE access | ||
| 113 | Escxxxxxxxx/;xxxx׳xxxxxקxxxxxרxxxxxאxxxxx|xטxxxxxוxxxxxןxxxxxםxxxxxפxxxxxxxxxxBksp | ||
| 114 | Tab+LCtlxxxשxxxxxדxxxxxג/RLMxכx₪xxxעxxxxx|xיxxxxxחxxxxxל/LRMxךxxxxxף:xxxxxxxxxxx,״ //Right-Left-Mark | ||
| 115 | LSht+_PADxxזxxxxxסxxxxxבxxxxxהxxxxxנxxxxx|xמxxxxxצxxxxxת<xxxxץ>xxxx.?xxxxRSht+_FUN //<>os side flip? | ||
| 116 | +_MOV⁵ | +_RAR⁶ | ||
| 117 | --------------------------------------------------------------------------------------- | ||
| 118 | |||
| 119 | HEBREW_QWERTY | ||
| 120 | | Right hand | ||
| 121 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger | ||
| 122 | -o- <|> ... //-o- BASE access | ||
| 123 | Escxxxxxxxxת•xxxxץ•xxxxקxxxxxרxxxxxאxxxxx|xטxxxxxוxxxxxןxxxxxםx׳xxxפx״xxxxxxxxBksp | ||
| 124 | Tab+LCtlxxxשxxxxxדxxxxxג/RLMxכx₪xxxעxxxxx|xיxxxxxחxxxxxל/LRMxךxxxxxף:xxxxxxxxxxx'" //Right-Left-Mark | ||
| 125 | LSht+_PADxxזxxxxxסxxxxxבxxxxxהxxxxxנxxxxx|xמxxxxxצxxxxx,<xxxx.>xxxx/?xxxxRSht+_FUN | ||
| 126 | +_MOV⁵ | +_RAR⁶ | ||
| 127 | --------------------------------------------------------------------------------------- | ||
| 128 | (…) | ||
| 129 | |||
| 130 | HEBREW_DVORAK | ||
| 131 | Layer _..._BASE (LeTteRs, standard Hebrew) | ||
| 132 | | Right hand | ||
| 133 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger | ||
| 134 | -o- <|> ... //-o- BASE access | ||
| 135 | Escxxxxxxxx'"xxxx,<xxxx.>xxxxרxxxxxאxxxxx|xטxxxxxוxxxxxןxxxxxםx׳xxxפx״xxxxxxxxBksp | ||
| 136 | Tab+LCtlxxxשxxxxxדxxxxxג/RLMxכx₪xxxעxxxxx|xיxxxxxחxxxxxל/LRMxךxxxxxףxxxxxxxxxxxxx־ //Right/Left-Mark | ||
| 137 | LSht+_PADxxז:xxxxסxxxxxבxxxxxהxxxxxנxxxxx|xמxxxxxצxxxxxתxxxxxץxxxxxק•xxxxRSht+_FUN | ||
| 138 | +_MOV⁵ | +_RAR⁶ | ||
| 139 | --------------------------------------------------------------------------------------- | ||
| 140 | Left+LAlt Del;_ACC _DEF_NSY(_DRA) Enter+_MOV| Space _DEF_NSY(_DRA) RGUI Right;_RAR | ||
| 141 | hold hold₍₁,₂٭₎ hold | hold₍₁,₂٭₎ hold // switch type | ||
| 142 | hold₍₂₎ ^-┃-----------------------+--------^ ┃ // ₁₎ both = _DRA | ||
| 143 | ┗━━━_BON━━━╋┅───────────┄┄┄«or»┄┄┄─+─────────┅┛ // ₂₎ both = _BON | ||
| 144 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> // Keys by number | ||
| 145 | ^³ ^⁴ // Optional more keys | ||
| 146 | (LGUI) (_MOV) | ||
| 147 | |||
| 148 | |||
| 149 | ₁) Dual hold for _DRA, single hold for _DEF_NSY. Marked by: ^--…--^ | ||
| 150 | ₂) Hold key “<2” with either٭ key “<3” or “3>” for _BON, single hold “<2” for _ACC. Marked: ┗━━…━━┛ | ||
| 151 | ₃) 'South paw' hardware configuration. Configurable, default shown. | ||
| 152 | ₄) 'Arrow' hardware configuration Configurable, default shown. | ||
| 153 | ₃ ₄) There are two more optional hardware keys, to make it easier to compile for | ||
| 154 | a 12x12x12x11 or 12x12x12x12 layouts. | ||
| 155 | ₅) Left Shift when pressed with another key. Medium long: to toggle _PAD. Long: toggle _MOV. | ||
| 156 | ₆) Right shift when pressed with another key. medium long: to toggle _FUN. Long: toggle _RAR. | ||
| 157 | ⁷) Letters marked with • are displaced from standard hebrew layout. | ||
| 158 | |||
| 159 | Remarks: The left modifiers have a slight delay in combination with an outside pointer device (mouse, stylus). | ||
| 160 | It seems this will be difficult to fix, because it is spread over two devices. To avoid the | ||
| 161 | ±0.2 second delay, activate a layer where the modifiers are direct (`_PAD`), using the layer toggle on left shift. | ||
| 162 | |||
| 163 | The two keys with ';' (Del;`_ACC`, Right;`_RAR`) do not auto-repeat on double tap, like QMK normal layer-tap keys. | ||
| 164 | There is an uncluttered _Delete_ on `_PAD`, an uncluttered _Right_ arrow on the `_MOV` layer. | ||
| 165 | |||
| 166 | Holding both `_DEF_NSY` keys left and right of the "split space bar" (enter, space) results in layer `_DRA`. | ||
| 167 | |||
| 168 | Holding either one of the just above mentioned `_DEF_NSY` layer keys (<3 and 3>), with the `_ACC` layer key | ||
| 169 | (on <2) results in layer `_BON`. | ||
| 170 | |||
| 171 | - - - | ||
| 172 | |||
| 173 | Layer _..._NSY (Numbers and SYmbols) | ||
| 174 | |||
| 175 | HEBREW_ISRAEL & HEBREW_QWERTY (_ becomes ־ Maqaf) | ||
| 176 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring>pin>pink2> | ||
| 177 | -*- <|> //(toggle) Access on _FUN | ||
| 178 | BASExxxxx!xxxxx@xxxxx#xxxxx$xxxxx%xxxxx|x^xxxxx&xxxxx*xxxxx(xxxx)xxxxxxxDel | ||
| 179 | Tab+LCtlx1!xxxx2@xxxx3#xxxx4$xxxx5%xxxx|x6^xxxx7&xxxx8*xxxx9(xxx0)xx`~+RCtl | ||
| 180 | -+LShtxxx[{xxxx]}xxxx-_xxxx\|xxxx=+xxxx|x+xxxxx|xxxxx־xxxxx{xxxxx}xxx~+RSht | ||
| 181 | ^ // Only difference with Qwerty | ||
| 182 | --------------------------------------------------------------------------- | ||
| 183 | Left+LAlt ___ ___ Ent | . ___ RGUI Right+RAlt | ||
| 184 | -*- <|> -*- //(hold) Access on _DEF_BASE | ||
| 185 | <1 ± <2 <3 <4 | 4> 3> 2> ± 1> | ||
| 186 | ^ ^ | ||
| 187 | (LGUI) (_MOV) | ||
| 188 | |||
| 189 | |||
| 190 | HEBREW_DVORAK (Same as standard Dvorak) | ||
| 191 | <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring>pin>pink2> | ||
| 192 | -*- <|> //(toggle) Access on _FUN | ||
| 193 | BASE ! @ # $ % | ^ & * ( ) Del | ||
| 194 | Tab+LCtl 1! 2@ 3# 4$ 5% | 6^ 7& 8* 9( 0) `~+RCtl | ||
| 195 | -+LSht [{ ]} /? \| =+ | + | ? { } ~+RSht | ||
| 196 | --------------------------------------------------------------------------- | ||
| 197 | (…) | ||
| 198 | - - - | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_numpad.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_numpad.h index 86baf95a5..d4440721f 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_numpad.h +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_numpad.h | |||
| @@ -18,6 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 18 | * | 18 | * |
| 19 | */ | 19 | */ |
| 20 | 20 | ||
| 21 | #pragma once | ||
| 22 | |||
| 21 | // --------------------------------------v--------------------------------------- | 23 | // --------------------------------------v--------------------------------------- |
| 22 | // Configuration: | 24 | // Configuration: |
| 23 | // --------------------------------------v--------------------------------------- | 25 | // --------------------------------------v--------------------------------------- |
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_qwerty_basearrow.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_qwerty_basearrow.h index 74aa563b4..386a6e593 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_qwerty_basearrow.h +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_qwerty_basearrow.h | |||
| @@ -18,6 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 18 | * | 18 | * |
| 19 | */ | 19 | */ |
| 20 | 20 | ||
| 21 | #pragma once | ||
| 22 | |||
| 21 | // --------------------------------------v--------------------------------------- | 23 | // --------------------------------------v--------------------------------------- |
| 22 | // Configuration: | 24 | // Configuration: |
| 23 | // --------------------------------------v--------------------------------------- | 25 | // --------------------------------------v--------------------------------------- |
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c index 09a9b7d93..057561a47 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c | |||
| @@ -146,7 +146,7 @@ bool led_middle_on = TRUE; // Set to off later, if startup setting is off. | |||
| 146 | bool isolate_trigger = FALSE; // detects if _FUN layer move was pressed, and no other key (no normal use of Shift). | 146 | bool isolate_trigger = FALSE; // detects if _FUN layer move was pressed, and no other key (no normal use of Shift). |
| 147 | bool capslock; // keeps track of capslock state | 147 | bool capslock; // keeps track of capslock state |
| 148 | bool numlock; // keeps track of numlock state | 148 | bool numlock; // keeps track of numlock state |
| 149 | layer_state_t state_recall; // We are calling the function set_led_colors_ from this file as well. | 149 | //layer_state_t state_recall; // We are calling the function set_led_colors_ from this file as well. |
| 150 | // speed measuring | 150 | // speed measuring |
| 151 | bool speed_measure = SPEED_INIT_VALUE; // feature activated or not on startup | 151 | bool speed_measure = SPEED_INIT_VALUE; // feature activated or not on startup |
| 152 | uint32_t speed_counttime; // counts the time | 152 | uint32_t speed_counttime; // counts the time |
| @@ -289,8 +289,8 @@ void speed_led (int speed) { | |||
| 289 | 289 | ||
| 290 | // do this in one place to handle left/right leds being off here | 290 | // do this in one place to handle left/right leds being off here |
| 291 | void isolate_rgblight_set () { | 291 | void isolate_rgblight_set () { |
| 292 | # ifdef RGBLIGHT_ENABLE | ||
| 293 | 292 | ||
| 293 | # ifdef RGBLIGHT_ENABLE | ||
| 294 | if (!leds_on) { // left/right leds are off | 294 | if (!leds_on) { // left/right leds are off |
| 295 | // overwrite previously colors | 295 | // overwrite previously colors |
| 296 | uint8_t led0r = 0; uint8_t led0g = 0; uint8_t led0b = 0; | 296 | uint8_t led0r = 0; uint8_t led0g = 0; uint8_t led0b = 0; |
| @@ -305,8 +305,8 @@ void isolate_rgblight_set () { | |||
| 305 | setrgb(led2r, led2g, led2b, (LED_TYPE *)&led[2]); // Led 2 | 305 | setrgb(led2r, led2g, led2b, (LED_TYPE *)&led[2]); // Led 2 |
| 306 | } | 306 | } |
| 307 | rgblight_set (); | 307 | rgblight_set (); |
| 308 | |||
| 309 | # endif | 308 | # endif |
| 309 | |||
| 310 | } | 310 | } |
| 311 | 311 | ||
| 312 | 312 | ||
| @@ -335,7 +335,7 @@ void indicate_fun_stay (void) { | |||
| 335 | 335 | ||
| 336 | 336 | ||
| 337 | // _RAR layer leds | 337 | // _RAR layer leds |
| 338 | // It is a function because this is called when the Base layer OTHER_BASE key is pressed | 338 | // It is a function because this is also called when the Base layer OTHER_BASE key is pressed |
| 339 | void indicate_base (void) { | 339 | void indicate_base (void) { |
| 340 | # ifdef RGBLIGHT_ENABLE | 340 | # ifdef RGBLIGHT_ENABLE |
| 341 | 341 | ||
| @@ -614,6 +614,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 614 | # include "./base_numpad.c" // Numbers pad | 614 | # include "./base_numpad.c" // Numbers pad |
| 615 | # endif | 615 | # endif |
| 616 | 616 | ||
| 617 | // * Hebrew * | ||
| 618 | # if defined(BASE_HEBREW__DEF_BASE) || defined(BASE_HEBREW__ALT_BASE) | ||
| 619 | # include "./base_hebrew.c" // Hebrew | ||
| 620 | # endif | ||
| 621 | |||
| 617 | // // ⬇ insert your ./base_YOUR_KEYMAP.c #include here: | 622 | // // ⬇ insert your ./base_YOUR_KEYMAP.c #include here: |
| 618 | 623 | ||
| 619 | 624 | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/minifan_config_compact.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/minifan_config_compact.h index 89d426b14..932acf2a8 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/minifan_config_compact.h +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/minifan_config_compact.h | |||
| @@ -14,25 +14,29 @@ GNU General Public License for more details. | |||
| 14 | You should have received a copy of the GNU General Public License | 14 | You should have received a copy of the GNU General Public License |
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 16 | 16 | ||
| 17 | * © 2020,2021 by Jos Boersema | 17 | * © 2020,2021 by Jos Boersema |
| 18 | */ | 18 | */ |
| 19 | 19 | ||
| 20 | #pragma once | ||
| 21 | |||
| 20 | /* | 22 | /* |
| 21 | * If MINIFAN_CONFIG_COMPACT in ./user_config.h ⬇ | 23 | * If MINIFAN_CONFIG_COMPACT in ./user_config.h ⬇ |
| 22 | */ | 24 | */ |
| 23 | 25 | ||
| 24 | //#define BASE_QWERTY__DEF_BASE | 26 | //#define BASE_QWERTY__DEF_BASE |
| 25 | //#define BASE_QWERTY__ALT_BASE | 27 | //#define BASE_QWERTY__ALT_BASE |
| 26 | //#define BASE_QWERTY_BASEARROW__DEF_BASE | 28 | //#define BASE_QWERTY_BASEARROW__DEF_BASE // ➡ base_qwerty_basearrow.h |
| 27 | //#define BASE_QWERTY_BASEARROW__ALT_BASE | 29 | //#define BASE_QWERTY_BASEARROW__ALT_BASE // ➡ base_qwerty_basearrow.h |
| 28 | #define BASE_DVORAK__DEF_BASE | 30 | #define BASE_DVORAK__DEF_BASE |
| 29 | //#define BASE_DVORAK__ALT_BASE | 31 | //#define BASE_DVORAK__ALT_BASE |
| 30 | #define BASE_DVORAK_DESCRAMBLE__ALT_BASE | 32 | //#define BASE_DVORAK_DESCRAMBLE__ALT_BASE |
| 31 | //#define BASE_COLEMAK__DEF_BASE | 33 | //#define BASE_COLEMAK__DEF_BASE |
| 32 | //#define BASE_COLEMAK__ALT_BASE | 34 | //#define BASE_COLEMAK__ALT_BASE |
| 33 | //#define BASE_WORKMAN__DEF_BASE | 35 | //#define BASE_WORKMAN__DEF_BASE |
| 34 | //#define BASE_WORKMAN__ALT_BASE | 36 | //#define BASE_WORKMAN__ALT_BASE |
| 35 | //#define BASE_NUMPAD__ALT_BASE | 37 | //#define BASE_NUMPAD__ALT_BASE // ➡ base_numpad.h |
| 38 | //#define BASE_HEBREW__DEF_BASE // ➡ base_hebrew.h | ||
| 39 | #define BASE_HEBREW__ALT_BASE // ➡ base_hebrew.h | ||
| 36 | 40 | ||
| 37 | //#define MINIFAN_SINGLE_LAYOUT | 41 | //#define MINIFAN_SINGLE_LAYOUT |
| 38 | 42 | ||
| @@ -66,7 +70,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 66 | #define ARROWS_TRIANGLE | 70 | #define ARROWS_TRIANGLE |
| 67 | //#define VI_SWITCHERYDOO | 71 | //#define VI_SWITCHERYDOO |
| 68 | 72 | ||
| 69 | //#define NUMPAD_COMMON_SQUARE | 73 | #define NUMPAD_COMMON_SQUARE |
| 70 | 74 | ||
| 71 | #define SPEED_COUNTDOWN 25 | 75 | #define SPEED_COUNTDOWN 25 |
| 72 | #define SPEED_HUE_STEP 8 | 76 | #define SPEED_HUE_STEP 8 |
| @@ -100,5 +104,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 100 | #define FULL_DRA_4THROW | 104 | #define FULL_DRA_4THROW |
| 101 | #define FULL_BON_4THROW | 105 | #define FULL_BON_4THROW |
| 102 | 106 | ||
| 103 | #define LEDS_OFF_BASE_DEF | 107 | //#define LEDS_OFF_BASE_DEF |
| 104 | #define LEDS_OFF_BASE_ALT | 108 | //#define LEDS_OFF_BASE_ALT |
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/readme.md b/keyboards/thevankeyboards/minivan/keymaps/josjoha/readme.md index 1d2ad90fe..a535a6f1f 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/readme.md +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/readme.md | |||
| @@ -3,7 +3,7 @@ A 40% keyboard made first by TheVan Keyboards | |||
| 3 | _https://thevankeyboards.com_ now taken over by TKC | 3 | _https://thevankeyboards.com_ now taken over by TKC |
| 4 | _https://thekey.company_ | 4 | _https://thekey.company_ |
| 5 | 5 | ||
| 6 |  | 6 |  |
| 7 | 7 | ||
| 8 | Table of Contents | 8 | Table of Contents |
| 9 | ================= | 9 | ================= |
| @@ -22,6 +22,8 @@ Table of Contents | |||
| 22 | 3.1.6 Workman | 22 | 3.1.6 Workman |
| 23 | 3.2 Special layouts | 23 | 3.2 Special layouts |
| 24 | 3.2.1 Numbers pad | 24 | 3.2.1 Numbers pad |
| 25 | 3.3 Non-Latin languages | ||
| 26 | 3.3.1 Hebrew | ||
| 25 | 4 The common system | 27 | 4 The common system |
| 26 | 4.1 Layer access | 28 | 4.1 Layer access |
| 27 | 4.2 Layout in graphics | 29 | 4.2 Layout in graphics |
| @@ -108,7 +110,7 @@ the western European group of languages, native from the keyboard. | |||
| 108 | This keymap might not function as expected if you want to use a | 110 | This keymap might not function as expected if you want to use a |
| 109 | different keyboard language setting in your operating system. | 111 | different keyboard language setting in your operating system. |
| 110 | 112 | ||
| 111 | See also chapter 6 _Language support_. | 113 | See also chapter 7 _Language support_. |
| 112 | 114 | ||
| 113 | 2 'make' example | 115 | 2 'make' example |
| 114 | ================ | 116 | ================ |
| @@ -195,6 +197,17 @@ with a normal layout on ‛Default’. How this works is explained below. | |||
| 195 | For the readme about the Numpad version, see ➡  ⬅ | 197 | For the readme about the Numpad version, see ➡  ⬅ |
| 196 | 198 | ||
| 197 | 199 | ||
| 200 | 3.3 Non-Latin languages | ||
| 201 | ======================= | ||
| 202 | |||
| 203 | 3.3.1 Hebrew | ||
| 204 | ------------ | ||
| 205 | |||
| 206 |  | ||
| 207 | |||
| 208 | For the readme about the Hebrew version, see ➡  ⬅ | ||
| 209 | |||
| 210 | |||
| 198 | 4 The common system | 211 | 4 The common system |
| 199 | =================== | 212 | =================== |
| 200 | 213 | ||
| @@ -1053,7 +1066,9 @@ You can remove the layers `_ACC`, `_DRA` and/or `_BON` (see | |||
| 1053 | 1066 | ||
| 1054 | You can remove a set of symbols from one or more of Unicode layers, | 1067 | You can remove a set of symbols from one or more of Unicode layers, |
| 1055 | such as not having box drawing characters on `_BON`, or no sub-script | 1068 | such as not having box drawing characters on `_BON`, or no sub-script |
| 1056 | numbers on `_DRA`. | 1069 | numbers on `_DRA` (see  under |
| 1070 | `Eviscerations ②/②` ) ⬅ | ||
| 1071 | |||
| 1057 | 1072 | ||
| 1058 | 12 Key associations | 1073 | 12 Key associations |
| 1059 | =================== | 1074 | =================== |
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_hebrew.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_hebrew.h new file mode 100644 index 000000000..881a80884 --- /dev/null +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_hebrew.h | |||
| @@ -0,0 +1,116 @@ | |||
| 1 | /* | ||
| 2 | * License (GPL): | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | |||
| 17 | * Author: © 2021 by Jos Boersema | ||
| 18 | * | ||
| 19 | */ | ||
| 20 | |||
| 21 | #pragma once | ||
| 22 | |||
| 23 | /* An amount of Unicode #defines | ||
| 24 | * - hebrew | ||
| 25 | */ | ||
| 26 | |||
| 27 | // | ||
| 28 | #define HB_ALEF 0x05D0 // 'HB' for 'Hebrew', "ALEF" for Alef : א | ||
| 29 | #define HB_BET 0x05D1 // " , "BET" for Bet : ב | ||
| 30 | #define HB_GIMEL 0x05D2 // " , "GIMEL" for Gimel : ג | ||
| 31 | #define HB_DALET 0x05D3 // " , "DALET" for Daled : ד | ||
| 32 | #define HB_HE 0x05D4 // " , "HE" for He : ה | ||
| 33 | #define HB_VAV 0x05D5 // " , "VAV" for Vav : ו | ||
| 34 | #define HB_ZAYIN 0x05D6 // " , "ZAYIN" for Zayin : ז | ||
| 35 | #define HB_GET 0x05D7 // " , "HET" for Het : ח | ||
| 36 | #define HB_TET 0x05D8 // " , "TET" for Tet : ט | ||
| 37 | #define HB_YOD 0x05D9 // " , "YOD" for Yod : י | ||
| 38 | #define HB_KAFS 0x05DA // " , "KAFS" for Kaf sofiet : ך | ||
| 39 | #define HB_KAF 0x05DB // " , "KAF" for Kaf : כ | ||
| 40 | #define HB_LAMED 0x05DC // " , "LAMED" for Lamed : ל | ||
| 41 | #define HB_MEMS 0x05DD // " , "MEMS" for Mem sofiet : ם | ||
| 42 | #define HB_MEM 0x05DE // " , "MEM" for Mem : מ | ||
| 43 | #define HB_NUNS 0x05DF // " , "NUNS" for Nun sofiet : ן | ||
| 44 | #define HB_NUN 0x05E0 // " , "NUN" for Nun : נ | ||
| 45 | #define HB_SAMEG 0x05E1 // " , "SAMEG" for Sameg : ס | ||
| 46 | #define HB_AYIN 0x05E2 // " , "AYIN" for Ayin : ע | ||
| 47 | #define HB_PES 0x05E3 // " , "PES" for Pe sofiet : ף | ||
| 48 | #define HB_PE 0x05E4 // " , "PE" for Pe : פ | ||
| 49 | #define HB_TSDIS 0x05E5 // " , "TSDIS" for Tsadi sofiet: ץ | ||
| 50 | #define HB_TSADI 0x05E6 // " , "TSADI" for Tsadi : צ | ||
| 51 | #define HB_QOF 0x05E7 // " , "QOF" for Qof : ק | ||
| 52 | #define HB_RESH 0x05E8 // " , "RESH" for Resh : ר | ||
| 53 | #define HB_SHIN 0x05E9 // " , "SHIN" for Shin : ש | ||
| 54 | #define HB_TAV 0x05EA // " , "TAV" for Tav : ת | ||
| 55 | #define HB_MAQAF 0x05be // " , "MAQAF" for Maqaf : ־ | ||
| 56 | |||
| 57 | // Yiddish digraphs: | ||
| 58 | //#define HB_D_VAV 0x05F0 // " , "D_VAV" for double Van : װ | ||
| 59 | //#define HB_VAVYD 0x05F1 // " , "VAVYD" for Vav Yod : ױ | ||
| 60 | //#define HB_D_YOD 0x05F2 // " , "D_YOD" for double Yod : ײ | ||
| 61 | |||
| 62 | // special | ||
| 63 | #define HB_RLM 0x200F // " , "RLM" for Right-Left-Mark: <non-printing> | ||
| 64 | #define HB_LRM 0x200E // " , "LRM" for Left-Right-Mark: <non-printing> | ||
| 65 | |||
| 66 | |||
| 67 | // The below are displacing symbols on other layers, some of which are quite obscure | ||
| 68 | // and end up being unused. They are compiled based on a #define. | ||
| 69 | // These where reported as symbols present on hebrew keyboards: | ||
| 70 | // U+05F3 : HEBREW PUNCTUATION GERESH | ||
| 71 | // U+20AC : EURO SIGN | ||
| 72 | // U+20AA : NEW SHEQEL SIGN {shekel} | ||
| 73 | // U+00B0 : DEGREE SIGN | ||
| 74 | // U+05AB : HEBREW ACCENT OLE | ||
| 75 | // U+05BD : HEBREW POINT METEG {siluq} | ||
| 76 | // U+00D7 : MULTIPLICATION SIGN {z notation Cartesian product} | ||
| 77 | // U+200E : LEFT-TO-RIGHT MARK [LRM] | ||
| 78 | // U+200F : RIGHT-TO-LEFT MARK [RLM] | ||
| 79 | // U+05BE : HEBREW PUNCTUATION MAQAF | ||
| 80 | // U+2013 : EN DASH | ||
| 81 | // U+05C2 : HEBREW POINT SIN DOT | ||
| 82 | // U+05C1 : HEBREW POINT SHIN DOT | ||
| 83 | // U+05B8 : HEBREW POINT QAMATS | ||
| 84 | // U+05F0 : HEBREW LIGATURE YIDDISH DOUBLE VAV {tsvey vovn} | ||
| 85 | // U+05B9 : HEBREW POINT HOLAM | ||
| 86 | // U+05B7 : HEBREW POINT PATAH | ||
| 87 | // U+05B2 : HEBREW POINT HATAF PATAH | ||
| 88 | // U+05F1 : HEBREW LIGATURE YIDDISH VAV YOD | ||
| 89 | // U+05F2 : HEBREW LIGATURE YIDDISH DOUBLE YOD {tsvey yudn} | ||
| 90 | // U+05B4 : HEBREW POINT HIRIQ | ||
| 91 | // U+201D : RIGHT DOUBLE QUOTATION MARK {double comma quotation mark} | ||
| 92 | // U+201E : DOUBLE LOW-9 QUOTATION MARK {low double comma quotation mark} | ||
| 93 | // U+05F4 : HEBREW PUNCTUATION GERSHAYIM | ||
| 94 | // U+05B6 : HEBREW POINT SEGOL | ||
| 95 | // U+05B1 : HEBREW POINT HATAF SEGOL | ||
| 96 | // U+05B5 : HEBREW POINT TSERE | ||
| 97 | // U+2019 : RIGHT SINGLE QUOTATION MARK {single comma quotation mark} | ||
| 98 | // U+201A : SINGLE LOW-9 QUOTATION MARK {low single comma quotation mark} | ||
| 99 | // U+00F7 : DIVISION SIGN {obelus} | ||
| 100 | // U+05BA : HEBREW POINT HOLAM HASER FOR VAV | ||
| 101 | // U+200D : ZERO WIDTH JOINER [ZWJ] | ||
| 102 | // U+201C : LEFT DOUBLE QUOTATION MARK {double turned comma quotation mark} | ||
| 103 | // U+201D : RIGHT DOUBLE QUOTATION MARK {double comma quotation mark} | ||
| 104 | // U+034F : COMBINING GRAPHEME JOINER [CGJ] | ||
| 105 | // U+05C6 : HEBREW PUNCTUATION NUN HAFUKHA | ||
| 106 | // U+200C : ZERO WIDTH NON-JOINER [ZWNJ] | ||
| 107 | // U+2018 : LEFT SINGLE QUOTATION MARK {single turned comma quotation mark} | ||
| 108 | // U+2019 : RIGHT SINGLE QUOTATION MARK {single comma quotation mark} | ||
| 109 | // Note: many modifiers probably only work with a hebrew language setting on the computer | ||
| 110 | // operating system. As Unicode, it would print a disconnected diacretical symbol. | ||
| 111 | |||
| 112 | // Geresh | ||
| 113 | #define HB_GERSH 0x05F3 // " , "GERSH" for Geresh : | ||
| 114 | #define HB_GRSHM 0x05F4 // " , "GRSHM" for Gershayim : | ||
| 115 | // Currency | ||
| 116 | #define HB_SHEKL 0x20AA // " , "SHEKL" for shekel : | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.c b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.c index d711c86f9..cfcf765a0 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.c +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.c | |||
| @@ -24,6 +24,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 24 | 24 | ||
| 25 | #include "./unicode_macros.h" | 25 | #include "./unicode_macros.h" |
| 26 | #include "./unicode_weurope.h" | 26 | #include "./unicode_weurope.h" |
| 27 | #include "./unicode_hebrew.h" | ||
| 27 | 28 | ||
| 28 | // Definition of ƒ (Dutch currency symbol). | 29 | // Definition of ƒ (Dutch currency symbol). |
| 29 | // Best changed in user_config.h, if you like a Euro symbol instead. | 30 | // Best changed in user_config.h, if you like a Euro symbol instead. |
| @@ -174,109 +175,150 @@ enum custom_keycodes { | |||
| 174 | 175 | ||
| 175 | // The _ACC layer, additional Unicode. | 176 | // The _ACC layer, additional Unicode. |
| 176 | # ifndef REMOVE_ACC // This cuts out the whole _ACC layer. | 177 | # ifndef REMOVE_ACC // This cuts out the whole _ACC layer. |
| 177 | XP_ACC_AA , | 178 | XP_ACC_AA, |
| 178 | XP_ACC_AB , | 179 | XP_ACC_AB, |
| 179 | XP_ACC_AC , | 180 | XP_ACC_AC, |
| 180 | XP_ACC_AD , | 181 | XP_ACC_AD, |
| 181 | XP_ACC_AE , | 182 | XP_ACC_AE, |
| 182 | XP_ACC_AF , | 183 | XP_ACC_AF, |
| 183 | XP_ACC_AG , | 184 | XP_ACC_AG, |
| 184 | XP_ACC_AH , | 185 | XP_ACC_AH, |
| 185 | XP_ACC_AI , | 186 | XP_ACC_AI, |
| 186 | XP_ACC_AJ , | 187 | XP_ACC_AJ, |
| 187 | XP_ACC_BA , | 188 | XP_ACC_BA, |
| 188 | XP_ACC_BB , | 189 | XP_ACC_BB, |
| 189 | XP_ACC_BC , | 190 | XP_ACC_BC, |
| 190 | XP_ACC_BD , | 191 | XP_ACC_BD, |
| 191 | XP_ACC_BE , | 192 | XP_ACC_BE, |
| 192 | XP_ACC_BF , | 193 | XP_ACC_BF, |
| 193 | XP_ACC_BG , | 194 | XP_ACC_BG, |
| 194 | XP_ACC_BH , | 195 | XP_ACC_BH, |
| 195 | XP_ACC_BI , | 196 | XP_ACC_BI, |
| 196 | XP_ACC_BJ , | 197 | XP_ACC_BJ, |
| 197 | XP_ACC_BK , | 198 | XP_ACC_BK, |
| 198 | XP_ACC_CA , | 199 | XP_ACC_CA, |
| 199 | XP_ACC_CB , | 200 | XP_ACC_CB, |
| 200 | XP_ACC_CC , | 201 | XP_ACC_CC, |
| 201 | XP_ACC_CD , | 202 | XP_ACC_CD, |
| 202 | XP_ACC_CE , | 203 | XP_ACC_CE, |
| 203 | XP_ACC_CF , | 204 | XP_ACC_CF, |
| 204 | XP_ACC_CG , | 205 | XP_ACC_CG, |
| 205 | XP_ACC_CH , | 206 | XP_ACC_CH, |
| 206 | XP_ACC_CI , | 207 | XP_ACC_CI, |
| 207 | XP_ACC_CJ , | 208 | XP_ACC_CJ, |
| 208 | # endif // REMOVE_ACC | 209 | # endif // REMOVE_ACC |
| 209 | 210 | ||
| 210 | # ifndef REMOVE_DRA // This cuts out the whole _DRA layer | 211 | # ifndef REMOVE_DRA // This cuts out the whole _DRA layer |
| 211 | // The _DRA layer, additional Unicode. | 212 | // The _DRA layer, additional Unicode. |
| 212 | XP_DRA_AA , | 213 | XP_DRA_AA, |
| 213 | XP_DRA_AB , | 214 | XP_DRA_AB, |
| 214 | XP_DRA_AC , | 215 | XP_DRA_AC, |
| 215 | XP_DRA_AD , | 216 | XP_DRA_AD, |
| 216 | XP_DRA_AE , | 217 | XP_DRA_AE, |
| 217 | XP_DRA_AF , | 218 | XP_DRA_AF, |
| 218 | XP_DRA_AG , | 219 | XP_DRA_AG, |
| 219 | XP_DRA_AH , | 220 | XP_DRA_AH, |
| 220 | XP_DRA_AI , | 221 | XP_DRA_AI, |
| 221 | XP_DRA_AJ , | 222 | XP_DRA_AJ, |
| 222 | XP_DRA_BA , | 223 | XP_DRA_BA, |
| 223 | XP_DRA_BB , | 224 | XP_DRA_BB, |
| 224 | XP_DRA_BC , | 225 | XP_DRA_BC, |
| 225 | XP_DRA_BD , | 226 | XP_DRA_BD, |
| 226 | XP_DRA_BE , | 227 | XP_DRA_BE, |
| 227 | XP_DRA_BF , | 228 | XP_DRA_BF, |
| 228 | XP_DRA_BG , | 229 | XP_DRA_BG, |
| 229 | XP_DRA_BH , | 230 | XP_DRA_BH, |
| 230 | XP_DRA_BI , | 231 | XP_DRA_BI, |
| 231 | XP_DRA_BJ ,// XP_DRA_BK , // no 'BK' key definition on this layer | 232 | XP_DRA_BJ,// XP_DRA_BK , // no 'BK' key definition on this layer |
| 232 | XP_DRA_CA , | 233 | XP_DRA_CA, |
| 233 | XP_DRA_CB , | 234 | XP_DRA_CB, |
| 234 | XP_DRA_CC , | 235 | XP_DRA_CC, |
| 235 | XP_DRA_CD , | 236 | XP_DRA_CD, |
| 236 | XP_DRA_CE , | 237 | XP_DRA_CE, |
| 237 | XP_DRA_CF , | 238 | XP_DRA_CF, |
| 238 | # endif // REMOVE_DRA | 239 | # endif // REMOVE_DRA |
| 239 | XP_DRA_CG , // Needed for ☑ on Unicode tester key in _RAR | 240 | XP_DRA_CG, // Needed for ☑ on Unicode tester key in _RAR |
| 240 | # ifndef REMOVE_DRA // This cuts out the whole _DRA layer | 241 | # ifndef REMOVE_DRA // This cuts out the whole _DRA layer |
| 241 | XP_DRA_CH , | 242 | XP_DRA_CH, |
| 242 | XP_DRA_CI , | 243 | XP_DRA_CI, |
| 243 | XP_DRA_CJ , | 244 | XP_DRA_CJ, |
| 244 | # endif // REMOVE_DRA | 245 | # endif // REMOVE_DRA |
| 245 | 246 | ||
| 246 | // The _BON layer, additional Unicode. | 247 | // The _BON layer, additional Unicode. |
| 247 | # ifndef REMOVE_BON // Removes this layer entirely, if set. | 248 | # ifndef REMOVE_BON // Removes this layer entirely, if set. |
| 248 | XP_BON_AA , | 249 | XP_BON_AA, |
| 249 | XP_BON_AB , | 250 | XP_BON_AB, |
| 250 | XP_BON_AC , | 251 | XP_BON_AC, |
| 251 | XP_BON_AD , | 252 | XP_BON_AD, |
| 252 | XP_BON_AE , | 253 | XP_BON_AE, |
| 253 | XP_BON_AF , | 254 | XP_BON_AF, |
| 254 | XP_BON_AG , | 255 | XP_BON_AG, |
| 255 | XP_BON_AH , | 256 | XP_BON_AH, |
| 256 | XP_BON_AI , | 257 | XP_BON_AI, |
| 257 | XP_BON_AJ , | 258 | XP_BON_AJ, |
| 258 | XP_BON_BA , | 259 | XP_BON_BA, |
| 259 | XP_BON_BB , | 260 | XP_BON_BB, |
| 260 | XP_BON_BC , | 261 | XP_BON_BC, |
| 261 | XP_BON_BD , | 262 | XP_BON_BD, |
| 262 | XP_BON_BE , | 263 | XP_BON_BE, |
| 263 | XP_BON_BF , | 264 | XP_BON_BF, |
| 264 | XP_BON_BG , | 265 | XP_BON_BG, |
| 265 | XP_BON_BH , | 266 | XP_BON_BH, |
| 266 | XP_BON_BI , | 267 | XP_BON_BI, |
| 267 | XP_BON_BJ , | 268 | XP_BON_BJ, |
| 268 | XP_BON_BK , | 269 | XP_BON_BK, |
| 269 | XP_BON_CA , | 270 | XP_BON_CA, |
| 270 | XP_BON_CB , | 271 | XP_BON_CB, |
| 271 | XP_BON_CC , | 272 | XP_BON_CC, |
| 272 | XP_BON_CD , | 273 | XP_BON_CD, |
| 273 | XP_BON_CE , | 274 | XP_BON_CE, |
| 274 | XP_BON_CF , | 275 | XP_BON_CF, |
| 275 | XP_BON_CG , | 276 | XP_BON_CG, |
| 276 | XP_BON_CH , | 277 | XP_BON_CH, |
| 277 | XP_BON_CI , | 278 | XP_BON_CI, |
| 278 | XP_BON_CJ , | 279 | XP_BON_CJ, |
| 279 | # endif // REMOVE_BON | 280 | # endif // REMOVE_BON |
| 281 | |||
| 282 | // Hebrew | ||
| 283 | # if defined(BASE_HEBREW__DEF_BASE) || defined(BASE_HEBREW__ALT_BASE) | ||
| 284 | XP_HEB_AA, | ||
| 285 | XP_HEB_AB, | ||
| 286 | XP_HEB_AC, | ||
| 287 | XP_HEB_AD, | ||
| 288 | XP_HEB_AE, | ||
| 289 | XP_HEB_AF, | ||
| 290 | XP_HEB_AG, | ||
| 291 | XP_HEB_AH, | ||
| 292 | XP_HEB_AI, | ||
| 293 | XP_HEB_AJ, | ||
| 294 | XP_HEB_BA, | ||
| 295 | XP_HEB_BB, | ||
| 296 | XP_HEB_BC, | ||
| 297 | XP_HEB_BD, | ||
| 298 | XP_HEB_BE, | ||
| 299 | XP_HEB_BF, | ||
| 300 | XP_HEB_BG, | ||
| 301 | XP_HEB_BH, | ||
| 302 | XP_HEB_BI, | ||
| 303 | XP_HEB_BJ, | ||
| 304 | # if defined(HEBREW_ISRAEL) | ||
| 305 | XP_HEB_BK, // | ||
| 306 | # endif | ||
| 307 | XP_HEB_CA, | ||
| 308 | XP_HEB_CB, | ||
| 309 | XP_HEB_CC, | ||
| 310 | XP_HEB_CD, | ||
| 311 | XP_HEB_CE, | ||
| 312 | XP_HEB_CF, | ||
| 313 | XP_HEB_CG, | ||
| 314 | # if defined(HEBREW_ISRAEL) || defined(HEBREW_DVORAK) | ||
| 315 | XP_HEB_CH, | ||
| 316 | XP_HEB_CI, | ||
| 317 | XP_HEB_CJ, | ||
| 318 | # endif | ||
| 319 | XP_HEB_MQF, // ־ | ||
| 320 | # endif //BASE_HEBREW__* | ||
| 321 | |||
| 280 | }; | 322 | }; |
| 281 | 323 | ||
| 282 | // Pre-existing function, called for every key up and down. | 324 | // Pre-existing function, called for every key up and down. |
| @@ -1244,12 +1286,17 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1244 | 1286 | ||
| 1245 | case LEDS_ON: // Toggles left/right leds on or off | 1287 | case LEDS_ON: // Toggles left/right leds on or off |
| 1246 | if (record->event.pressed) { // key down | 1288 | if (record->event.pressed) { // key down |
| 1289 | |||
| 1290 | # ifdef RGBLIGHT_ENABLE | ||
| 1247 | if (leds_on == FALSE) { | 1291 | if (leds_on == FALSE) { |
| 1248 | leds_on = TRUE; | 1292 | leds_on = TRUE; |
| 1249 | }else{ | 1293 | }else{ |
| 1250 | leds_on = FALSE; | 1294 | leds_on = FALSE; |
| 1251 | } | 1295 | } |
| 1296 | set_led_colors_ (state_recall); // Update leds | ||
| 1252 | } | 1297 | } |
| 1298 | # endif | ||
| 1299 | |||
| 1253 | break; | 1300 | break; |
| 1254 | 1301 | ||
| 1255 | # ifdef LEDS_OFF_BASE_DEF // This messes with led effect on/off, so we need to track the state of this setting now. | 1302 | # ifdef LEDS_OFF_BASE_DEF // This messes with led effect on/off, so we need to track the state of this setting now. |
| @@ -1652,11 +1699,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1652 | case XP_DRA_AA: // because '", the opening „“ at the ‛open’ of the keyboard (left/up) | 1699 | case XP_DRA_AA: // because '", the opening „“ at the ‛open’ of the keyboard (left/up) |
| 1653 | if (record->event.pressed) { // key down | 1700 | if (record->event.pressed) { // key down |
| 1654 | 1701 | ||
| 1655 | # ifdef FULL_DRA_4THROW | ||
| 1656 | unicode_hex2output (CS_DQUHR, CS_DQUL);// “ „ | 1702 | unicode_hex2output (CS_DQUHR, CS_DQUL);// “ „ |
| 1657 | # else | ||
| 1658 | unicode_hex2output_single (CS_DQUHR);// “ | ||
| 1659 | # endif | ||
| 1660 | 1703 | ||
| 1661 | } | 1704 | } |
| 1662 | break; | 1705 | break; |
| @@ -1664,11 +1707,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1664 | case XP_DRA_AB: // because to the right of opening “, ≤ on < | 1707 | case XP_DRA_AB: // because to the right of opening “, ≤ on < |
| 1665 | if (record->event.pressed) { // key down | 1708 | if (record->event.pressed) { // key down |
| 1666 | 1709 | ||
| 1667 | # ifdef FULL_DRA_4THROW | ||
| 1668 | unicode_hex2output (CS_DQUH, CS_ELTHAN);// ” ≤ | 1710 | unicode_hex2output (CS_DQUH, CS_ELTHAN);// ” ≤ |
| 1669 | # else | ||
| 1670 | unicode_hex2output_single (CS_DQUH);// ” | ||
| 1671 | # endif | ||
| 1672 | 1711 | ||
| 1673 | } | 1712 | } |
| 1674 | break; | 1713 | break; |
| @@ -1676,11 +1715,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1676 | case XP_DRA_AC: // because this is where the £ is on an English keyboard, on 'any' money symbols ¤; ≥ on > | 1715 | case XP_DRA_AC: // because this is where the £ is on an English keyboard, on 'any' money symbols ¤; ≥ on > |
| 1677 | if (record->event.pressed) { // key down | 1716 | if (record->event.pressed) { // key down |
| 1678 | 1717 | ||
| 1679 | # ifdef FULL_DRA_4THROW | ||
| 1680 | unicode_hex2output (CS_POUND, CS_EGTHAN);// £ ≥ | 1718 | unicode_hex2output (CS_POUND, CS_EGTHAN);// £ ≥ |
| 1681 | # else | ||
| 1682 | unicode_hex2output_single (CS_POUND);// £ | ||
| 1683 | # endif | ||
| 1684 | 1719 | ||
| 1685 | } | 1720 | } |
| 1686 | break; | 1721 | break; |
| @@ -1690,6 +1725,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1690 | 1725 | ||
| 1691 | # ifdef FULL_DRA_4THROW | 1726 | # ifdef FULL_DRA_4THROW |
| 1692 | unicode_hex2output (CS_NONE, CS_CENT);// ∅ ¢ | 1727 | unicode_hex2output (CS_NONE, CS_CENT);// ∅ ¢ |
| 1728 | # else | ||
| 1729 | unicode_hex2output_single (CS_NONE);// ∅ ¢ | ||
| 1693 | # endif | 1730 | # endif |
| 1694 | 1731 | ||
| 1695 | } | 1732 | } |
| @@ -1710,11 +1747,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1710 | case XP_DRA_AF: // Because left of 🙂, on top of ★ | 1747 | case XP_DRA_AF: // Because left of 🙂, on top of ★ |
| 1711 | if (record->event.pressed) { // key down | 1748 | if (record->event.pressed) { // key down |
| 1712 | 1749 | ||
| 1713 | # ifdef FULL_DRA_4THROW | ||
| 1714 | unicode_hex2output (CS_FLEUR, CS_HEART);// ❦ ♥ | 1750 | unicode_hex2output (CS_FLEUR, CS_HEART);// ❦ ♥ |
| 1715 | # else | ||
| 1716 | unicode_hex2output_single (CS_HEART);// ♥ | ||
| 1717 | # endif | ||
| 1718 | 1751 | ||
| 1719 | } | 1752 | } |
| 1720 | break; | 1753 | break; |
| @@ -1722,9 +1755,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1722 | case XP_DRA_AG: // because 😊 ⍨ | 1755 | case XP_DRA_AG: // because 😊 ⍨ |
| 1723 | if (record->event.pressed) { // key down | 1756 | if (record->event.pressed) { // key down |
| 1724 | 1757 | ||
| 1725 | # ifdef FULL_DRA_4THROW | ||
| 1726 | unicode_hex2output (CS_SMIL, CS_SAD_);// 🙂 🙁 | 1758 | unicode_hex2output (CS_SMIL, CS_SAD_);// 🙂 🙁 |
| 1727 | # endif | ||
| 1728 | 1759 | ||
| 1729 | } | 1760 | } |
| 1730 | break; | 1761 | break; |
| @@ -1732,9 +1763,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1732 | case XP_DRA_AH: // because «no reason», next to 😊 (emoticons) | 1763 | case XP_DRA_AH: // because «no reason», next to 😊 (emoticons) |
| 1733 | if (record->event.pressed) { // key down | 1764 | if (record->event.pressed) { // key down |
| 1734 | 1765 | ||
| 1735 | # ifdef FULL_DRA_4THROW | ||
| 1736 | unicode_hex2output (CS_THUP, CS_THDN);// 👍 👎 | 1766 | unicode_hex2output (CS_THUP, CS_THDN);// 👍 👎 |
| 1737 | # endif | ||
| 1738 | 1767 | ||
| 1739 | } | 1768 | } |
| 1740 | break; | 1769 | break; |
| @@ -2343,6 +2372,299 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 2343 | break; | 2372 | break; |
| 2344 | 2373 | ||
| 2345 | # endif // REMOVE_BON | 2374 | # endif // REMOVE_BON |
| 2375 | |||
| 2376 | // Hebrew | ||
| 2377 | # if defined(BASE_HEBREW__DEF_BASE) || defined(BASE_HEBREW__ALT_BASE) | ||
| 2378 | // The layout follows a standard hebrew keyboard, with the exception | ||
| 2379 | // of ק, which is displaced by “.>” copied from the Dvorak layout. | ||
| 2380 | |||
| 2381 | // HEBREW_DVORAK | ||
| 2382 | // These letters on the upper left follow Dvorak layout. | ||
| 2383 | // The reason is space on the device: these are not macros. | ||
| 2384 | // Also: typing compatibility between Dvorak and Hebrew | ||
| 2385 | // for these similar/same symbols: ,<.>. Idealy these symbols | ||
| 2386 | // should be the hebrew variation, if space allows it. | ||
| 2387 | |||
| 2388 | # if defined(HEBREW_ISRAEL) | ||
| 2389 | |||
| 2390 | case XP_HEB_AA: // | ||
| 2391 | if (record->event.pressed) { // key down | ||
| 2392 | // These shifts-up seem to work on GNU/Debian/Linux, otherwise it prints ':' | ||
| 2393 | if (shift_ison) send_string ( SS_UP(X_RSFT) SS_UP(X_LSFT) ";" ); // moved here from <esc> on standard hebrew | ||
| 2394 | else send_string ("/");// | ||
| 2395 | } break; | ||
| 2396 | |||
| 2397 | case XP_HEB_AB: // | ||
| 2398 | if (record->event.pressed) { // key down | ||
| 2399 | unicode_hex2output_single (HB_GERSH);// ׳ | ||
| 2400 | } | ||
| 2401 | break; | ||
| 2402 | |||
| 2403 | case XP_HEB_AC: // | ||
| 2404 | if (record->event.pressed) { // key down | ||
| 2405 | unicode_hex2output_single (HB_QOF);// ק | ||
| 2406 | } | ||
| 2407 | break; | ||
| 2408 | |||
| 2409 | # elif defined(HEBREW_QWERTY) | ||
| 2410 | |||
| 2411 | case XP_HEB_AA: // | ||
| 2412 | if (record->event.pressed) { // key down | ||
| 2413 | unicode_hex2output_single (HB_TAV);// ת | ||
| 2414 | } | ||
| 2415 | break; | ||
| 2416 | |||
| 2417 | case XP_HEB_AB: // | ||
| 2418 | if (record->event.pressed) { // key down | ||
| 2419 | unicode_hex2output_single (HB_TSDIS);// ץ | ||
| 2420 | } | ||
| 2421 | break; | ||
| 2422 | |||
| 2423 | case XP_HEB_AC: // | ||
| 2424 | if (record->event.pressed) { // key down | ||
| 2425 | unicode_hex2output_single (HB_QOF);// ק | ||
| 2426 | } | ||
| 2427 | break; | ||
| 2428 | |||
| 2429 | # endif // #HEBREW_* | ||
| 2430 | |||
| 2431 | case XP_HEB_AD: // | ||
| 2432 | if (record->event.pressed) { // key down | ||
| 2433 | unicode_hex2output_single (HB_RESH);// ר | ||
| 2434 | } | ||
| 2435 | break; | ||
| 2436 | |||
| 2437 | case XP_HEB_AE: // | ||
| 2438 | if (record->event.pressed) { // key down | ||
| 2439 | unicode_hex2output_single (HB_ALEF);// א | ||
| 2440 | |||
| 2441 | } | ||
| 2442 | break; | ||
| 2443 | |||
| 2444 | case XP_HEB_AF: // | ||
| 2445 | if (record->event.pressed) { // key down | ||
| 2446 | unicode_hex2output_single (HB_TET);// ט | ||
| 2447 | } | ||
| 2448 | break; | ||
| 2449 | |||
| 2450 | case XP_HEB_AG: // | ||
| 2451 | if (record->event.pressed) { // key down | ||
| 2452 | unicode_hex2output_single (HB_VAV);// ו | ||
| 2453 | } | ||
| 2454 | break; | ||
| 2455 | |||
| 2456 | case XP_HEB_AH: // | ||
| 2457 | if (record->event.pressed) { // key down | ||
| 2458 | unicode_hex2output_single (HB_NUNS);// ן | ||
| 2459 | } | ||
| 2460 | break; | ||
| 2461 | |||
| 2462 | case XP_HEB_AI: | ||
| 2463 | if (record->event.pressed) { // key down | ||
| 2464 | |||
| 2465 | # if defined(HEBREW_ISRAEL) | ||
| 2466 | // The logic is that it mirrors '", “„, ”≤, ‛’ in Dvorak Base and other layers. | ||
| 2467 | // Therefore the little and ring fingers are used. Mirroring ━─ and ┄┅ on DRA_ | ||
| 2468 | // layer, the outside on the keyboard is “big/fat”, the inside is “small/thin”, | ||
| 2469 | // like something protected in a shell. Hence: ……׳״ | ||
| 2470 | unicode_hex2output_single (HB_MEMS);// ם // ׳ is located elsewhere | ||
| 2471 | # elif defined(HEBREW_QWERTY) || defined(HEBREW_DVORAK) | ||
| 2472 | unicode_hex2output (HB_MEMS, HB_GERSH);// ם׳ | ||
| 2473 | # endif | ||
| 2474 | |||
| 2475 | } | ||
| 2476 | break; | ||
| 2477 | |||
| 2478 | case XP_HEB_AJ: // | ||
| 2479 | if (record->event.pressed) { // key down | ||
| 2480 | |||
| 2481 | # if defined(HEBREW_ISRAEL) | ||
| 2482 | unicode_hex2output_single (HB_PE);// פ // ״ is located elsewhere | ||
| 2483 | # elif defined(HEBREW_QWERTY) || defined(HEBREW_DVORAK) | ||
| 2484 | unicode_hex2output (HB_PE, HB_GRSHM);// פ״ | ||
| 2485 | # endif | ||
| 2486 | |||
| 2487 | } | ||
| 2488 | break; | ||
| 2489 | |||
| 2490 | // ------------------------- row 3 | ||
| 2491 | case XP_HEB_BA: // | ||
| 2492 | if (record->event.pressed) { // key down | ||
| 2493 | unicode_hex2output_single (HB_SHIN);// ש | ||
| 2494 | } | ||
| 2495 | break; | ||
| 2496 | |||
| 2497 | case XP_HEB_BB: // | ||
| 2498 | if (record->event.pressed) { // key down | ||
| 2499 | unicode_hex2output_single (HB_DALET);// ד | ||
| 2500 | } | ||
| 2501 | break; | ||
| 2502 | |||
| 2503 | case XP_HEB_BC: //Right-left-mark to the first free strong homerow finger on the left (middle) | ||
| 2504 | if (record->event.pressed) { // key down | ||
| 2505 | unicode_hex2output (HB_GIMEL, HB_RLM);// ג {RLM} | ||
| 2506 | } | ||
| 2507 | break; | ||
| 2508 | |||
| 2509 | case XP_HEB_BD: // The logic is that כ is the same key as 4 on another layer, which connects | ||
| 2510 | // with $, and other currencies in the same region (ģ). | ||
| 2511 | if (record->event.pressed) { // key down | ||
| 2512 | unicode_hex2output (HB_KAF, HB_SHEKL);// כ₪ | ||
| 2513 | } | ||
| 2514 | break; | ||
| 2515 | |||
| 2516 | case XP_HEB_BE: // | ||
| 2517 | if (record->event.pressed) { // key down | ||
| 2518 | unicode_hex2output_single (HB_AYIN);// ע | ||
| 2519 | } | ||
| 2520 | break; | ||
| 2521 | |||
| 2522 | case XP_HEB_BF: // | ||
| 2523 | if (record->event.pressed) { // key down | ||
| 2524 | unicode_hex2output_single (HB_YOD);// י | ||
| 2525 | } | ||
| 2526 | break; | ||
| 2527 | |||
| 2528 | case XP_HEB_BG: // | ||
| 2529 | if (record->event.pressed) { // key down | ||
| 2530 | unicode_hex2output_single (HB_GET);// ח | ||
| 2531 | } | ||
| 2532 | break; | ||
| 2533 | |||
| 2534 | case XP_HEB_BH: // | ||
| 2535 | if (record->event.pressed) { // key down | ||
| 2536 | unicode_hex2output (HB_LAMED, HB_LRM);// ל {LRM} | ||
| 2537 | } | ||
| 2538 | break; | ||
| 2539 | |||
| 2540 | case XP_HEB_BI: // | ||
| 2541 | if (record->event.pressed) { // key down | ||
| 2542 | unicode_hex2output_single (HB_KAFS);// ך | ||
| 2543 | } | ||
| 2544 | break; | ||
| 2545 | |||
| 2546 | case XP_HEB_BJ: // | ||
| 2547 | if (record->event.pressed) { // key down | ||
| 2548 | |||
| 2549 | # if defined(HEBREW_ISRAEL) || defined(HEBREW_QWERTY) | ||
| 2550 | if (shift_ison) send_string (":"); // : (the hebrew eqquivalent is apparently almost never used, and this saves space) | ||
| 2551 | else unicode_hex2output_single (HB_PES);// ף | ||
| 2552 | # elif defined(HEBREW_DVORAK) | ||
| 2553 | unicode_hex2output_single (HB_PES);// ף | ||
| 2554 | # endif | ||
| 2555 | |||
| 2556 | } | ||
| 2557 | break; | ||
| 2558 | |||
| 2559 | # if defined(HEBREW_ISRAEL) | ||
| 2560 | case XP_HEB_BK: // | ||
| 2561 | if (record->event.pressed) { // key down | ||
| 2562 | if (shift_ison) unicode_hex2output_single (HB_GRSHM);// ״ | ||
| 2563 | else send_string (","); // comma | ||
| 2564 | } | ||
| 2565 | break; | ||
| 2566 | # endif | ||
| 2567 | |||
| 2568 | case XP_HEB_MQF: // ־ Maqaf | ||
| 2569 | if (record->event.pressed) { // key down | ||
| 2570 | unicode_hex2output_single (HB_MAQAF);// ־ | ||
| 2571 | } | ||
| 2572 | break; | ||
| 2573 | |||
| 2574 | // ------------------------- row 2 | ||
| 2575 | case XP_HEB_CA: // | ||
| 2576 | if (record->event.pressed) { // key down | ||
| 2577 | // Hebrew harmonization + ':' | ||
| 2578 | # if defined(HEBREW_ISRAEL) || defined(HEBREW_QWERTY) | ||
| 2579 | unicode_hex2output_single (HB_ZAYIN);// ז | ||
| 2580 | # elif defined(HEBREW_DVORAK) | ||
| 2581 | if (shift_ison) send_string (":"); // | ||
| 2582 | else unicode_hex2output_single (HB_ZAYIN);// ז | ||
| 2583 | # endif | ||
| 2584 | } | ||
| 2585 | break; | ||
| 2586 | |||
| 2587 | case XP_HEB_CB: // | ||
| 2588 | if (record->event.pressed) { // key down | ||
| 2589 | unicode_hex2output_single (HB_SAMEG);// ס | ||
| 2590 | } | ||
| 2591 | break; | ||
| 2592 | |||
| 2593 | case XP_HEB_CC: // | ||
| 2594 | if (record->event.pressed) { // key down | ||
| 2595 | unicode_hex2output_single (HB_BET);// ב | ||
| 2596 | } | ||
| 2597 | break; | ||
| 2598 | |||
| 2599 | case XP_HEB_CD: // | ||
| 2600 | if (record->event.pressed) { // key down | ||
| 2601 | unicode_hex2output_single (HB_HE);// ה | ||
| 2602 | } | ||
| 2603 | break; | ||
| 2604 | |||
| 2605 | case XP_HEB_CE: // | ||
| 2606 | if (record->event.pressed) { // key down | ||
| 2607 | unicode_hex2output_single (HB_NUN);// נ | ||
| 2608 | } | ||
| 2609 | break; | ||
| 2610 | |||
| 2611 | case XP_HEB_CF: // | ||
| 2612 | if (record->event.pressed) { // key down | ||
| 2613 | unicode_hex2output_single (HB_MEM);// מ | ||
| 2614 | } | ||
| 2615 | break; | ||
| 2616 | |||
| 2617 | case XP_HEB_CG: // | ||
| 2618 | if (record->event.pressed) { // key down | ||
| 2619 | unicode_hex2output_single (HB_TSADI);// צ | ||
| 2620 | } | ||
| 2621 | break; | ||
| 2622 | |||
| 2623 | # if defined(HEBREW_ISRAEL) || defined(HEBREW_DVORAK) | ||
| 2624 | case XP_HEB_CH: // | ||
| 2625 | if (record->event.pressed) { // key down | ||
| 2626 | |||
| 2627 | # if defined(HEBREW_ISRAEL) | ||
| 2628 | if (shift_ison) send_string ("<"); // | ||
| 2629 | else unicode_hex2output_single (HB_TAV);// ת | ||
| 2630 | # else // HEBREW_DVORAK | ||
| 2631 | unicode_hex2output_single (HB_TAV);// ת | ||
| 2632 | # endif | ||
| 2633 | |||
| 2634 | } | ||
| 2635 | break; | ||
| 2636 | |||
| 2637 | case XP_HEB_CI: // | ||
| 2638 | if (record->event.pressed) { // key down | ||
| 2639 | |||
| 2640 | # if defined(HEBREW_ISRAEL) | ||
| 2641 | if (shift_ison) send_string (">"); // | ||
| 2642 | else unicode_hex2output_single (HB_TSDIS);// ץ | ||
| 2643 | # else // HEBREW_DVORAK | ||
| 2644 | unicode_hex2output_single (HB_TSDIS);// ץ | ||
| 2645 | # endif | ||
| 2646 | |||
| 2647 | } | ||
| 2648 | break; | ||
| 2649 | |||
| 2650 | case XP_HEB_CJ: // anomaly | ||
| 2651 | if (record->event.pressed) { // key down | ||
| 2652 | |||
| 2653 | # if defined(HEBREW_ISRAEL) | ||
| 2654 | if (shift_ison) send_string ("?"); // | ||
| 2655 | else send_string ("."); // | ||
| 2656 | # else // HEBREW_DVORAK | ||
| 2657 | unicode_hex2output_single (HB_QOF);// ק | ||
| 2658 | # endif | ||
| 2659 | |||
| 2660 | } | ||
| 2661 | break; | ||
| 2662 | # endif // HEBREW_* | ||
| 2663 | |||
| 2664 | // HB_D_VAV, | ||
| 2665 | // HB_VAVYD, | ||
| 2666 | // HB_D_YOD, | ||
| 2667 | # endif // Hebrew Base layer | ||
| 2346 | } | 2668 | } |
| 2347 | 2669 | ||
| 2348 | return true; | 2670 | return true; |
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.h index 5969525ca..354331591 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.h +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_macros.h | |||
| @@ -30,6 +30,7 @@ static uint16_t key_timer; // Used in _DDL to differentiate layer switching in h | |||
| 30 | 30 | ||
| 31 | short duo_press_nsy_dra = 0; // This remembers how many of the duo-press keys are being pressed: _NSY / _DRA layers | 31 | short duo_press_nsy_dra = 0; // This remembers how many of the duo-press keys are being pressed: _NSY / _DRA layers |
| 32 | short duo_press_acc_bon = 0; // This remembers how many of the duo-press keys are being pressed: _ACC / _BON layers | 32 | short duo_press_acc_bon = 0; // This remembers how many of the duo-press keys are being pressed: _ACC / _BON layers |
| 33 | layer_state_t state_recall; // Also used when leds on/off is pressed | ||
| 33 | 34 | ||
| 34 | void deactivate_all_but (int layer); | 35 | void deactivate_all_but (int layer); |
| 35 | void activate_this_layer (int layer); | 36 | void activate_this_layer (int layer); |
| @@ -40,5 +41,6 @@ void speed_led (int speed); | |||
| 40 | void indicate_fun_stay (void); | 41 | void indicate_fun_stay (void); |
| 41 | int write_number (long int input, short divide10); | 42 | int write_number (long int input, short divide10); |
| 42 | void isolate_rgblight_set (void); | 43 | void isolate_rgblight_set (void); |
| 44 | void set_led_colors_ (layer_state_t state); | ||
| 43 | 45 | ||
| 44 | 46 | ||
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_weurope.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_weurope.h index 56a50b80c..f4a5bdab7 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_weurope.h +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/unicode_weurope.h | |||
| @@ -18,6 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 18 | * | 18 | * |
| 19 | */ | 19 | */ |
| 20 | 20 | ||
| 21 | #pragma once | ||
| 22 | |||
| 21 | /* An amount of Unicode #defines | 23 | /* An amount of Unicode #defines |
| 22 | * - western european accented characters | 24 | * - western european accented characters |
| 23 | * - various punctuation symbols, different number formats, math symbols, other symbols. | 25 | * - various punctuation symbols, different number formats, math symbols, other symbols. |
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/user_config.h b/keyboards/thevankeyboards/minivan/keymaps/josjoha/user_config.h index 293fd15a0..6552c9a49 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/user_config.h +++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/user_config.h | |||
| @@ -18,6 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 18 | * | 18 | * |
| 19 | */ | 19 | */ |
| 20 | 20 | ||
| 21 | #pragma once | ||
| 21 | 22 | ||
| 22 | // ------------------------------------- ⬇ -------------------------------------- | 23 | // ------------------------------------- ⬇ -------------------------------------- |
| 23 | // Configuration: | 24 | // Configuration: |
| @@ -47,6 +48,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 47 | • Colemak | 48 | • Colemak |
| 48 | • Workman | 49 | • Workman |
| 49 | • Numpad | 50 | • Numpad |
| 51 | • Hebrew | ||
| 50 | 52 | ||
| 51 | -2- ➡ Eviscerations ( ① / ② ) ⬅ | 53 | -2- ➡ Eviscerations ( ① / ② ) ⬅ |
| 52 | • Single layout | 54 | • Single layout |
| @@ -146,6 +148,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 146 | // _Activate_ one of these two, _remove_ the other. | 148 | // _Activate_ one of these two, _remove_ the other. |
| 147 | //#define BASE_QWERTY_BASEARROW__DEF_BASE // _Activate_ if you want Qwerty with Base arrows on the ‛Default’ spot | 149 | //#define BASE_QWERTY_BASEARROW__DEF_BASE // _Activate_ if you want Qwerty with Base arrows on the ‛Default’ spot |
| 148 | //#define BASE_QWERTY_BASEARROW__ALT_BASE // _Activate_ if you want Qwerty with Base arrows on the ‛Alternate’ spot | 150 | //#define BASE_QWERTY_BASEARROW__ALT_BASE // _Activate_ if you want Qwerty with Base arrows on the ‛Alternate’ spot |
| 151 | // ➡ ➡ ➡ This Base layer has configuration options at the top of its file. See ./ base_qwerty_basearrow.h | ||
| 149 | // | 152 | // |
| 150 | // • Dvorak | 153 | // • Dvorak |
| 151 | // (a regular Dvorak layout) | 154 | // (a regular Dvorak layout) |
| @@ -174,7 +177,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 174 | // (a numerical keypad, one for left hand and one for right hand) | 177 | // (a numerical keypad, one for left hand and one for right hand) |
| 175 | // _Activate_ to get Numpad on Alternate. There is no option for Numpad on ‛Default’ base. | 178 | // _Activate_ to get Numpad on Alternate. There is no option for Numpad on ‛Default’ base. |
| 176 | #define BASE_NUMPAD__ALT_BASE // _Activate_ if you want Numpad on the ‛Alternate’ spot | 179 | #define BASE_NUMPAD__ALT_BASE // _Activate_ if you want Numpad on the ‛Alternate’ spot |
| 177 | // ➡ ➡ ➡ This Base layer has configuration options at the top of its file. See ./base_numpad.c | 180 | // ➡ ➡ ➡ This Base layer has configuration options at the top of its file. See ./base_numpad.h |
| 181 | // | ||
| 182 | // • Hebrew | ||
| 183 | // (a simple Hebrew layout) | ||
| 184 | // _Activate_ one of these two, _remove_ the other. | ||
| 185 | //#define BASE_HEBREW__DEF_BASE // _Activate_ if you want Hebrew on the ‛Default’ spot | ||
| 186 | //#define BASE_HEBREW__ALT_BASE // _Activate_ if you want Hebrew on the ‛Alternate’ spot | ||
| 187 | // ➡ ➡ ➡ This Base layer has configuration options at the top of its file. See ./base_hebrew.h | ||
| 178 | // | 188 | // |
| 179 | /* -2- ➡ Eviscerations ( ① / ② ) ⬅ | 189 | /* -2- ➡ Eviscerations ( ① / ② ) ⬅ |
| 180 | */ | 190 | */ |
| @@ -517,12 +527,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 517 | // Thinned out 2nd row: LSht ━ ─ ° • … ☐ ☑ ☑ ¿¡ ┄ ┅ RSht | 527 | // Thinned out 2nd row: LSht ━ ─ ° • … ☐ ☑ ☑ ¿¡ ┄ ┅ RSht |
| 518 | // | 528 | // |
| 519 | #define FULL_DRA_4THROW // _Activate_ to have symbols on all unshifted + shifted positions on _DRA, 4th row. | 529 | #define FULL_DRA_4THROW // _Activate_ to have symbols on all unshifted + shifted positions on _DRA, 4th row. |
| 520 | // Affected 4th row: „ ≤ ≥ ∅ ¢ ƒ ❦ 🙂 🙁 👍 👎 ⁽ ₍ ⁾ ₎ | 530 | // Affected 4th row: ¢ ƒ ⁽ ₍ ⁾ ₎ |
| 521 | // Full 4th row: BASE “„ ”≤ £≥ ∅ ¢ ±ƒ ❦ ♥ 🙂🙁 👍👎 ⁽₍ ⁾₎ Bkspc | 531 | // Full 4th row: BASE “„ ”≤ £≥ ∅ ¢ ±ƒ ❦ ♥ 🙂🙁 👍👎 ⁽₍ ⁾₎ Bkspc |
| 522 | // Thinned out 4th row: BASE “ ” £ ± ♥ Bkspc | 532 | // Thinned out 4th row: BASE “„ ”≤ £≥ ∅ ± ❦ ♥ 🙂🙁 👍👎 Bkspc |
| 523 | // | 533 | // |
| 524 | #define FULL_BON_4THROW // _Activate_ to have symbols on all unshifted + shifted positions on _BON, 4th row. | 534 | #define FULL_BON_4THROW // _Activate_ to have symbols on all unshifted + shifted positions on _BON, 4th row. |
| 525 | // Affected 4th row: 🛠 ¤ ∑ ‱ ٭ 😊 ⍨ ⃰ ⁻ ⁺ 🄯 © | 535 | // Affected 4th row: 🛠 ¤ ∑ ‱ ٭ 😊 ⍨ ⃰ ⁻ ⁺ 🄯 © ⃰ √ ⁻⁺ |
| 526 | // Full 4th row: BASE ‛🛠 ’⬆ ¤ 🄯 ∑ © ‰‱ ★٭ 😊⍨ × ⃰ √ ⁻⁺ Bkspc | 536 | // Full 4th row: BASE ‛🛠 ’⬆ ¤ 🄯 ∑ © ‰‱ ★٭ 😊⍨ × ⃰ √ ⁻⁺ Bkspc |
| 527 | // Thinned out 4th row: BASE ‛ ’⬆ ‰ ★ × Bkspc | 537 | // Thinned out 4th row: BASE ‛ ’⬆ ‰ ★ × Bkspc |
| 528 | // | 538 | // |
| @@ -559,7 +569,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 559 | # endif | 569 | # endif |
| 560 | // * Qwerty Base Arrow * | 570 | // * Qwerty Base Arrow * |
| 561 | # if defined(BASE_QWERTY_BASEARROW__DEF_BASE) || defined(BASE_QWERTY_BASEARROW__ALT_BASE) | 571 | # if defined(BASE_QWERTY_BASEARROW__DEF_BASE) || defined(BASE_QWERTY_BASEARROW__ALT_BASE) |
| 562 | # include "./base_qwerty_basearrow.h" // Your Keymap header/configuration file. | 572 | # include "./base_qwerty_basearrow.h" // qwerty base arrow, header |
| 573 | # endif | ||
| 574 | // * Hebrew * | ||
| 575 | # if defined(BASE_HEBREW__DEF_BASE) || defined(BASE_HEBREW__ALT_BASE) | ||
| 576 | # include "./base_hebrew.h" // Hebrew header | ||
| 563 | # endif | 577 | # endif |
| 564 | 578 | ||
| 565 | // // ⬇ insert your ./base_YOUR_KEYMAP.h #include here: | 579 | // // ⬇ insert your ./base_YOUR_KEYMAP.h #include here: |
