summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/info.yml2
-rw-r--r--.vscode/settings.json3
-rw-r--r--common_features.mk13
-rw-r--r--docs/feature_debounce_type.md146
-rw-r--r--docs/ja/api_development_environment.md8
-rw-r--r--docs/ja/api_development_overview.md49
-rw-r--r--docs/ja/api_docs.md73
-rw-r--r--docs/ja/api_overview.md20
-rw-r--r--docs/ja/faq_build.md2
-rw-r--r--docs/ja/faq_general.md2
-rw-r--r--docs/ja/faq_keymap.md2
-rw-r--r--docs/ja/feature_split_keyboard.md4
-rw-r--r--docs/ja/how_a_matrix_works.md2
-rw-r--r--docs/ja/quantum_keycodes.md20
-rw-r--r--docs/ja/reference_configurator_support.md202
-rw-r--r--docs/ja/reference_glossary.md173
-rw-r--r--docs/ja/reference_info_json.md78
-rw-r--r--docs/ja/serial_driver.md75
-rw-r--r--docs/ja/support.md22
-rw-r--r--docs/ja/syllabus.md75
-rw-r--r--docs/ja/translating.md60
-rw-r--r--docs/pr_checklist.md69
-rw-r--r--keyboards/boardsource/4x12/keymaps/via/keymap.c36
-rw-r--r--keyboards/boardsource/4x12/keymaps/via/readme.md5
-rw-r--r--keyboards/boardsource/4x12/keymaps/via/rules.mk1
-rw-r--r--keyboards/converter/adb_usb/adb_usb.h2
-rw-r--r--keyboards/ergodox_ez/keymaps/nathanvercaemert/config.h3
-rw-r--r--keyboards/ergodox_ez/keymaps/nathanvercaemert/keymap.c123
-rw-r--r--keyboards/ergodox_ez/keymaps/nathanvercaemert/readme.md7
-rw-r--r--keyboards/ergodox_ez/keymaps/nathanvercaemert/rules.mk3
-rw-r--r--keyboards/handwired/swiftrax/pandamic/config.h52
-rw-r--r--keyboards/handwired/swiftrax/pandamic/info.json12
-rw-r--r--keyboards/handwired/swiftrax/pandamic/keymaps/default/keymap.c49
-rw-r--r--keyboards/handwired/swiftrax/pandamic/keymaps/via/keymap.c46
-rw-r--r--keyboards/handwired/swiftrax/pandamic/keymaps/via/rules.mk1
-rw-r--r--keyboards/handwired/swiftrax/pandamic/pandamic.c16
-rw-r--r--keyboards/handwired/swiftrax/pandamic/pandamic.h40
-rw-r--r--keyboards/handwired/swiftrax/pandamic/readme.md13
-rw-r--r--keyboards/handwired/swiftrax/pandamic/rules.mk23
-rw-r--r--keyboards/jj40/config.h4
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/config.h44
-rw-r--r--keyboards/kbdfans/maja_soldered/info.json81
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/keymaps/default/keymap.c43
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/keymaps/via/keymap.c43
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/keymaps/via/rules.mk2
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/maja_soldered.c29
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/maja_soldered.h19
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/readme.md14
-rwxr-xr-xkeyboards/kbdfans/maja_soldered/rules.mk22
-rw-r--r--keyboards/lazydesigners/bolt/via/keymap.c43
-rw-r--r--keyboards/lazydesigners/bolt/via/rules.mk2
-rw-r--r--keyboards/maartenwut/solheim68/config.h143
-rw-r--r--keyboards/maartenwut/solheim68/info.json397
-rw-r--r--keyboards/maartenwut/solheim68/keymaps/default/keymap.c31
-rw-r--r--keyboards/maartenwut/solheim68/keymaps/default/readme.md1
-rw-r--r--keyboards/maartenwut/solheim68/readme.md17
-rw-r--r--keyboards/maartenwut/solheim68/rules.mk22
-rw-r--r--keyboards/maartenwut/solheim68/solheim68.c16
-rw-r--r--keyboards/maartenwut/solheim68/solheim68.h102
-rw-r--r--keyboards/marksard/leftover30/config.h138
-rw-r--r--keyboards/marksard/leftover30/info.json198
-rw-r--r--keyboards/marksard/leftover30/keymaps/default/config.h24
-rw-r--r--keyboards/marksard/leftover30/keymaps/default/keymap.c162
-rw-r--r--keyboards/marksard/leftover30/keymaps/default/readme.md1
-rw-r--r--keyboards/marksard/leftover30/keymaps/default/rules.mk1
-rw-r--r--keyboards/marksard/leftover30/leftover30.c37
-rw-r--r--keyboards/marksard/leftover30/leftover30.h45
-rw-r--r--keyboards/marksard/leftover30/readme.md17
-rw-r--r--keyboards/marksard/leftover30/rules.mk22
-rw-r--r--keyboards/marksard/rhymestone/common/glcdfont.c233
-rw-r--r--keyboards/marksard/rhymestone/common/oled_helper.c87
-rw-r--r--keyboards/marksard/rhymestone/common/oled_helper.h32
-rw-r--r--keyboards/marksard/rhymestone/info.json213
-rw-r--r--keyboards/marksard/rhymestone/keymaps/default/config.h27
-rw-r--r--keyboards/marksard/rhymestone/keymaps/default/keymap.c226
-rw-r--r--keyboards/marksard/rhymestone/keymaps/default/rules.mk9
-rw-r--r--keyboards/marksard/rhymestone/keymaps/switch_tester/keymap.c76
-rw-r--r--keyboards/marksard/rhymestone/keymaps/switch_tester/readme.md3
-rw-r--r--keyboards/marksard/rhymestone/keymaps/switch_tester/rules.mk7
-rw-r--r--keyboards/marksard/rhymestone/readme.md18
-rw-r--r--keyboards/marksard/rhymestone/rev1/config.h152
-rw-r--r--keyboards/marksard/rhymestone/rev1/rev1.c108
-rw-r--r--keyboards/marksard/rhymestone/rev1/rev1.h89
-rw-r--r--keyboards/marksard/rhymestone/rev1/rules.mk0
-rw-r--r--keyboards/marksard/rhymestone/rules.mk27
-rw-r--r--keyboards/planck/keymaps/gitdrik/config.h56
-rw-r--r--keyboards/planck/keymaps/gitdrik/keymap.c231
-rw-r--r--keyboards/planck/keymaps/gitdrik/readme.md1
-rw-r--r--keyboards/planck/keymaps/gitdrik/rules.mk3
-rw-r--r--keyboards/plume/plume65/config.h137
-rw-r--r--keyboards/plume/plume65/info.json376
-rw-r--r--keyboards/plume/plume65/keymaps/default/keymap.c33
-rw-r--r--keyboards/plume/plume65/keymaps/default/readme.md1
-rw-r--r--keyboards/plume/plume65/keymaps/via/keymap.c45
-rw-r--r--keyboards/plume/plume65/keymaps/via/rules.mk1
-rw-r--r--keyboards/plume/plume65/plume65.c16
-rw-r--r--keyboards/plume/plume65/plume65.h103
-rw-r--r--keyboards/plume/plume65/readme.md16
-rw-r--r--keyboards/plume/plume65/rules.mk22
-rw-r--r--keyboards/redox_w/keymaps/danielo515/keymap.c65
-rw-r--r--quantum/debounce/readme.md28
-rw-r--r--quantum/debounce/sym_defer_g.c (renamed from quantum/debounce/sym_g.c)0
-rw-r--r--quantum/debounce/sym_defer_pk.c (renamed from quantum/debounce/sym_pk.c)0
-rw-r--r--quantum/debounce/sym_eager_pk.c (renamed from quantum/debounce/eager_pk.c)0
-rw-r--r--quantum/debounce/sym_eager_pr.c (renamed from quantum/debounce/eager_pr.c)0
-rw-r--r--quantum/keymap_extras/keymap_canadian_multilingual.h4
-rw-r--r--users/danielo515/combo.c44
-rw-r--r--users/danielo515/config.h4
-rw-r--r--users/danielo515/process_records.c247
-rw-r--r--users/danielo515/process_records.h94
-rw-r--r--users/stanrc85/rgblight_layers.c38
-rw-r--r--users/stanrc85/rules.mk18
-rw-r--r--users/stanrc85/stanrc85.c36
-rw-r--r--users/stanrc85/startup_fanfare.c43
114 files changed, 5843 insertions, 378 deletions
diff --git a/.github/workflows/info.yml b/.github/workflows/info.yml
index 7551c127e0..bb3a508477 100644
--- a/.github/workflows/info.yml
+++ b/.github/workflows/info.yml
@@ -16,7 +16,7 @@ jobs:
with:
fetch-depth: 0
- - uses: trilom/file-changes-action@v1.2.3
+ - uses: trilom/file-changes-action@v1.2.4
id: file_changes
with:
output: '\n'
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 9aa546a787..775b3df172 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -16,7 +16,8 @@
"*.hpp": "cpp",
"xstddef": "c",
"type_traits": "c",
- "utility": "c"
+ "utility": "c",
+ "ranges": "c"
},
"[markdown]": {
"editor.trimAutoWhitespace": false,
diff --git a/common_features.mk b/common_features.mk
index 1f110d0819..ed6908f4b8 100644
--- a/common_features.mk
+++ b/common_features.mk
@@ -397,9 +397,20 @@ ifneq ($(strip $(CUSTOM_MATRIX)), yes)
endif
endif
+# Support for translating old names to new names:
+ifeq ($(strip $(DEBOUNCE_TYPE)),sym_g)
+ DEBOUNCE_TYPE:=sym_defer_g
+else ifeq ($(strip $(DEBOUNCE_TYPE)),eager_pk)
+ DEBOUNCE_TYPE:=sym_eager_pk
+else ifeq ($(strip $(DEBOUNCE_TYPE)),sym_pk)
+ DEBOUNCE_TYPE:=sym_defer_pk
+else ifeq ($(strip $(DEBOUNCE_TYPE)),eager_pr)
+ DEBOUNCE_TYPE:=sym_eager_pr
+endif
+
DEBOUNCE_DIR:= $(QUANTUM_DIR)/debounce
# Debounce Modules. Set DEBOUNCE_TYPE=custom if including one manually.
-DEBOUNCE_TYPE?= sym_g
+DEBOUNCE_TYPE?= sym_defer_g
ifneq ($(strip $(DEBOUNCE_TYPE)), custom)
QUANTUM_SRC += $(DEBOUNCE_DIR)/$(strip $(DEBOUNCE_TYPE)).c
endif
diff --git a/docs/feature_debounce_type.md b/docs/feature_debounce_type.md
index 65b4ea1e53..83ebafe60e 100644
--- a/docs/feature_debounce_type.md
+++ b/docs/feature_debounce_type.md
@@ -1,43 +1,151 @@
-# Debounce algorithm
+# Contact bounce / contact chatter
-QMK supports multiple debounce algorithms through its debounce API.
+Mechanical switches often don't have a clean single transition between pressed and unpressed states.
+
+In an ideal world, when you press a switch, you would expect the digital pin to see something like this:
+(X axis showing time
+```
+voltage +----------------------
+ ^ |
+ | |
+ | ------------------+
+ ----> time
+```
+
+H