summaryrefslogtreecommitdiffstats
path: root/quantum
Commit message (Collapse)AuthorAgeFilesLines
* Fixed compilation issues after the mergeDidier Loiseau2016-09-111-1/+1
|
* Merge remote-tracking branch 'remotes/jackhumbert/master' into bépoDidier Loiseau2016-09-11106-1934/+10224
|\
| * Use keyboard config for nkro (#7)IBNobody2016-09-063-56/+74
| | | | | | | | | | | | * removing nkro references - wip * changed NKRO to be defined by keymap_config
| * Set keyboard_nkro (used by TMK) w/ MAGIC_HOST_NKROIBNobody2016-09-061-0/+13
| | | | | | | | | | If NKRO is enabled, also set keyboard_nkro with MAGIC_HOST_NKRO and MAGIC_UNHOST_NKRO.
| * tap-dance: Do not start a sequence on keyupGergely Nagy2016-09-011-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was an odd case, which confused the hell out of tap-dance: suppose you had a number of tap-dance keys, on a layer, and as part of the tap-dance, you turned that layer off - or had it on one-shot to begin with. In this case, the keydown event would trigger the tap-dance key, but the keyup would not. This had two funky consequences: - tap-dance did not correctly register that the dance has ended. - pressing any other tap-dance key would interrupt the previous tap-dance, and potentially input unwanted characters. To fix this, we simply do not start a tap-dance sequence on keyup, only when it is pressed. This way the previous sequence has enough time to time-out and finish properly, and we don't get confused. This fixes algernon/ergodox-layout#107. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Add get_unicode_input_mode()Gergely Nagy2016-08-312-0/+5
| | | | | | | | | | | | | | | | There may be cases where one would like to know the current Unicode input mode, without having to keep track of it themselves. Add a function that does just this. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * Merge pull request #694 from fredizzimo/keyboard_templateJack Humbert2016-08-271-5/+5
| |\ | | | | | | Fix the keyboard template with new make syntax
| | * Fix the keyboard template with new make syntaxFred Sundvik2016-08-271-5/+5
| | | | | | | | | | | | Also add proper link to the parent
| * | Convert tirple_buffered_object_tests to GTestFred Sundvik2016-08-273-32/+38
| | |
| * | Convert transport_tests to GTestFred Sundvik2016-08-275-172/+202
| | |
| * | Convert frame_validator_tests to GTestFred Sundvik2016-08-272-40/+58
| | |
| * | Convert frame_router_tests to GTestFred Sundvik2016-08-273-232/+236
| | |
| * | Build actual tests, convert byte_stuffer_testsFred Sundvik2016-08-274-171/+151
| | |
| * | Basic framework for parsing test targetsFred Sundvik2016-08-271-0/+6
| |/
| * Merge branch 'master' into makefile_overhaulFred Sundvik2016-08-253-2/+15
| |\
| | * Merge remote-tracking branch 'refs/remotes/jackhumbert/master' into ↵IBNobody2016-08-252-2/+6
| | |\ | | | | | | | | | | | | vision_division_dev
| | | * quantum: Move qk_ucis_state to process_unicode.cGergely Nagy2016-08-242-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to not declare the same variable in multiple objects (which happens when building UCIS-enabled keymap for both the ErgoDox EZ and the ErgoDox Infinity), move the declaration to the .c file, and keep only an extern reference in the header. Many thanks to @fredizzimo for spotting the error in Travis, and suggesting the fix. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| | * | Added pin support for A0-A7IBNobody2016-08-251-8/+8
| | | | | | | | | | | | | | | | Vision Division - It works!
| | * | Merge remote-tracking branch 'refs/remotes/origin/master' into ↵IBNobody2016-08-231-0/+2
| | |\| | | | | | | | | | | | | vision_division_dev
| | * | NightlyIBNobody2016-08-211-0/+9
| | | | | | | | | | | | | | | | Only major change to qmk was the addition of A0-A7 pins for the AT90USB
| * | | Merge branch 'master' into makefile_overhaulFred Sundvik2016-08-231-0/+2
| |\ \ \ | | | |/ | | |/|
| | * | Drop method to set Unicode input key and declare start and finish methods as ↵coderkun2016-08-212-13/+4
| | | | | | | | | | | | | | | | “weak” instead
| | * | Add method to set Unicode input key for ISO 14755coderkun2016-08-212-2/+13
| | |/ | | | | | | | | | https://github.com/jackhumbert/qmk_firmware/issues/672
| * / Fix the template for the Makefile/rules.mk splitFred Sundvik2016-08-202-74/+69
| |/
| * Add a register/unregister_code16 pair of functionsGergely Nagy2016-08-183-4/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These functions register not only the 8bit keycode, but the modifiers too. It doesn't handle the full range of the upper 8bits, just the mods, but that's a good start. Changed the tap-dance pair functions to use these, so one can do: `ACTION_TAP_DANCE_DOUBLE (KC_COLN, KC_SCLN)` ...and that will do the right thing. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * Merge pull request #648 from Vifon/dynamic_macrosJack Humbert2016-08-171-0/+226
| |\ | | | | | | Implement the dynamic macros that are recorded in runtime
| | * Implement the dynamic macros that are recorded in runtimeWojciech Siewierski2016-08-181-0/+226
| | |
| * | Merge pull request #647 from Vifon/process_record_nocache-fixJack Humbert2016-08-171-10/+12
| |\ \ | | | | | | | | Fix the process_record_nocache function
| | * | Fix the process_record_nocache functionWojciech Siewierski2016-08-181-10/+12
| | |/ | | | | | | | | | | | | This function relies on checking the disable_action_cache static variable before accessing the layer cache.
| * | tap-dance: Major rework, to make it more reliableGergely Nagy2016-08-172-64/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reworks how the tap-dance feature works: instead of one global state, we have a state for each tap-dance key, so we can cancel them when another tap-dance key is in flight. This fixes #527. Since we have a state for each key, we can avoid situation where a keyup would mess with our global state. This fixes #563. And while here, we also make sure to fire events only once, and this fixes #574. There is one breaking change, though: tap-dance debugging support was removed, because dumping the whole state would increase the firmware size too much. Any keymap that made use of this, will have to be updated (but there's no such keymap in the repo). Also, there's a nice trick used in this rework: we need to iterate through tap_dance_actions in a few places, to check for timeouts, and so on. For this, we'd need to know the size of the array. We can't discover that at compile-time, because tap-dance gets compiled separately. We'd like to avoid having to terminate the list with a sentinel value, because that would require updates to all keymaps that use the feature. So, we keep track of the highest tap-dance code seen so far, and iterate until that index. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * | tap-dance: Include action_tapping.h for TAPPING_TERMGergely Nagy2016-08-171-0/+1
| |/ | | | | | | | | | | | | Include `action_tapping.h`, so the keymap does not have to define a `TAPPING_TERM` for us, and we can use the default. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Introduce a slight delayGergely Nagy2016-08-152-0/+8
| | | | | | | | | | | | | | | | When entering unicode codes, use some delay, so the OS has time to process the information. This is not needed on all systems, but some seem to require it. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Replace register_hex32Gergely Nagy2016-08-152-13/+32
| | | | | | | | | | | | | | | | | | It turns out that register_hex32 did not work reliably, and some systems only allow 7 chars after the unicode magic sequence, while others allow 8. To remedy the situation, store the codes as strings, and type those in instead of doing bit shifting magic. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Use uint32_t for UCIS purposesGergely Nagy2016-08-152-6/+13
| | | | | | | | | | | | | | Use a single uint32_t to store the unicode of a symbol, instead of an array of uint16_ts. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Make the startup overridableGergely Nagy2016-08-152-0/+6
| | | | | | | | | | | | | | Extract out the part of `qk_ucis_start` that inputs the placeholder symbol, and make it weak, so it can be overridden. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Call process_ucis() automaticallyGergely Nagy2016-08-153-2/+5
| | | | | | | | | | | | | | If UCIS is enabled, call process_ucis() automatically from process_record_quantum(). Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Handle too long UCIS symbol namesGergely Nagy2016-08-151-1/+9
| | | | | | | | | | | | | | | | If the symbol name being entered is longer than the max, stop recording it, and stop processing keycodes apart from the ones that can delete, finish or cancel the sequence. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Add a way to enter unicode symbols by nameGergely Nagy2016-08-152-2/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The purpose of this change is to allow keymaps to specify a dictionary of unicode symbol name to code mappings, and let the person at the keyboard enter unicode symbols by name. This is done by having a way to trigger unicode symbol input mode, when all keys are cached until Esc, Enter or Space are pressed. Once that happens, we try to look up the symbol from our lookup table. If found, we erase back, and type the unicode magic in to get that symbol. If not found, we still erase back, start unicode input mode, and replay what the user typed in. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Small refactor & linux fixGergely Nagy2016-08-152-31/+48
| | | | | | | | | | | | | | | | | | | | | | This moves the unicode input start / end sequences into their own functions, so keymaps and other functionality can build on it too. At the same time, it changes how the Linux variant works, to match reality: CTRL+SHIFT must be unregistered too, and we close the thing with a Space instead. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * process_unicode: Fix set_unicode_input_mode()Gergely Nagy2016-08-131-1/+1
| | | | | | | | | | | | | | | | In the header, this was defined as `set_unicode_input_mode`, but the implementation had `set_unicode_mode` for a name. Changed the implementation to match the header. Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
| * fix typoshela2016-08-121-11/+11
| |
| * Removed unnecessary commentkuel2016-08-071-2/+0
| |
| * Add keymap_russian.h, a software implementation of Russiankuel2016-08-072-2/+83
| | | | | | | | | | | | rename keymap_cyrillic.h to keymap_unicode_cyrillic.h changed CY_RUBLE and CY_NUMERO to CY_RUBL and CY_NMRO in keymap_unicode_cyrillic.h
| * Merge pull request #605 from kuel/masterJack Humbert2016-08-031-0/+161
| |\ | | | | | | Add keymap_cyrillic.h, lots of cyrillic characters
| | * Add keymap_cyrillic.h, lots of cyrillic characterskuel2016-08-021-0/+161
| | |
| * | Merge pull request #561 from 0xdec/patch-1Jack Humbert2016-08-031-357/+378
| |\ \ | | |/ | |/| Clean up formatting & tiny refactor in rgblight.c
| | * Simplify HSV->RGB calculationJordi Orlando2016-07-261-14/+12
| | | | | | | | | De-dupe repeated code
| | * Increament -> incrementJordi Orlando2016-07-261-9/+9
| | |
| | * Clean up rgblight.cJordi Orlando2016-07-261-354/+377
| | | | | | | | | Fix formatting issues, clarify comments
| * | Add IN_LIKE_FLINT songJeeBak Kim2016-07-301-0/+8
| | |