Skip to content

Commit

Permalink
[qmk#8]
Browse files Browse the repository at this point in the history
  BULLETPROOF ACCENTED E VOWEL !!!
  AT LAST, WHAT A RELIEF !!!

  It’s approached since low level coding, i.e.: modifying mods bits at QMK level of programming.
This was inspired from QMK documentation,

‘void action_function(keyrecord_t *record, uint8_t id, uint8_t opt)’
and
‘#define GRAVE_MODS  (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))’
at
‘https://docs.qmk.fm/#/keymap?id=action_function’

  The issue with accented acute vowels was that acute modifier for vowels didn’t appear while shift key was pressed.
Instead of acute modifier for vowel, it appeared acute symbol followed by a space character.
  Thus we couldn’t accentuate the vowel, it appeared the acute symbol and the vowel after it.

  Then, instead of use `bool process_record_user(uint16_t keycode, keyrecord_t *record) }`
we use now
`void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {`
and we modify mods bits directly, using
`mod_shift_enable = get_mods()&LSHIFT_MODS;`
`del_mods(mod_shift_enable);`
`add_mods(mod_shift_enable);`

  In ˜/qmk_firmware/tmk_core/common/action_code.h we have codification for mods at bit level.
/** \brief Key Actions
 *
 * Mod bits:    43210
 *   bit 0      ||||+- Control
 *   bit 1      |||+-- Shift
 *   bit 2      ||+--- Alt
 *   bit 3      |+---- Gui
 *   bit 4      +----- LR flag(Left:0, Right:1)
 */
enum mods_bit {
    MOD_LCTL = 0x01,
    MOD_LSFT = 0x02,
    MOD_LALT = 0x04,
    MOD_LGUI = 0x08,
    MOD_RCTL = 0x11,
    MOD_RSFT = 0x12,
    MOD_RALT = 0x14,
    MOD_RGUI = 0x18,
};

And by this way, we can press acute accent and get an acute modifier, even while shift key is pressed !!!

    * modified file:   keyboards/40percentclub/gdherkin/keymaps/30_layout/keymap.c,
                       for correct acute accent behaviour while shift key is pressed.

    * renamed file:    qmk_issues_log.txt into QMK_issues_log.txt,

    * modified file:   QMK_issues_log.txt
                       by adding the present acute accent issue committed in this commit
  • Loading branch information
manolodeinternet committed Feb 25, 2019
1 parent 1651170 commit de999d7
Show file tree
Hide file tree
Showing 2 changed files with 1,183 additions and 343 deletions.
Loading

0 comments on commit de999d7

Please sign in to comment.