forked from markstos/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Create sv_SE Qwerty layout for ErgoDox
*NOTE:* it might still be desirable to set the software layout to sv_SE in your OS. Swedish (sv_SE) Qwerty layout for ErgoDox, based on the Default configuration I have tried making this as close of a match I could between the [default ErgoDox EZ configuration](https://ergodox-ez.com/pages/our-firmware) and a standard Swedish Qwerty layout. Notable differences from default: ================================= * There are three special character buttons (acute accent, circumflex/tilde and apostrophe/asterisk) that don't have any buttons to map to naturally. I've put these at other places: * Acute accent (´) can be found in the lower left corner, conveniently placed to reach for making an é. * Apostrophe (') was put in the lower left corner, close to acute accent. * Circumflex (^) and asterisk (*) was placed in the lower right corner. * Tilde (~) and diaeresis (¨) I couldn't find a good place for, so I left those out. I could only get the buttons to produce a single one of the characters. How can I get it to work properly? * The Alt button on right thumb was exchanged for AltGr (RAlt). * I changed the backslash in the numpad (layer 1) for a minus. Thought it was more sensible. * I didn't find a good place for the "<>|" button, so that one was left out. That is a problem that really needs to be resolved. Pipe can be found on layer one, however.
- preonic-2.0
- planck-light-1.0
- planck-6.1
- planck-6.0
- planck-5.0
- planck-4.2
- breakpoint_2019_08_30
- 0.6.439
- 0.6.438
- 0.6.437
- 0.6.436
- 0.6.435
- 0.6.434
- 0.6.433
- 0.6.432
- 0.6.431
- 0.6.430
- 0.6.429
- 0.6.428
- 0.6.427
- 0.6.426
- 0.6.425
- 0.6.424
- 0.6.423
- 0.6.422
- 0.6.421
- 0.6.420
- 0.6.419
- 0.6.418
- 0.6.417
- 0.6.416
- 0.6.415
- 0.6.414
- 0.6.413
- 0.6.412
- 0.6.406
- 0.6.405
- 0.6.404
- 0.6.403
- 0.6.402
- 0.6.401
- 0.6.400
- 0.6.399
- 0.6.398
- 0.6.397
- 0.6.396
- 0.6.395
- 0.6.394
- 0.6.393
- 0.6.392
- 0.6.391
- 0.6.390
- 0.6.389
- 0.6.388
- 0.6.387
- 0.6.386
- 0.6.385
- 0.6.384
- 0.6.383
- 0.6.382
- 0.6.381
- 0.6.380
- 0.6.379
- 0.6.378
- 0.6.377
- 0.6.376
- 0.6.375
- 0.6.374
- 0.6.373
- 0.6.372
- 0.6.371
- 0.6.370
- 0.6.369
- 0.6.368
- 0.6.367
- 0.6.366
- 0.6.365
- 0.6.364
- 0.6.363
- 0.6.362
- 0.6.361
- 0.6.360
- 0.6.359
- 0.6.358
- 0.6.357
- 0.6.356
- 0.6.355
- 0.6.354
- 0.6.353
- 0.6.352
- 0.6.351
- 0.6.350
- 0.6.349
- 0.6.348
- 0.6.347
- 0.6.346
- 0.6.345
- 0.6.344
- 0.6.343
- 0.6.342
- 0.6.341
- 0.6.340
- 0.6.339
- 0.6.338
- 0.6.337
- 0.6.336
- 0.6.335
- 0.6.334
- 0.6.333
- 0.6.332
- 0.6.331
- 0.6.330
- 0.6.329
- 0.6.328
- 0.6.327
- 0.6.326
- 0.6.325
- 0.6.324
- 0.6.323
- 0.6.322
- 0.6.321
- 0.6.320
- 0.6.319
- 0.6.318
- 0.6.317
- 0.6.316
- 0.6.315
- 0.6.314
- 0.6.313
- 0.6.312
- 0.6.311
- 0.6.310
- 0.6.309
- 0.6.308
- 0.6.307
- 0.6.306
- 0.6.305
- 0.6.304
- 0.6.303
- 0.6.302
- 0.6.301
- 0.6.300
- 0.6.299
- 0.6.298
- 0.6.297
- 0.6.296
- 0.6.295
- 0.6.294
- 0.6.293
- 0.6.292
- 0.6.291
- 0.6.290
- 0.6.289
- 0.6.288
- 0.6.287
- 0.6.286
- 0.6.285
- 0.6.284
- 0.6.283
- 0.6.282
- 0.6.281
- 0.6.280
- 0.6.279
- 0.6.278
- 0.6.277
- 0.6.276
- 0.6.275
- 0.6.274
- 0.6.273
- 0.6.272
- 0.6.271
- 0.6.270
- 0.6.269
- 0.6.268
- 0.6.267
- 0.6.266
- 0.6.265
- 0.6.264
- 0.6.263
- 0.6.262
- 0.6.261
- 0.6.260
- 0.6.259
- 0.6.258
- 0.6.257
- 0.6.256
- 0.6.255
- 0.6.254
- 0.6.253
- 0.6.252
- 0.6.251
- 0.6.250
- 0.6.249
- 0.6.248
- 0.6.247
- 0.6.246
- 0.6.245
- 0.6.244
- 0.6.243
- 0.6.242
- 0.6.241
- 0.6.240
- 0.6.239
- 0.6.238
- 0.6.237
- 0.6.236
- 0.6.235
- 0.6.234
- 0.6.233
- 0.6.232
- 0.6.231
- 0.6.230
- 0.6.229
- 0.6.228
- 0.6.227
- 0.6.226
- 0.6.225
- 0.6.224
- 0.6.223
- 0.6.222
- 0.6.221
- 0.6.220
- 0.6.219
- 0.6.218
- 0.6.217
- 0.6.216
- 0.6.215
- 0.6.214
- 0.6.213
- 0.6.212
- 0.6.211
- 0.6.210
- 0.6.209
- 0.6.208
- 0.6.207
- 0.6.206
- 0.6.205
- 0.6.204
- 0.6.203
- 0.6.202
- 0.6.201
- 0.6.200
- 0.6.199
- 0.6.198
- 0.6.197
- 0.6.196
- 0.6.195
- 0.6.194
- 0.6.193
- 0.6.192
- 0.6.191
- 0.6.190
- 0.6.189
- 0.6.188
- 0.6.187
- 0.6.186
- 0.6.185
- 0.6.184
- 0.6.183
- 0.6.182
- 0.6.181
- 0.6.180
- 0.6.179
- 0.6.178
- 0.6.177
- 0.6.176
- 0.6.175
- 0.6.174
- 0.6.173
- 0.6.172
- 0.6.171
- 0.6.170
- 0.6.169
- 0.6.168
- 0.6.167
- 0.6.166
- 0.6.165
- 0.6.164
- 0.6.163
- 0.6.162
- 0.6.161
- 0.6.160
- 0.6.159
- 0.6.158
- 0.6.157
- 0.6.156
- 0.6.155
- 0.6.154
- 0.6.153
- 0.6.152
- 0.6.151
- 0.6.150
- 0.6.149
- 0.6.148
- 0.6.147
- 0.6.146
- 0.6.145
- 0.6.144
- 0.6.143
- 0.6.142
- 0.6.141
- 0.6.140
- 0.6.139
- 0.6.138
- 0.6.137
- 0.6.136
- 0.6.135
- 0.6.134
- 0.6.133
- 0.6.132
- 0.6.131
- 0.6.130
- 0.6.129
- 0.6.128
- 0.6.127
- 0.6.126
- 0.6.125
- 0.6.124
- 0.6.123
- 0.6.122
- 0.6.121
- 0.6.120
- 0.6.119
- 0.6.118
- 0.6.117
- 0.6.116
- 0.6.115
- 0.6.114
- 0.6.113
- 0.6.112
- 0.6.111
- 0.6.110
- 0.6.109
- 0.6.108
- 0.6.107
- 0.6.106
- 0.6.105
- 0.6.104
- 0.6.103
- 0.6.102
- 0.6.101
- 0.6.100
- 0.6.99
- 0.6.98
- 0.6.97
- 0.6.96
- 0.6.95
- 0.6.94
- 0.6.93
- 0.6.92
- 0.6.91
- 0.6.90
- 0.6.89
- 0.6.88
- 0.6.87
- 0.6.86
- 0.6.85
- 0.6.84
- 0.6.83
- 0.6.82
- 0.6.81
- 0.6.80
- 0.6.79
- 0.6.78
- 0.6.77
- 0.6.76
- 0.6.75
- 0.6.74
- 0.6.73
- 0.6.72
- 0.6.71
- 0.6.70
- 0.6.69
- 0.6.68
- 0.6.67
- 0.6.66
- 0.6.65
- 0.6.64
- 0.6.63
- 0.6.62
- 0.6.61
- 0.6.60
- 0.6.59
- 0.6.58
- 0.6.57
- 0.6.56
- 0.6.55
- 0.6.54
- 0.6.53
- 0.6.52
- 0.6.51
- 0.6.50
- 0.6.49
- 0.6.48
- 0.6.47
- 0.6.46
- 0.6.45
- 0.6.44
- 0.6.43
- 0.6.42
- 0.6.41
- 0.6.40
- 0.6.39
- 0.6.38
- 0.6.37
- 0.6.36
- 0.6.35
- 0.6.34
- 0.6.33
- 0.6.32
- 0.6.31
- 0.6.30
- 0.6.29
- 0.6.28
- 0.6.27
- 0.6.26
- 0.6.25
- 0.6.24
- 0.6.23
- 0.6.22
- 0.6.21
- 0.6.20
- 0.6.19
- 0.6.18
- 0.6.17
- 0.6.16
- 0.6.15
- 0.6.14
- 0.6.13
- 0.6.12
- 0.6.11
- 0.6.10
- 0.6.9
- 0.6.8
- 0.6.7
- 0.6.6
- 0.6.5
- 0.6.4
- 0.6.3
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.264
- 0.5.263
- 0.5.262
- 0.5.261
- 0.5.260
- 0.5.259
- 0.5.258
- 0.5.257
- 0.5.256
- 0.5.255
- 0.5.254
- 0.5.253
- 0.5.252
- 0.5.251
- 0.5.250
- 0.5.249
- 0.5.248
- 0.5.247
- 0.5.246
- 0.5.245
- 0.5.244
- 0.5.243
- 0.5.242
- 0.5.241
- 0.5.240
- 0.5.239
- 0.5.238
- 0.5.237
- 0.5.236
- 0.5.235
- 0.5.234
- 0.5.233
- 0.5.232
- 0.5.231
- 0.5.230
- 0.5.229
- 0.5.228
- 0.5.227
- 0.5.226
- 0.5.225
- 0.5.224
- 0.5.223
- 0.5.222
- 0.5.221
- 0.5.220
- 0.5.219
- 0.5.218
- 0.5.217
- 0.5.216
- 0.5.215
- 0.5.214
- 0.5.213
- 0.5.212
- 0.5.211
- 0.5.210
- 0.5.209
- 0.5.208
- 0.5.207
- 0.5.206
- 0.5.205
- 0.5.204
- 0.5.203
- 0.5.202
- 0.5.201
- 0.5.200
- 0.5.199
- 0.5.198
- 0.5.197
- 0.5.196
- 0.5.195
- 0.5.194
- 0.5.193
- 0.5.192
- 0.5.191
- 0.5.190
- 0.5.189
- 0.5.188
- 0.5.187
- 0.5.186
- 0.5.185
- 0.5.184
- 0.5.183
- 0.5.182
- 0.5.181
- 0.5.180
- 0.5.179
- 0.5.178
- 0.5.177
- 0.5.176
- 0.5.175
- 0.5.174
- 0.5.173
- 0.5.172
- 0.5.171
- 0.5.170
- 0.5.169
- 0.5.168
- 0.5.167
- 0.5.166
- 0.5.165
- 0.5.164
- 0.5.163
- 0.5.162
- 0.5.161
- 0.5.160
- 0.5.159
- 0.5.158
- 0.5.157
- 0.5.156
- 0.5.155
- 0.5.154
- 0.5.153
- 0.5.152
- 0.5.151
- 0.5.150
- 0.5.149
- 0.5.148
- 0.5.147
- 0.5.146
- 0.5.145
- 0.5.144
- 0.5.143
- 0.5.142
- 0.5.141
- 0.5.140
- 0.5.139
- 0.5.138
- 0.5.137
- 0.5.136
- 0.5.135
- 0.5.134
- 0.5.133
- 0.5.132
- 0.5.131
- 0.5.130
- 0.5.129
- 0.5.128
- 0.5.127
- 0.5.126
- 0.5.125
- 0.5.124
- 0.5.123
- 0.5.122
- 0.5.121
- 0.5.120
- 0.5.119
- 0.5.118
- 0.5.117
- 0.5.116
- 0.5.115
- 0.5.114
- 0.5.113
- 0.5.112
- 0.5.111
- 0.5.110
- 0.5.109
- 0.5.108
- 0.5.107
- 0.5.106
- 0.5.105
- 0.5.104
- 0.5.103
- 0.5.102
- 0.5.101
- 0.5.100
- 0.5.99
- 0.5.98
- 0.5.97
- 0.5.96
- 0.5.95
- 0.5.94
- 0.5.93
- 0.5.92
- 0.5.91
- 0.5.90
- 0.5.89
- 0.5.88
- 0.5.87
- 0.5.86
- 0.5.85
- 0.5.84
- 0.5.83
- 0.5.82
- 0.5.81
- 0.5.80
- 0.5.79
- 0.5.78
- 0.5.77
- 0.5.76
- 0.5.75
- 0.5.74
- 0.5.73
- 0.5.72
- 0.5.71
- 0.5.70
Showing
3 changed files
with
335 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,247 @@ | ||
/* Copyright 2017 Andreas Lindhé | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#include "ergodox.h" | ||
#include "debug.h" | ||
#include "action_layer.h" | ||
#include "version.h" | ||
#include "keymap_swedish.h" | ||
|
||
#define BASE 0 // default layer | ||
#define SYMB 1 // symbols | ||
#define MDIA 2 // media keys | ||
|
||
enum custom_keycodes { | ||
PLACEHOLDER = SAFE_RANGE, // can always be here | ||
EPRM, | ||
VRSN, | ||
RGB_SLD | ||
}; | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
/* Keymap 0: Basic layer | ||
* | ||
* ,--------------------------------------------------. ,--------------------------------------------------. | ||
* | ½ | ! | " | # | # | % | LEFT | | RIGHT| & | / | ( | ) | = | ? | | ||
* | § | 1 | 2 @ | 3 £ | 4 $ | 5 | | | | 6 | 7 { | 8 [ | 9 ] | 0 } | + \ | | ||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
* | Delete | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | Å | | ||
* | | | | | | | | | | | | | | | | | ||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
* | Caps | A | S | D | F | G |------| |------| H | J | K | L |Ö / L2|Ä / Cmd | | ||
* | Lock | | | | | | Hyper| | Meh | | | | | | | | ||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
* | Left |Z/Ctrl| X | C | V | B | | | | N | M | ; | : |_/Ctrl| RShift | | ||
* | Shift | | | | | | | | | | | , | . |- | | | ||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
* | '/L1 | ` |AltShf| Left | Right| | Up | Down | ^ | * | ~L1 | | ||
* | | ' | | | | | | | | | | | ||
* `----------------------------------' `----------------------------------' | ||
* ,-------------. ,---------------. | ||
* | App | LGui | | AltGr|Ctrl/Esc| | ||
* ,------|------|------| |------+--------+------. | ||
* | | | Home | | PgUp | | | | ||
* | Space|Back- |------| |------| Tab |Enter | | ||
* | |space | End | | PgDn | | | | ||
* `--------------------' `----------------------' | ||
*/ | ||
// If it accepts an argument (i.e, is a function), it doesn't need KC_. | ||
// Otherwise, it needs KC_* | ||
[BASE] = KEYMAP( // layer 0 : default | ||
// left hand | ||
NO_HALF, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, | ||
KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), | ||
KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, | ||
KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), | ||
LT(SYMB,NO_APOS), NO_ACUT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, | ||
ALT_T(KC_APP), KC_LGUI, | ||
KC_HOME, | ||
KC_SPC,KC_BSPC,KC_END, | ||
// right hand | ||
KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, NO_PLUS, | ||
TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AA, | ||
KC_H, KC_J, KC_K, KC_L, LT(MDIA, NO_OSLH), GUI_T(NO_AE), | ||
MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(NO_MINS), KC_RSFT, | ||
KC_UP, KC_DOWN, NO_CIRC, NO_ASTR, KC_FN1, | ||
NO_ALGR, CTL_T(KC_ESC), | ||
KC_PGUP, | ||
KC_PGDN,KC_TAB, KC_ENT | ||
), | ||
|
||
/* Keymap 1: Symbol Layer | ||
* | ||
* ,--------------------------------------------------. ,--------------------------------------------------. | ||
* |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | | ||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
* | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | | ||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
* | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | | ||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
* | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | | ||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
* | | | | | | | | . | 0 | = | | | ||
* `----------------------------------' `----------------------------------' | ||
* ,-------------. ,-------------. | ||
* |Animat| | |Toggle|Solid | | ||
* ,------|------|------| |------+------+------. | ||
* |Bright|Bright| | | |Hue- |Hue+ | | ||
* |ness- |ness+ |------| |------| | | | ||
* | | | | | | | | | ||
* `--------------------' `--------------------' | ||
*/ | ||
// SYMBOLS | ||
[SYMB] = KEYMAP( | ||
// left hand | ||
VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, | ||
KC_TRNS,KC_EXLM,NO_AT, NO_LCBR,NO_RCBR,NO_PIPE,KC_TRNS, | ||
KC_TRNS,KC_HASH,NO_DLR, NO_LPRN,NO_RPRN,NO_GRV, | ||
KC_TRNS,KC_PERC,NO_CIRC,NO_LBRC,NO_RBRC,NO_TILD,KC_TRNS, | ||
EPRM,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | ||
RGB_MOD,KC_TRNS, | ||
KC_TRNS, | ||
RGB_VAD,RGB_VAI,KC_TRNS, | ||
// right hand | ||
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, | ||
KC_TRNS, KC_UP, KC_7, KC_8, KC_9, NO_ASTR, KC_F12, | ||
KC_DOWN, KC_4, KC_5, KC_6, NO_PLUS, KC_TRNS, | ||
KC_TRNS, NO_AMPR, KC_1, KC_2, KC_3, NO_MINS, KC_TRNS, | ||
KC_TRNS,KC_DOT, KC_0, NO_EQL, KC_TRNS, | ||
RGB_TOG, RGB_SLD, | ||
KC_TRNS, | ||
KC_TRNS, RGB_HUD, RGB_HUI | ||
), | ||
|
||
/* Keymap 2: Media and mouse keys | ||
* | ||
* ,--------------------------------------------------. ,--------------------------------------------------. | ||
* | | | | | | | | | | | | | | | | | ||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
* | | | | MsUp | | | | | | | | | | | | | ||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
* | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | | ||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
* | | | | | | | | | | | | Prev | Next | | | | ||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
* | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | | ||
* `----------------------------------' `----------------------------------' | ||
* ,-------------. ,-------------. | ||
* | | | | | | | ||
* ,------|------|------| |------+------+------. | ||
* | | | | | | |Brwser| | ||
* | | |------| |------| |Back | | ||
* | | | | | | | | | ||
* `--------------------' `--------------------' | ||
*/ | ||
// MEDIA AND MOUSE | ||
[MDIA] = KEYMAP( | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, | ||
KC_TRNS, KC_TRNS, | ||
KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, | ||
// right hand | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, | ||
KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, | ||
KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_WBAK | ||
), | ||
}; | ||
|
||
const uint16_t PROGMEM fn_actions[] = { | ||
[1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) | ||
}; | ||
|
||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||
{ | ||
// MACRODOWN only works in this function | ||
switch(id) { | ||
case 0: | ||
if (record->event.pressed) { | ||
SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||
} | ||
break; | ||
case 1: | ||
if (record->event.pressed) { // For resetting EEPROM | ||
eeconfig_init(); | ||
} | ||
break; | ||
} | ||
return MACRO_NONE; | ||
}; | ||
|
||
bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
switch (keycode) { | ||
// dynamically generate these. | ||
case EPRM: | ||
if (record->event.pressed) { | ||
eeconfig_init(); | ||
} | ||
return false; | ||
break; | ||
case VRSN: | ||
if (record->event.pressed) { | ||
SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||
} | ||
return false; | ||
break; | ||
case RGB_SLD: | ||
if (record->event.pressed) { | ||
#ifdef RGBLIGHT_ENABLE | ||
rgblight_mode(1); | ||
#endif | ||
} | ||
return false; | ||
break; | ||
} | ||
return true; | ||
} | ||
|
||
// Runs just one time when the keyboard initializes. | ||
void matrix_init_user(void) { | ||
|
||
}; | ||
|
||
|
||
// Runs constantly in the background, in a loop. | ||
void matrix_scan_user(void) { | ||
|
||
uint8_t layer = biton32(layer_state); | ||
|
||
ergodox_board_led_off(); | ||
ergodox_right_led_1_off(); | ||
ergodox_right_led_2_off(); | ||
ergodox_right_led_3_off(); | ||
switch (layer) { | ||
// TODO: Make this relevant to the ErgoDox EZ. | ||
case 1: | ||
ergodox_right_led_1_on(); | ||
break; | ||
case 2: | ||
ergodox_right_led_2_on(); | ||
break; | ||
default: | ||
// none | ||
break; | ||
} | ||
|
||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# Swedish (sv_SE) Qwerty layout for ErgoDox EZ, based on the Default configuration | ||
|
||
*NOTE:* it might still be desirable to set the software layout to sv_SE in your | ||
OS. | ||
|
||
Remind me and I'll provide a picture of the layout. | ||
|
||
I have tried making this as close of a match I could between the [default | ||
ErgoDox EZ configuration](https://ergodox-ez.com/pages/our-firmware) and a | ||
standard Swedish Qwerty layout. | ||
|
||
## Notable differences from default: | ||
|
||
* There are three special character buttons (acute accent, circumflex/tilde and | ||
apostrophe/asterisk) that don't have any buttons to map to naturally. I've put | ||
these at other places: | ||
|
||
* Acute accent (´) can be found in the lower left corner, conveniently | ||
placed to reach for making an é. | ||
|
||
* Apostrophe (') was put in the lower left corner, close to acute accent. | ||
|
||
* Circumflex (^) and asterisk (*) was placed in the lower right corner. | ||
|
||
* Tilde (~) and diaeresis (¨) I couldn't find a good place for, so I left | ||
those out. I could only get the buttons to produce a single one of the | ||
characters. How can I get it to work properly? | ||
|
||
* The Alt button on right thumb was exchanged for AltGr (RAlt). | ||
|
||
* I changed the backslash in the numpad (layer 1) for a minus. Thought it was | ||
more sensible. | ||
|
||
* I didn't find a good place for the "<>|" button, so that one was left out. | ||
That is a problem that really needs to be resolved. Pipe can be found on layer | ||
one, however. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
/* Copyright 2017 Andreas Lindhé | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#ifndef KEYMAP_SWEDISH_H | ||
#define KEYMAP_SWEDISH_H | ||
|
||
#include "keymap_nordic.h" | ||
|
||
// There are slight differrences in the keyboards in the nordic contries | ||
|
||
// Swedish redifinitions from the nordic keyset | ||
#undef NO_AE | ||
#define NO_AE KC_QUOT // ä | ||
#undef NO_CIRC | ||
#define NO_CIRC LSFT(KC_RBRC) // ^ | ||
#undef NO_GRV | ||
#define NO_GRV LSFT(NO_BSLS) // | ||
#undef NO_OSLH | ||
#define NO_OSLH KC_SCLN // ö | ||
|
||
// Additional Swedish keys not defined in the nordic keyset | ||
#define NO_AA KC_LBRC // å | ||
#define NO_ASTR LSFT(KC_BSLS) // * | ||
|
||
// Norwegian unique MAC characters (not vetted for Swedish) | ||
#define NO_ACUT_MAC KC_EQL // = | ||
#define NO_APOS_MAC KC_NUBS // ' | ||
#define NO_AT_MAC KC_BSLS // @ | ||
#define NO_BSLS_MAC ALGR(LSFT(KC_7)) // '\' | ||
#define NO_DLR_MAC LSFT(KC_4) // $ | ||
#define NO_GRV_MAC ALGR(NO_BSLS) // ` | ||
#define NO_GRTR_MAC LSFT(KC_GRV) // > | ||
#define NO_LCBR_MAC ALGR(LSFT(KC_8)) // } | ||
#define NO_LESS_MAC KC_GRV // > | ||
#define NO_PIPE_MAC ALGR(KC_7) // | | ||
#define NO_RCBR_MAC ALGR(LSFT(KC_9)) // } | ||
|
||
#endif | ||
|