# Tags
#areas/hardware #areas/linux #areas/tech/windows #refined
# Umlaute on US-Keyboard
Step-by-step guide on how to create shortcuts for umlaute (or any unicode characters) on the Keychron Q7 (or any QMK-compatible keyboard)
## Setup QMK CLI and Toolbox
1. Open the `qmk_firmware` repository - https://github.com/qmk/qmk_firmware
2. Open the page for configuring unicode support - https://github.com/qmk/qmk_firmware/blob/master/docs/feature_unicode.md
3. Clone git repository and open the project in CLion
4. Install `QMK Toolbox` - https://github.com/qmk/qmk_toolbox
5. Install `QMK MSYS` (the QMK CLI)
6. Open `QMK MSYS`
7. `cd` into the `qmk_firmware` repository
8. run `qmk setup`
9. run `qmk compile -kb keychron/q7/ansi -km default` to test compile the default qmk firmware
10. Set the default keyboard with `qmk config user.keyboard=keychron/q7/ansi`
11. Set the default keymap name with `qmk config user.keymap=ReinhardtJ`
12. Create a new keymap `qmk new-keymap`
13. Compile the firmware with `qmk compile`
14. Open QMK Toolbox and load the newly compiled `.bin` file
## Create the keymap
1. add `UNICODE_ENABLE = yes` to the `rules.mk`
2. add the key codes for the umlauts to `keymap.c`
1. `Ä = UC(0xC4)`
2. `ä = UC(0xE4)`
3. `Ü = UC(0xDC)`
4. `ü = UC(0xFC)`
5. `Ö = UC(0xD6)`
6. `ö = UC(0xF6)`
7. `ẞ = UC(0x1E9E)`
8. `ß = UC(0xDF)`
## Flash the Keyboard
1. Reset the keyboard by holding `fn1 + j + z` for 4 seconds
2. plug out the keyboard
3. start QMK Toolbox
4. Remove the Spacebar, press the reset button
5. plug the keyboard back in
6. release the reset button
7. use QMK toolbox to flash the firmware to the keyboard
## Enable Input Mode
Depending on the OS, set the correct input mode, for example `#define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX` for Linux or `#define UNICODE_SELECTED_MODES UNICODE_MODE_WINCOMPOSE` for Windows in the `config.h`.
## Install WinCompose
For Windows, make sure to install WinCompose - https://github.com/samhocevar/wincompose
Enable auto startup.
## Bonus: Umlaute on a Keyboard using the Programmer Dvorak Layout
# References
**Forum**
https://forum.ubuntuusers.de/topic/umlaute-mit-englischer-tastatur-schreiben/
https://blog.florianheinle.de/englische-tastatur-umlaute
**QMK**
https://github.com/qmk/qmk_firmware/blob/master/docs/feature_unicode.md
https://github.com/qmk/qmk_firmware
https://github.com/qmk/qmk_firmware/blob/master/docs/feature_unicode.md
https://github.com/qmk/qmk_toolbox