]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - Home.md
Created Custom Quantum Functions (markdown)
[qmk_firmware.git] / Home.md
diff --git a/Home.md b/Home.md
index cc7b5463afb64b2cef023884858cdaedb3691a4e..8b224efa3cd18603971a85e24a3bad4b12e3b4df 100644 (file)
--- a/Home.md
+++ b/Home.md
@@ -1,15 +1,6 @@
 # Quantum Mechanical Keyboard Firmware
 
-You have found the QMK Firmware documentation site. This is a keyboard firmware based on the [tmk_keyboard firmware](http://github.com/tmk/tmk_keyboard) with some useful features for Atmel AVR controllers, and more specifically, the [OLKB product line](http://olkb.com), the [ErgoDox EZ](http://www.ergodox-ez.com) keyboard, and the [Clueboard product line](http://clueboard.co/). It has also been ported to ARM chips using ChibiOS. You can use it to power your own hand-wired or custom keyboard PCB.
-
-Understanding the essential changes made on the [tmk_keyboard firmware](http://github.com/tmk/tmk_keyboard) should help you understand the QMK Firmware.
-
-| Firmware                     |TMK                    |QMK                      |
-|------------------------------|-----------------------|-------------------------|
-| Maintainer                   |hasu  (@tmk)           |Jack Humbert et al.      |
-| Build path customization     | `TMK_DIR = ...`       | `include .../Makefile`  |
-| `keymaps` array data | 3D array of `uint8_t`  holding **keycode**      | 3D array of `uint16_t` holding **action code**  |
-| `fn_actions` array data  | 1D array of `uint16_t`  holding **action code** | 1D array of `uint16_t` holding **action code**  |
+You have found the QMK Firmware documentation site. This is a keyboard firmware based on the [tmk_keyboard firmware](http://github.com/tmk/tmk_keyboard) ([view differences](Differences-from-TMK)) with some useful features for Atmel AVR controllers, and more specifically, the [OLKB product line](http://olkb.com), the [ErgoDox EZ](http://www.ergodox-ez.com) keyboard, and the [Clueboard product line](http://clueboard.co/). It has also been ported to ARM chips using ChibiOS. You can use it to power your own hand-wired or custom keyboard PCB.
 
 # Getting started
 
@@ -20,26 +11,10 @@ Before you are able to compile, you'll need to install an environment for AVR de
 
 # Configuring QMK Firmware
 
-The QMK Firmware can be configured via the `keymaps` array data.
-
-For simply generating a [basic keycode](https://github.com/qmk/qmk_firmware/wiki/Keycodes), you add it as an element of your `keymaps` array data.
-
-For more complicated actions, you add the corresponding **action code** directly as an element of your `keymaps` array data.
-
-The **action code** is a 16 bit data and organized carefully to represent common operations with the combination of C macros.  It is sometimes called quantum keycode in the QMK source comment.
-
-For example, the keycode `KC_8` as an element of your `keymaps` array data is for generating keystroke of "8".  The action code `SHFT(KC_8)` an element of your `keymaps` array data is for generating key stroke of "*" which is "8" key shifted.
-
-Please note only up to 32 **action codes** were usable in `fn_actions` array data and accessed via special keycodes (`KC_FN0` to `KC_FN31`) in `keymaps` array data in tmk.
+The QMK Firmware can be configured via the `keymaps` array data. For simply generating a [basic keycode](Keycodes), you add it as an element of your `keymaps` array data. For more complicated actions, there are more advanced keycodes that are organized carefully to represent common operations, some of which can be found on the [Key Functions](Key-Functions) page. 
 
 For more details of the `keymaps` array, see [Keymap Overview](Keymap) page.
 
-## C macro functions for action code
-
-Basic C macro functions is documented in the [Key Functions](Key-Functions) page.
-
-There are several new standardized support for common operations with new action codes as follows.
-
 ## Space Cadet Shift: The future, built in
 
 Steve Losh [described](http://stevelosh.com/blog/2012/10/a-modern-space-cadet/) the Space Cadet Shift quite well. Essentially, you hit the left Shift on its own, and you get an opening parenthesis; hit the right Shift on its own, and you get the closing one. When hit with other keys, the Shift key keeps working as it always does. Yes, it's as cool as it sounds. Head on over to the [Space Cadet Shift](Space-Cadet-Shift) page to read about it.