ddrcode / qmk_userspace

QMK Userspace
0 stars 0 forks source link

DDRCode QMK Userspace

Keyboards

This userspace supports the following keyboards:

Planned

Main features / ideas

I frequently switch between Colemak (typing) and Qwerty (regular computer use, non text-editing apps). I prefer to tap rather than hold keys so I intesively use one-shot modifiers and one-shot layers (with custom modifications). If keyboard layout allows I prefer to use thumbs for modifiers and layer switching, so my layouts are optimized for that. Besides that my configuration is rather conservative: I don't use tap dance, chords, magic keys, etc).

Future/planned work

Installation and usage

  1. clone official QMK repository: git clone https://github.com/qmk/qmk_firmware.git
  2. Configure QMK according to official documentation or (my preferred way, Nix users only) by runnix nix-shell from qmk_firmware folder.
  3. cd qmk_firmware/users
  4. clone this repo to ddrcode folder: git clone git@github.com:ddrcode/qmk_userspace.git ddrcode
  5. You are ready to go, i.e.: qmk compile users/ddrcode/idobao-id75.json

Steps for Keychron keyboards:

Official QMK repo at this stage doesn't contain configs for Keychron Q3 and Q10 keyboards. You must use Keychron's fork instead (keychron-q3 and playground branches respestively). I'd still recommend to setup QMK with the official repo and then use Keychron fork for sources only. Step-by-step instruction:

  1. Follow steps 1 and 2 from the installation guide above
  2. Clone Keychron's fork to a folder parallel to qmk_firmware, i.e.: git clone https://github.com/Keychron/qmk_firmware.git qmk_keychron
  3. cd qmk_keychron/users
  4. clone this repo to ddrcode folder: git clone git@github.com:ddrcode/qmk_userspace.git ddrcode
  5. Switch Keychron fork to a keyboard-specific branch, i.e. for Q3: git checkout keychron-q3
  6. Compile: qmk compile users/ddrcode/keychron_q3.json

Credits

Interesting reads and links

Firmware size optimization

Two of my boards: Hasu USB_USB converter and Idobao ID75 are equipped with 32kB RAM only. By following these steps I was able to reduce the file size by up to 7kB.

Copyrights

Copyright 2022 @ddrcode

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/.