~ruther/qmk_firmware

2ff1d852909daaaf94433fab202e7bf94274d67b — Ryan 2 years ago 7407347
Normalise Autocorrect keycodes (#18893)

M docs/feature_autocorrect.md => docs/feature_autocorrect.md +7 -7
@@ 22,7 22,7 @@ AUTOCORRECT_ENABLE = yes

Additionally, you will need a library for autocorrection.  A small sample library is included by default, so that you can get up and running right away, but you can provide a customized library.

By default, autocorrect is disabled.  To enable it, you need to use the `AUTOCORRECT_TOGGLE` keycode to enable it. The status is stored in persistent memory, so you shouldn't need to enabled it again.
By default, autocorrect is disabled.  To enable it, you need to use the `AC_TOGG` keycode to enable it. The status is stored in persistent memory, so you shouldn't need to enabled it again.

## Customizing autocorrect library :id=customizing-autocorrect-library



@@ 94,15 94,15 @@ Occasionally you might actually want to type a typo (for instance, while editing

This works because the autocorrection implementation doesn’t understand hotkeys, so it resets itself whenever a modifier other than shift is held.

Additionally, you can use the `AUTOCORRECT_TOGGLE` keycode to toggle the on/off status for Autocorrect.
Additionally, you can use the `AC_TOGG` keycode to toggle the on/off status for Autocorrect.

### Keycodes :id=keycodes

|Keycode              | Short keycode | Description                                    |
|---------------------|---------------|------------------------------------------------|
|`AUTOCORRECT_ON`     | `CRT_ON`      | Turns on the Autocorrect feature.              |
|`AUTOCORRECT_OFF`    | `CRT_OFF`     | Turns off the Autocorrect feature.             |
|`AUTOCORRECT_TOGGLE` | `CRT_TOG`     | Toggles the status of the Autocorrect feature. |
|Keycode                |Aliases  |Description                                   |
|-----------------------|---------|----------------------------------------------|
|`QK_AUTOCORRECT_ON`    |`AC_ON`  |Turns on the Autocorrect feature.             |
|`QK_AUTOCORRECT_OFF`   |`AC_OFF` |Turns off the Autocorrect feature.            |
|`QK_AUTOCORRECT_TOGGLE`|`AC_TOGG`|Toggles the status of the Autocorrect feature.|

## User Callback Functions


M docs/keycodes.md => docs/keycodes.md +10 -0
@@ 247,6 247,16 @@ See also: [Audio](feature_audio.md)
|`MU_TOG`        |         |Toggles Music Mode                |
|`MU_MOD`        |         |Cycles through the music modes    |

## Autocorrect :id=autocorrect

See also: [Autocorrect](feature_autocorrect.md)

|Key                    |Aliases  |Description                                   |
|-----------------------|---------|----------------------------------------------|
|`QK_AUTOCORRECT_ON`    |`AC_ON`  |Turns on the Autocorrect feature.             |
|`QK_AUTOCORRECT_OFF`   |`AC_OFF` |Turns off the Autocorrect feature.            |
|`QK_AUTOCORRECT_TOGGLE`|`AC_TOGG`|Toggles the status of the Autocorrect feature.|

## Backlighting :id=backlighting

See also: [Backlighting](feature_backlight.md)

M quantum/process_keycode/process_autocorrect.c => quantum/process_keycode/process_autocorrect.c +4 -4
@@ 165,12 165,12 @@ bool process_autocorrect(uint16_t keycode, keyrecord_t *record) {
    mods |= get_oneshot_mods();
#endif

    if ((keycode >= AUTOCORRECT_ON && keycode <= AUTOCORRECT_TOGGLE) && record->event.pressed) {
        if (keycode == AUTOCORRECT_ON) {
    if ((keycode >= QK_AUTOCORRECT_ON && keycode <= QK_AUTOCORRECT_TOGGLE) && record->event.pressed) {
        if (keycode == QK_AUTOCORRECT_ON) {
            autocorrect_enable();
        } else if (keycode == AUTOCORRECT_OFF) {
        } else if (keycode == QK_AUTOCORRECT_OFF) {
            autocorrect_disable();
        } else if (keycode == AUTOCORRECT_TOGGLE) {
        } else if (keycode == QK_AUTOCORRECT_TOGGLE) {
            autocorrect_toggle();
        } else {
            return true;

M quantum/quantum_keycodes.h => quantum/quantum_keycodes.h +6 -6
@@ 611,9 611,9 @@ enum quantum_keycodes {

    UNICODE_MODE_EMACS,

    AUTOCORRECT_ON,
    AUTOCORRECT_OFF,
    AUTOCORRECT_TOGGLE,
    QK_AUTOCORRECT_ON,
    QK_AUTOCORRECT_OFF,
    QK_AUTOCORRECT_TOGGLE,

    MAGIC_TOGGLE_BACKSLASH_BACKSPACE,



@@ 740,9 740,9 @@ enum quantum_keycodes {
#define EH_LEFT MAGIC_EE_HANDS_LEFT
#define EH_RGHT MAGIC_EE_HANDS_RIGHT

#define CRT_ON AUTOCORRECT_ON
#define CRT_OFF AUTOCORRECT_OFF
#define CRT_TOG AUTOCORRECT_TOGGLE
#define AC_ON QK_AUTOCORRECT_ON
#define AC_OFF QK_AUTOCORRECT_OFF
#define AC_TOGG QK_AUTOCORRECT_TOGGLE

// Velocikey
#define VK_TOGG QK_VELOCIKEY_TOGGLE

M users/drashna/keyrecords/process_records.h => users/drashna/keyrecords/process_records.h +1 -1
@@ 125,7 125,7 @@ bool process_record_unicode(uint16_t keycode, keyrecord_t *record);

#define MG_NKRO MAGIC_TOGGLE_NKRO

#define AUTO_CTN AUTOCORRECT_TOGGLE
#define AUTO_CTN QK_AUTOCORRECT_TOGGLE
/*
Custom Keycodes for Diablo 3 layer
But since TD() doesn't work when tap dance is disabled