Files
qmk_userspace/README.md

71 lines
2.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# QMK Userspace
This is a repository which allows for an external set of QMK keymaps to be
defined and compiled. This is useful to maintain keymaps without having to fork
the main QMK repository.
## Howto use it
This repository contains my somewhat unified configurations for the following
keyboards:
- Ferris bling 0.2
- Atreus42 promicro
- Xbows nature
Prerequisites:
1. `qmk` installed in the computer
2. Userspace configured on the computer
- `qmk config user.overlay_dir=$(realpath qmk_userspace)`
The goal of this repo is to store my custom configurations for
`PERMISSIVE_HOLD_PER_KEY` for instance and timings for mouse emulation and so on
to simplify further changes and synchronise the qmk configuration on different
computers.
The keyboard configuration can be done on the [online
configurator](https://config.qmk.fm/) using the [json files](./json).
Then, it can simply be transformed in a C file that can be used as is in the corresponding repository with:
```sh
qmk json2c <json file location> > keymap.c
```
Finally, to flash the firmware:
```sh
qmk flash -kb <keyboard type> -km custom
```
## Description of the layers
The main configuration relies on a 34 keys keyboard, lets say the ferris, as a
base with GASC homerow mods.
The base layer looks like this:
![Base Layer](./img/Layer-0.png)
`PERMISSIVE_HOLD` is disabled on home row keys to avoid false positive on rolls,
and enabled for thumb keys as there are few false positives in this case.
The internal thumb keys move to the nav/numpad layer on hold or space/tap on
tap. This layer is the following:
![Num-Nav Layer](./img/Layer-1.png)
Finally, pressing both internal thumb keys (or left external one) leads to the
function/mouse nav layer:
![Num-Nav Layer](./img/Layer-2.png)
This layer also allows accessing custom layers, such as here layer 3 that is the
`qwerty-ergol` compatibility layer or the layer 4 which is a gaming layer (not
described here).
## Left to do
- [ ] Replace `png` images with `svg`
- [ ] Automatize the firmware generations