mirror of
https://github.com/qmk/qmk_userspace.git
synced 2025-08-30 04:20:47 +00:00
Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f242360415 | |||
| 899d61864b | |||
| 761c043b98 | |||
| 3eb651dc3a | |||
|
|
41ee8332d1 | ||
|
|
35edec2998 | ||
|
|
e6f22f98b2 | ||
|
|
0f10c50b4c | ||
|
|
7672002109 | ||
|
|
6ddb67dc56 | ||
|
|
67fac7803e | ||
|
|
c8dcd9291b | ||
|
|
5212d63b29 |
2
.clangd
2
.clangd
@@ -1,4 +1,4 @@
|
||||
CompileFlags:
|
||||
Add: [-Wno-unknown-attributes, -Wno-maybe-uninitialized, -Wno-unknown-warning-option]
|
||||
Remove: [-W*, -mcall-prologues]
|
||||
Remove: [-W*, -mmcu=*, -mcpu=*, -mfpu=*, -mfloat-abi=*, -mno-unaligned-access, -mno-thumb-interwork, -mcall-prologues, -D__has_include*]
|
||||
Compiler: clang
|
||||
|
||||
33
.devcontainer/devcontainer.json
Normal file
33
.devcontainer/devcontainer.json
Normal file
@@ -0,0 +1,33 @@
|
||||
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
||||
// README at: https://github.com/devcontainers/templates/tree/main/src/debian
|
||||
{
|
||||
"name": "QMK CLI",
|
||||
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
||||
"image": "ghcr.io/qmk/qmk_cli",
|
||||
"customizations": {
|
||||
"vscode": {
|
||||
"extensions": [
|
||||
"amodio.toggle-excluded-files",
|
||||
"EditorConfig.EditorConfig",
|
||||
"xaver.clang-format",
|
||||
"llvm-vs-code-extensions.vscode-clangd",
|
||||
"bierner.github-markdown-preview",
|
||||
"donjayamanne.git-extension-pack",
|
||||
"ms-vscode-remote.remote-containers"
|
||||
]
|
||||
}
|
||||
},
|
||||
"postCreateCommand": "${containerWorkspaceFolder}/.devcontainer/setup.sh ${containerWorkspaceFolder}"
|
||||
|
||||
// Features to add to the dev container. More info: https://containers.dev/features.
|
||||
// "features": {},
|
||||
|
||||
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
||||
// "forwardPorts": [],
|
||||
|
||||
// Configure tool-specific properties.
|
||||
// "customizations": {},
|
||||
|
||||
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
||||
// "remoteUser": "root"
|
||||
}
|
||||
23
.devcontainer/setup.sh
Executable file
23
.devcontainer/setup.sh
Executable file
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -eEuo pipefail
|
||||
|
||||
wget https://bootstrap.pypa.io/get-pip.py
|
||||
python3 get-pip.py
|
||||
python3 -m pip install qmk
|
||||
rm get-pip.py
|
||||
|
||||
python3 -m pip install --upgrade milc
|
||||
|
||||
userspacePath="$1"
|
||||
|
||||
git config --global --add safe.directory "$userspacePath"
|
||||
git submodule update --init --recursive
|
||||
|
||||
[ -d /workspaces/qmk_firmware ] || git clone https://github.com/qmk/qmk_firmware.git /workspaces/qmk_firmware
|
||||
git config --global --add safe.directory /workspaces/qmk_firmware
|
||||
|
||||
qmk config user.qmk_home=/workspaces/qmk_firmware
|
||||
qmk config user.overlay_dir="$userspacePath"
|
||||
|
||||
qmk git-submodule
|
||||
4
.github/workflows/build_binaries.yaml
vendored
4
.github/workflows/build_binaries.yaml
vendored
@@ -8,13 +8,13 @@ permissions:
|
||||
jobs:
|
||||
build:
|
||||
name: 'QMK Userspace Build'
|
||||
uses: qmk/.github/.github/workflows/qmk_userspace_build.yml@qmk-userspace
|
||||
uses: qmk/.github/.github/workflows/qmk_userspace_build.yml@main
|
||||
with:
|
||||
qmk_repo: qmk/qmk_firmware
|
||||
qmk_ref: master
|
||||
|
||||
publish:
|
||||
name: 'QMK Userspace Publish'
|
||||
uses: qmk/.github/.github/workflows/qmk_userspace_publish.yml@qmk-userspace
|
||||
uses: qmk/.github/.github/workflows/qmk_userspace_publish.yml@main
|
||||
if: always() && !cancelled()
|
||||
needs: build
|
||||
|
||||
15
.gitignore
vendored
15
.gitignore
vendored
@@ -1,3 +1,16 @@
|
||||
# Junk files
|
||||
*.bak
|
||||
*.swp
|
||||
*~
|
||||
.DS_Store
|
||||
._*
|
||||
|
||||
# Firmware files
|
||||
*.hex
|
||||
*.bin
|
||||
*.uf2
|
||||
*.uf2
|
||||
|
||||
# clangd
|
||||
compile_commands.json
|
||||
.clangd/
|
||||
.cache/
|
||||
|
||||
12
.vscode/extensions.json
vendored
Normal file
12
.vscode/extensions.json
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
// Suggested extensions
|
||||
{
|
||||
"recommendations": [
|
||||
"amodio.toggle-excluded-files",
|
||||
"EditorConfig.EditorConfig",
|
||||
"xaver.clang-format",
|
||||
"llvm-vs-code-extensions.vscode-clangd",
|
||||
"bierner.github-markdown-preview",
|
||||
"donjayamanne.git-extension-pack",
|
||||
"ms-vscode-remote.remote-containers"
|
||||
]
|
||||
}
|
||||
@@ -7,6 +7,7 @@ This is a template repository which allows for an external set of QMK keymaps to
|
||||
1. Run the normal `qmk setup` procedure if you haven't already done so -- see [QMK Docs](https://docs.qmk.fm/#/newbs) for details.
|
||||
1. Fork this repository
|
||||
1. Clone your fork to your local machine
|
||||
1. Enable userspace in QMK config using `qmk config user.overlay_dir="$(realpath qmk_userspace)"`
|
||||
1. Add a new keymap for your board using `qmk new-keymap`
|
||||
* This will create a new keymap in the `keyboards` directory, in the same location that would normally be used in the main QMK repository. For example, if you wanted to add a keymap for the Planck, it will be created in `keyboards/planck/keymaps/<your keymap name>`
|
||||
* You can also create a new keymap using `qmk new-keymap -kb <your_keyboard> -km <your_keymap>`
|
||||
@@ -15,7 +16,7 @@ This is a template repository which allows for an external set of QMK keymaps to
|
||||
1. Add your keymap(s) to the build by running `qmk userspace-add -kb <your_keyboard> -km <your_keymap>`
|
||||
* This will automatically update your `qmk.json` file
|
||||
* Corresponding `qmk userspace-remove -kb <your_keyboard> -km <your_keymap>` will delete it
|
||||
* Listing the build targets can be done with with `qmk userspace-list`
|
||||
* Listing the build targets can be done with `qmk userspace-list`
|
||||
1. Commit your changes
|
||||
|
||||
## Howto build with GitHub
|
||||
@@ -55,4 +56,4 @@ This can also be used to control which fork is used, though only upstream `qmk_f
|
||||
|
||||
1. (First time only) `git submodule add https://github.com/qmk/qmk_firmware.git`
|
||||
1. (To update) `git submodule update --init --recursive`
|
||||
1. Commit your changes to your userspace repository
|
||||
1. Commit your changes to your userspace repository
|
||||
|
||||
47
keyboards/handwired/5x6_split/keymaps/wholteza/keymap.c
Normal file
47
keyboards/handwired/5x6_split/keymaps/wholteza/keymap.c
Normal file
@@ -0,0 +1,47 @@
|
||||
/* Copyright 2025 Zackarias Montell @Wholteza
|
||||
*
|
||||
* 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 QMK_KEYBOARD_H
|
||||
#include "keymap_swedish.h"
|
||||
|
||||
enum layer_names {
|
||||
_BASE,
|
||||
_NUM,
|
||||
_SYM
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BASE] = LAYOUT(
|
||||
KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS,
|
||||
KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG,
|
||||
KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA,
|
||||
KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT,
|
||||
KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL
|
||||
),
|
||||
[_NUM] = LAYOUT(
|
||||
KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS,
|
||||
KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS,
|
||||
KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12,
|
||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[_SYM] = LAYOUT(
|
||||
KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS,
|
||||
KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE
|
||||
)
|
||||
};
|
||||
@@ -0,0 +1,111 @@
|
||||
[
|
||||
[
|
||||
{
|
||||
"c": "#ff0000",
|
||||
"a": 5
|
||||
},
|
||||
"Tab\nDel\n\n\n\n\nESC",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"1\n!\n\n\n\n\nQ",
|
||||
"2\n@\n\n\n\n\nW",
|
||||
"3\n$\n\n\n\n\nF",
|
||||
"4\n~\n\n\n\n\nP",
|
||||
"5\n^\n\n\n\n\nG",
|
||||
"6\n{\n\n\n\n\nJ",
|
||||
"7\n[\n\n\n\n\nL",
|
||||
"8\n]\n\n\n\n\nU",
|
||||
"9\n}\n\n\n\n\nY",
|
||||
"0\n<\n\n\n\n\nÖ",
|
||||
"+\n\n\n\n\n\nÅ"
|
||||
],
|
||||
[
|
||||
{
|
||||
"c": "#ff0000",
|
||||
"a": 7
|
||||
},
|
||||
"Backsp\n\n\n\nReset",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"A",
|
||||
{
|
||||
"a": 5
|
||||
},
|
||||
"Left\n\"\n\n\n\n\nR",
|
||||
"Up\n#\n\n\n\n\nS",
|
||||
"Down\n%\n\n\n\n\nT",
|
||||
"Right\n'\n\n\n\n\nD",
|
||||
"Home\n/\n\n\n\n\nH",
|
||||
"End\n(\n\n\n\n\nN",
|
||||
"Pgdn\n)\n\n\n\n\nE",
|
||||
"Pgup\n=\n\n\n\n\nI",
|
||||
"\n>\n\n\n\n\nO",
|
||||
"F12\n\n\n\n\n\nÄ"
|
||||
],
|
||||
[
|
||||
{
|
||||
"c": "#969696",
|
||||
"a": 7
|
||||
},
|
||||
"Shift",
|
||||
{
|
||||
"c": "#cccccc",
|
||||
"a": 5
|
||||
},
|
||||
"F1\n\n\n\n\n\nZ",
|
||||
"F2\n\n\n\n\n\nX",
|
||||
"F3\n\n\n\n\n\nC",
|
||||
"F4\n\n\n\n\n\nV",
|
||||
"F5\n*\n\n\n\n\nB",
|
||||
"F6\n\\\n\n\n\n\nK",
|
||||
"F7\n`\n\n\n\n\nM",
|
||||
"F8\n\n\n\n\n\n,",
|
||||
"F9\n\n\n\n\n\n.",
|
||||
"F10\n\n\n\n\n\n-",
|
||||
{
|
||||
"c": "#969696"
|
||||
},
|
||||
"F11\n&\n\n\n\n\nShift"
|
||||
],
|
||||
[
|
||||
{
|
||||
"a": 7
|
||||
},
|
||||
"Ctrl",
|
||||
"Ctr+Sh",
|
||||
"Win",
|
||||
"Alt",
|
||||
{
|
||||
"c": "#ff0000"
|
||||
},
|
||||
"Numers",
|
||||
{
|
||||
"c": "#000000",
|
||||
"t": "#ffffff",
|
||||
"w": 2
|
||||
},
|
||||
"Space",
|
||||
{
|
||||
"c": "#ff0000",
|
||||
"t": "#000000",
|
||||
"a": 5
|
||||
},
|
||||
"Extras\n\n\n\n\n\nSymbols",
|
||||
{
|
||||
"c": "#0075ff",
|
||||
"a": 7
|
||||
},
|
||||
"Enter",
|
||||
{
|
||||
"c": "#969696"
|
||||
},
|
||||
"Win",
|
||||
"Ctr+Sh",
|
||||
{
|
||||
"a": 5
|
||||
},
|
||||
"\n|\n\n\n\n\nCtrl"
|
||||
]
|
||||
]
|
||||
52
keyboards/handwired/planck/keymaps/wholteza/keymap.c
Normal file
52
keyboards/handwired/planck/keymaps/wholteza/keymap.c
Normal file
@@ -0,0 +1,52 @@
|
||||
/* Copyright 2025 Zackarias Montell @Wholteza
|
||||
*
|
||||
* 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 QMK_KEYBOARD_H
|
||||
#include "keymap_swedish.h"
|
||||
|
||||
enum layer_names {
|
||||
_BASE,
|
||||
_NUM,
|
||||
_SYM,
|
||||
_EXTRAS
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BASE] = LAYOUT(
|
||||
KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG,
|
||||
KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA,
|
||||
KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT,
|
||||
KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL
|
||||
),
|
||||
[_NUM] = LAYOUT(
|
||||
KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS,
|
||||
KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12,
|
||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[_SYM] = LAYOUT(
|
||||
KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE
|
||||
),
|
||||
[_EXTRAS] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
QK_BOOT, 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_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
|
||||
)
|
||||
};
|
||||
|
||||
7
keyboards/handwired/planck/keymaps/wholteza/readme.md
Normal file
7
keyboards/handwired/planck/keymaps/wholteza/readme.md
Normal file
@@ -0,0 +1,7 @@
|
||||
[Wholteza](https://github.com/wholteza)'s handwired planck layout
|
||||
|
||||

|
||||
|
||||
This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers.
|
||||
|
||||
In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands.
|
||||
Reference in New Issue
Block a user