Swap Hands Keys

This commit is contained in:
bluepython508
2026-06-14 14:08:14 +01:00
parent 5559ea50db
commit d4ff7f4eb3
4 changed files with 19 additions and 44 deletions
Generated
+9 -7
View File
@@ -2,15 +2,17 @@
"nodes": { "nodes": {
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1708118438, "lastModified": 1767366107,
"narHash": "sha256-kk9/0nuVgA220FcqH/D2xaN6uGyHp/zoxPNUmPCMmEE=", "narHash": "sha256-xW+NPcKsmSj8Gg4qBKhmV5/fHU57E8SwoZjqGVvu2yo=",
"path": "/nix/store/bg5fbkfa5x53clcjf4p5p92k1l3w8x38-source", "owner": "nixos",
"rev": "5863c27340ba4de8f83e7e3c023b9599c3cb3c80", "repo": "nixpkgs",
"type": "path" "rev": "b49a5346c419b4aaa421f96529c05fa70469acc3",
"type": "github"
}, },
"original": { "original": {
"id": "nixpkgs", "owner": "nixos",
"type": "indirect" "repo": "nixpkgs",
"type": "github"
} }
}, },
"root": { "root": {
+3 -34
View File
@@ -1,4 +1,5 @@
{ {
inputs.nixpkgs.url = "github:nixos/nixpkgs";
outputs = { outputs = {
self, self,
nixpkgs, nixpkgs,
@@ -11,48 +12,16 @@
pkgs = nixpkgs.legacyPackages.${sys}; pkgs = nixpkgs.legacyPackages.${sys};
}); });
in { in {
packages = eachSystem ({
sys,
pkgs,
}: rec {
python3 = pkgs.python3.override {
packageOverrides = final: prev: {
milc = prev.milc.overrideAttrs {
patches = [
# Logs pre-initialization give long exceptions without this - they try to write directly to str('/dev/null')
# This effects every `qmk` command post-userspaces, as they have an import-time 'find the userspace' operation
# that logs in several different substeps
# I have *no* idea how noone else has run into this at all, but I can't find any mention of it as an issue anywhere
(pkgs.writeText "patch" ''
diff --git a/milc/__init__.py b/milc/__init__.py
index b3e7158..4f2843e 100644
--- a/milc/__init__.py
+++ b/milc/__init__.py
@@ -39,7 +39,7 @@ if 'MILC_IGNORE_DEPRECATED' not in os.environ:
if name in os.environ:
warnings.warn(f'Using {name} is deprecated and will not be supported in the future, please use set_metadata() instead.', stacklevel=2)
-logging.basicConfig(stream=os.devnull) # Disable logging until we can configure it how the user wants
+logging.basicConfig(filename=os.devnull) # Disable logging until we can configure it how the user wants
cli = MILC(APP_NAME, APP_VERSION, APP_AUTHOR)
'')
];
};
};
};
qmk = pkgs.qmk.override {inherit python3;};
});
devShells = eachSystem ({ devShells = eachSystem ({
sys, sys,
pkgs, pkgs,
}: { }: {
default = pkgs.mkShell { default = pkgs.mkShell {
packages = with pkgs; [ packages = with pkgs; [
self.packages.${sys}.qmk qmk
clang clang
clang-tools clang-tools
dos2unix
]; ];
shellHook = '' shellHook = ''
export QMK_HOME=$PWD/qmk_firmware export QMK_HOME=$PWD/qmk_firmware
@@ -15,6 +15,11 @@
*/ */
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
#undef OS_LSFT
#undef OS_LCTL
#undef OS_LALT
#undef OS_LGUI
enum keycodes { enum keycodes {
OS_LSFT = SAFE_RANGE, OS_LSFT = SAFE_RANGE,
OS_LCTL, OS_LCTL,
@@ -42,7 +47,6 @@ enum layers {
#define C_RET C(KC_ENTER) #define C_RET C(KC_ENTER)
/* TODO: /* TODO:
* - Mouse Keys? * - Mouse Keys?
* - Swap hand keys?
*/ */
// clang-format off // clang-format off
@@ -50,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_TYPE] = LAYOUT( [_TYPE] = LAYOUT(
XXXXXXX, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_RCTL, XXXXXXX, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_RCTL,
KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
XXXXXXX, KC_Z, KC_X, KC_C, KC_D, KC_V, QK_REP, NUM, FUN, QK_AREP, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_D, KC_V, SH_OS, NUM, FUN, SH_OS, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
XXXXXXX, XXXXXXX, OS_LSFT, KC_ENT, SYM, NAV, KC_SPC, KC_ESC, KC_RGUI, KC_RALT XXXXXXX, XXXXXXX, OS_LSFT, KC_ENT, SYM, NAV, KC_SPC, KC_ESC, KC_RGUI, KC_RALT
), ),
[_NAV] = LAYOUT( [_NAV] = LAYOUT(
@@ -1,2 +1,2 @@
CONVERT_TO = liatris CONVERT_TO = liatris
REPEAT_KEY_ENABLE = yes SWAP_HANDS_ENABLE = yes