Go to file
kiilerix da6d6ce2e1
Some docs improvements (#15845)
* docs: clarify in "Keymap Overview" what LAYOUT is and isn't

It is not strictly necessary to use LAYOUT macros in keyboard.c, but it
is a convenient abstraction of hardware internals, allowing focus on the
physical keyboard layout.

From the C source point of view LAYOUT is macro with a parameter list,
which expands to a array of rows that each is an array with a keyboard
scancode for each column. A macro parameter list is not an array, and
even less a single array.

Perhaps no big deal, but also no reason to give incorrect hints.

* docs: update "Understanding QMK's Code" to current code structure introduced in 96e2b13d1d

This part of the documentation was no longer correct. I tried updating
it, mainly copy editing and using github links to latest release.

This is not trying to fix all problems, but just trying to fix some
problems while reusing much of the old phrases and structure.

* Update docs to use "qmk format-python"
2022-03-05 15:58:50 +11:00
.github Bug report template: require qmk doctor output (#16517) 2022-03-03 20:43:55 -08:00
.vscode remove Bracket Pair Colorizer recommendation (#14816) 2021-10-15 11:54:19 +11:00
api_data Generate api data on each push (#10609) 2020-10-25 14:48:44 -07:00
builddefs Added external spi flash driver. (#15419) 2022-02-11 20:26:16 +00:00
data More validation of declared LAYOUT macro names (#16520) 2022-03-04 18:06:15 +01:00
docs Some docs improvements (#15845) 2022-03-05 15:58:50 +11:00
drivers analog.[ch]: remove unnecessary includes (#16471) 2022-03-04 14:56:59 +11:00
keyboards support more leds (#15840) 2022-03-05 15:57:19 +11:00
layouts Add 65_iso_split_bs default layout (#16283) 2022-02-11 11:19:18 +11:00
lib CLI: Validate JSON keymap input (#16261) 2022-02-28 20:02:39 +00:00
platforms analog.[ch]: remove unnecessary includes (#16471) 2022-03-04 14:56:59 +11:00
quantum [Bug] fix v-usb connection enumeration, ifdef workaround (#16511) 2022-03-03 09:24:04 -08:00
tests Format code according to conventions (#16322) 2022-02-12 18:29:31 +00:00
tmk_core Fix use of ISSI driver config before init (#16493) 2022-03-03 22:35:51 +00:00
users [Keymap] stanrc85 userspace rules cleanup (#16447) 2022-02-26 18:29:59 -08:00
util Initial pass at data driven new-keyboard subcommand (#12795) 2022-02-09 06:03:30 +11:00
.clang-format Clang-format tweaks (#15906) 2022-02-11 20:00:34 -08:00
.editorconfig QMK CLI and JSON keymap support (#6176) 2019-07-15 12:14:27 -07:00
.gitattributes eol=lf, where appropriate (#15752) 2022-01-05 21:56:31 +00:00
.gitignore Merge remote-tracking branch 'upstream/master' into develop 2022-02-22 03:04:41 +11:00
.gitmodules Purge uGFX. (#14720) 2021-10-07 10:57:48 +11:00
Dockerfile move everything from qmkfm/base_container to qmkfm/qmk_cli (#14230) 2021-08-29 16:41:56 -07:00
Doxyfile Internal docs generation updates (#16411) 2022-02-21 15:47:44 +00:00
doxygen-todo Remove SERIAL_LINK feature (#14727) 2021-10-07 12:32:05 +11: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 Migrate more makefile utilities to builddefs sub-directory (#16002) 2022-02-10 09:45:51 -08:00
nose2.cfg Setup a python test framework 2019-09-07 07:58:41 -07:00
paths.mk Migrate more makefile utilities to builddefs sub-directory (#16002) 2022-02-10 09:45:51 -08:00
readme.md [Core] [Docs] Remove travis-ci references (#13916) 2021-08-20 23:31:26 +01:00
requirements-dev.txt Macros in JSON keymaps (#14374) 2021-11-22 11:11:35 -08:00
requirements.txt switch to qmk-dotty-dict (#13460) 2021-07-14 09:08:48 -07:00
setup.cfg Use the schema to eliminate custom code (#11108) 2021-01-09 13:34:14 -08:00
shell.nix Remove bin/qmk (#14231) 2021-08-29 16:50:22 -07:00
Vagrantfile move everything from qmkfm/base_container to qmkfm/qmk_cli (#14230) 2021-08-29 16:41:56 -07:00

Quantum Mechanical Keyboard Firmware

Current Version Discord Docs Status GitHub contributors GitHub forks

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.