Skip to content

Commit 50c33a2

Browse files
committed
add åäö
1 parent a33461d commit 50c33a2

File tree

3 files changed

+125
-39
lines changed

3 files changed

+125
-39
lines changed

config/corne.keymap

Lines changed: 3 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -3,42 +3,7 @@
33
#include <dt-bindings/zmk/bt.h>
44
#include <dt-bindings/zmk/pointing.h>
55
#include <dt-bindings/zmk/modifiers.h>
6-
7-
#define SE_AE SEMICOLON // Æ
8-
#define SE_OE SINGLE_QUOTE // Ø
9-
#define SE_AA LEFT_BRACKET // Å
10-
#define SE_QUOT DOUBLE_QUOTES // "
11-
#define SE_PLUS EQUALS // +
12-
#define SE_MINS MINUS // -
13-
#define SE_SCLN SEMICOLON // ;
14-
#define SE_COLN COLON // :
15-
#define SE_UNDS UNDERSCORE // _
16-
#define SE_COMM COMMA // ,
17-
#define SE_DOT PERIOD // .
18-
#define SE_LPRN LEFT_PAREN // (
19-
#define SE_RPRN RIGHT_PAREN // )
20-
#define SE_LCBR LEFT_CURLY_BRACE // {
21-
#define SE_RCBR RIGHT_CURLY_BRACE // }
22-
#define SE_PIPE PIPE // |
23-
#define SE_AMPR AMPERSAND // &
24-
#define SE_HASH HASH // #
25-
#define SE_AT ALTGR(DIGIT2) // @ on AltGr + 2
26-
#define SE_DLR ALTGR(DIGIT4) // $ on AltGr + 4
27-
#define SE_EURO ALTGR(DIGIT5) // € on AltGr + 5
28-
#define SE_LCBR ALTGR(DIGIT7) // { on AltGr + 7
29-
#define SE_RCBR ALTGR(DIGIT0) // } on AltGr + 0
30-
#define SE_LBKT ALTGR(DIGIT8) // [ on AltGr + 8
31-
#define SE_RBKT ALTGR(DIGIT9) // ] on AltGr + 9
32-
#define SE_PIPE ALTGR(DIGIT1) // | on AltGr + 1
33-
#define SE_BSLS ALTGR(MINUS) // \ on AltGr + -
34-
#define SE_SCLN ALTGR(COMMA) // ; on AltGr + ,
35-
#define SE_COLN ALTGR(PERIOD) // : on AltGr + .
36-
#define SE_HASH ALTGR(RIGHT_BRACE) // # on AltGr + '
37-
#define SE_LESS SHIFT(COMMA) // < on Shift + ,
38-
#define SE_GRTR SHIFT(PERIOD) // > on Shift + .
39-
#define SE_QUES SHIFT(MINUS) // ? on Shift + -
40-
#define SE_EXLM SHIFT(DIGIT1) // ! on Shift + 1
41-
#define SE_DQUO SHIFT(DIGIT2) // " on Shift + 2
6+
#include <behaviors/unicode.dtsi>
427

438
#define ZMK_POINTING_DEFAULT_MOVE_VAL 2250 // default: 600
449
#define ZMK_MOUSE_DEFAULT_MOVE_VAL 2250
@@ -56,9 +21,9 @@
5621
default_layer {
5722
display-name = "COLMAK";
5823
bindings = <
59-
&kp TAB &kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &kp SE_AA &kp ESC
24+
&kp TAB &kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &kp UC_SE_AO &kp ESC
6025
&kp LSHFT &kp A &kp R &kp S &kp T &kp G &kp M &kp N &kp E &kp I &kp O &kp SE_AE
61-
&kp LCTRL &kp X &kp C &kp D &kp V &kp Z &kp K &kp H &kp COMMA &kp DOT &kp SE_OE &kp FSLH
26+
&kp LCTRL &kp X &kp C &kp D &kp V &kp Z &kp K &kp H &kp COMMA &kp DOT &kp UC_SE_OE &kp FSLH
6227
&kp LGUI &mo 1 &kp SPACE &kp BSPC &mo 2 &kp RET
6328
>;
6429
};

config/keymap_swedish.h

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
// Copyright 2025 QMK
2+
// SPDX-License-Identifier: GPL-2.0-or-later
3+
4+
/*******************************************************************************
5+
88888888888 888 d8b .d888 d8b 888 d8b
6+
888 888 Y8P d88P" Y8P 888 Y8P
7+
888 888 888 888
8+
888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b
9+
888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K
10+
888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b.
11+
888 888 888 888 X88 888 888 888 Y8b. 888 X88
12+
888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P'
13+
888 888
14+
888 888
15+
888 888
16+
.d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888
17+
d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888
18+
888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888
19+
Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888
20+
"Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888
21+
888
22+
Y8b d88P
23+
"Y88P"
24+
*******************************************************************************/
25+
26+
#pragma once
27+
// #include "keycodes.h"
28+
// clang-format off
29+
30+
#define QMK_SWEDISH_KEYCODES_VERSION "0.0.1"
31+
#define QMK_SWEDISH_KEYCODES_VERSION_BCD 0x00000001
32+
#define QMK_SWEDISH_KEYCODES_VERSION_MAJOR 0
33+
#define QMK_SWEDISH_KEYCODES_VERSION_MINOR 0
34+
#define QMK_SWEDISH_KEYCODES_VERSION_PATCH 1
35+
36+
// Aliases
37+
#define SE_SECT KC_GRV // §
38+
#define SE_1 KC_1 // 1
39+
#define SE_2 KC_2 // 2
40+
#define SE_3 KC_3 // 3
41+
#define SE_4 KC_4 // 4
42+
#define SE_5 KC_5 // 5
43+
#define SE_6 KC_6 // 6
44+
#define SE_7 KC_7 // 7
45+
#define SE_8 KC_8 // 8
46+
#define SE_9 KC_9 // 9
47+
#define SE_0 KC_0 // 0
48+
#define SE_PLUS KC_MINS // +
49+
#define SE_ACUT KC_EQL // ´ (dead)
50+
#define SE_Q KC_Q // Q
51+
#define SE_W KC_W // W
52+
#define SE_E KC_E // E
53+
#define SE_R KC_R // R
54+
#define SE_T KC_T // T
55+
#define SE_Y KC_Y // Y
56+
#define SE_U KC_U // U
57+
#define SE_I KC_I // I
58+
#define SE_O KC_O // O
59+
#define SE_P KC_P // P
60+
#define SE_AA KC_LBRC // Å
61+
#define SE_DIAE KC_RBRC // ¨ (dead)
62+
#define SE_A KC_A // A
63+
#define SE_S KC_S // S
64+
#define SE_D KC_D // D
65+
#define SE_F KC_F // F
66+
#define SE_G KC_G // G
67+
#define SE_H KC_H // H
68+
#define SE_J KC_J // J
69+
#define SE_K KC_K // K
70+
#define SE_L KC_L // L
71+
#define SE_OE KC_SCLN // Ö
72+
#define SE_AE KC_QUOT // Ä
73+
#define SE_QUOT KC_NUHS // '
74+
#define SE_LABK KC_NUBS // <
75+
#define SE_Z KC_Z // Z
76+
#define SE_X KC_X // X
77+
#define SE_C KC_C // C
78+
#define SE_V KC_V // V
79+
#define SE_B KC_B // B
80+
#define SE_N KC_N // N
81+
#define SE_M KC_M // M
82+
#define SE_COMM KC_COMM // ,
83+
#define SE_DOT KC_DOT // .
84+
#define SE_MINS KC_SLSH // -
85+
#define SE_HALF S(SE_SECT) // ½
86+
#define SE_EXLM S(SE_1) // !
87+
#define SE_DQUO S(SE_2) // "
88+
#define SE_HASH S(SE_3) // #
89+
#define SE_CURR S(SE_4) // ¤
90+
#define SE_PERC S(SE_5) // %
91+
#define SE_AMPR S(SE_6) // &
92+
#define SE_SLSH S(SE_7) // /
93+
#define SE_LPRN S(SE_8) // (
94+
#define SE_RPRN S(SE_9) // )
95+
#define SE_EQL S(SE_0) // =
96+
#define SE_QUES S(SE_PLUS) // ?
97+
#define SE_GRV S(SE_ACUT) // ` (dead)
98+
#define SE_CIRC S(SE_DIAE) // ^ (dead)
99+
#define SE_ASTR S(SE_QUOT) // *
100+
#define SE_RABK S(SE_LABK) // >
101+
#define SE_SCLN S(SE_COMM) // ;
102+
#define SE_COLN S(SE_DOT) // :
103+
#define SE_UNDS S(SE_MINS) // _
104+
#define SE_AT ALGR(SE_2) // @
105+
#define SE_PND ALGR(SE_3) // £
106+
#define SE_DLR ALGR(SE_4) // $
107+
#define SE_EURO ALGR(SE_5) // €
108+
#define SE_LCBR ALGR(SE_7) // {
109+
#define SE_LBRC ALGR(SE_8) // [
110+
#define SE_RBRC ALGR(SE_9) // ]
111+
#define SE_RCBR ALGR(SE_0) // }
112+
#define SE_BSLS ALGR(SE_PLUS) // (backslash)
113+
#define SE_TILD ALGR(SE_DIAE) // ~ (dead)
114+
#define SE_PIPE ALGR(SE_LABK) // |
115+
#define SE_MICR ALGR(SE_M) // µ
116+

config/west.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,15 @@ manifest:
44
url-base: https://github.com/zmkfirmware
55
# Additional modules containing boards/shields/custom code can be listed here as well
66
# See https://docs.zephyrproject.org/3.2.0/develop/west/manifest.html#projects
7+
- name: urob
8+
url-base: https://github.com/urob
79
projects:
810
- name: zmk
911
remote: zmkfirmware
10-
revision: main
12+
revision: v0.3
1113
import: app/west.yml
14+
- name: zmk-unicode
15+
remote: urob
16+
revision: v0.3 # set to same as ZMK version above
1217
self:
1318
path: config

0 commit comments

Comments
 (0)