No description
Find a file
Drashna Jaelre e6266b19be Initialize Layer State on startup (#8318)
* Initialize Layer State on startup

Right now, on startup, the default layer state gets called and set, triggering the callback functions for the default layer state. However, the normal layer state never actually gets initialized.  It's set to 0 directly, by default, but the callback functions are never actually called.  This creates some inconsistency in the behavior for end users.  This adds a simple "clear" that triggers the callback on startup.  This should produce more consisten behavior between the two functions and layer masks.

* Stupid hack

* Fix type casting?

* Fix compile issues with magic is disabled
2020-08-29 14:30:02 -07:00
.github Swap git diff logic to github action when running qmk info (#9978) 2020-08-17 02:12:45 -07:00
.vscode Allow trailing whitespace in markdown docs, for formatting purposes. (#8774) 2020-04-13 11:31:40 +10:00
bin Move everything to Python 3.6 (#8835) 2020-04-18 22:00:56 +02:00
docs Tweak the Christmas animation effect to be less harsh on the eyes (#7648) 2020-08-29 14:30:02 -07:00
drivers Hid joystick interface (#4226) 2020-08-29 14:30:02 -07:00
keyboards Hid joystick interface (#4226) 2020-08-29 14:30:02 -07:00
layouts 60_ansi_arrows Community Layout; mrsendyyk keymaps for dz60 and maartenwut/eon65 (#9993) 2020-08-19 11:16:10 -07:00
lib Initial work for consolidation of ChibiOS platform files (#8327) 2020-08-29 14:30:02 -07:00
platforms/chibios F303/Proton-C migration. (#9315) 2020-08-29 14:30:02 -07:00
quantum Tweak the Christmas animation effect to be less harsh on the eyes (#7648) 2020-08-29 14:30:02 -07:00
tests format code according to conventions [skip ci] 2020-03-13 18:44:56 +00:00
tmk_core Initialize Layer State on startup (#8318) 2020-08-29 14:30:02 -07:00
users Bigger combo index (#9318) 2020-08-29 14:30:02 -07:00
util Initial work for consolidation of ChibiOS platform files (#8327) 2020-08-29 14:30:02 -07:00
.clang-format fix indent size 2019-06-11 01:51:40 -07:00
.editorconfig QMK CLI and JSON keymap support (#6176) 2019-07-15 12:14:27 -07:00
.gitattributes Set eep files to binary mode 2016-08-27 18:37:28 +03:00
.gitignore Allow for user song list (#9281) 2020-07-16 16:45:50 +10:00
.gitmodules 2020 May 30 Breaking Changes Update (#9215) 2020-05-30 13:14:59 -07:00
.travis.yml Attempt to fix CI for non-master branches. (#9308) 2020-08-29 14:30:02 -07:00
book.json adds redirects for docs 2017-08-19 08:31:54 -04:00
bootloader.mk Revert "Add Kiibohd bootloader type to bootloader.mk (#9908)" (#10126) 2020-08-21 15:42:28 -07:00
build_full_test.mk Add SRC and OPT_DEFS when building tests 2017-07-20 10:17:31 -04:00
build_json.mk Load keymap-level rules.mk when compiling keymap.json (#8841) 2020-04-18 14:29:48 +01:00
build_keyboard.mk Initial work for consolidation of ChibiOS platform files (#8327) 2020-08-29 14:30:02 -07:00
build_layout.mk Allow for building layouts from keymap.json files. 2020-07-07 07:27:39 -07:00
build_test.mk Initial arm->chibios pass - simplify some platform logic (#8450) 2020-03-21 16:20:04 +11:00
CODE_OF_CONDUCT.md updates the coc 2019-08-24 12:43:39 -04:00
common.mk Move Split Common VPATH addition (#4716) 2018-12-31 08:45:44 -08:00
common_features.mk Hid joystick interface (#4226) 2020-08-29 14:30:02 -07:00
Dockerfile Update docker util script and travis to use new base container 2019-07-14 21:01:38 -07:00
Doxyfile Generate API docs from source code comments (#2491) 2018-03-22 02:50:38 -04:00
doxygen-todo Remove iWRAP protocol (#9284) 2020-08-29 14:30:02 -07:00
LICENSE add an explicit lisence file for github to pickup 2017-11-13 20:50:54 -05:00
license_GPLv2.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
license_GPLv3.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
license_Modified_BSD.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
Makefile 2020 May 30 Breaking Changes Update (#9215) 2020-05-30 13:14:59 -07:00
message.mk 2020 May 30 Breaking Changes Update (#9215) 2020-05-30 13:14:59 -07:00
nose2.cfg Setup a python test framework 2019-09-07 07:58:41 -07:00
readme.md Branch point for 2020 Aug 29 Breaking Change 2020-08-29 14:30:02 -07:00
requirements-dev.txt Use milc for config check, requirements fixes 2020-04-08 09:31:14 -07:00
requirements.txt CLI: Add development mode support 2020-04-08 09:31:14 -07:00
secrets.tar.enc update building for .hex, secrets moving 2017-08-21 21:57:46 -04:00
setup.cfg Add flake8 to our test suite and fix all errors (#7379) 2019-11-20 14:54:18 -08:00
shell.nix shell.nix improvements, and fix problems on Darwin (#9551) 2020-07-08 21:50:01 +01:00
show_options.mk Remove unused LED_BREATHING_TABLE 2020-03-06 22:29:01 -08:00
testlist.mk Add basic infrastrucure for building full tests 2017-06-18 21:08:23 +03:00
Vagrantfile Remove broken example from Makefile (#9159) 2020-05-21 20:33:20 +01:00

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

THIS IS THE DEVELOP BRANCH

Warning- This is the develop branch of QMK Firmware. You may encounter broken code here. Please see Breaking Changes for more information.

Original readme continues

This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR and ARM controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.

Documentation

The docs are powered by Docsify and hosted on GitHub. They are also viewable offline; see Previewing the Documentation for more details.

You can request changes by making a fork and opening a pull request, or by clicking the "Edit this page" link at the bottom of any page.

Supported Keyboards

The project also includes community support for lots of other keyboards.

Maintainers

QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

Official Website

qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.