gourdo1 / gmmkpro-media

GNU General Public License v2.0
21 stars 2 forks source link

Ctrl-space doesn't work #1

Closed plasticrake closed 2 years ago

plasticrake commented 2 years ago

Hi gourdo1! Trying out this firmware (ansi) and unfortunately ctrl-space doesn't work - it appears to send a space only. This is generally used for autocompletion. The default qmk keymap works, but this latest version and the version before it (only ones I've tried) do not. If I hold ctrl on this keyboard, then space on my laptop's space, it works, and also if I hold ctrl on my laptop, and space on my gmmk pro it works.

Any ideas? This can't just be me? I did reset the eeprom.

Thanks!

plasticrake commented 2 years ago

Here is what I see with a keyboard that is working:

KEY-DOWN - QMK: KC_LCTL Event key: Control     Code: ControlLeft   KeyCode: 17
KEY-DOWN - QMK: KC_SPC  Event key:             Code: Space         KeyCode: 32
KEY-UP   - QMK: KC_SPC  Event key:             Code: Space         KeyCode: 32 in 205.000ms
KEY-UP   - QMK: KC_LCTL Event key: Control     Code: ControlLeft   KeyCode: 17 in 2722.000ms

Here is with this firmware:

KEY-DOWN - QMK: KC_LCTL Event key: Control     Code: ControlLeft   KeyCode: 17
KEY-DOWN - QMK: KC_SPC  Event key:             Code: Space         KeyCode: 32
KEY-UP   - QMK: KC_LCTL Event key: Control     Code: ControlLeft   KeyCode: 17 in 391.000ms
KEY-DOWN - QMK: KC_LCTL Event key: Control     Code: ControlLeft   KeyCode: 17
KEY-UP   - QMK: KC_SPC  Event key:             Code: Space         KeyCode: 32 in 193.000ms
KEY-UP   - QMK: KC_LCTL Event key: Control     Code: ControlLeft   KeyCode: 17 in 283.000ms
gourdo1 commented 2 years ago

Believe it or not, it is actually working as designed. I found that I would hit CTRL-space inadvertently between CTRL-V, CTRL-C and CTRL-X and wanted it to act like a regular space. I will add a toggle in the next revision in the next day or so, so you can get CTRL-SPACE working as expected.

plasticrake commented 2 years ago

Thanks! I see it now in goudo1.c, I was only looking in the keymap folder so I missed it.

plasticrake commented 2 years ago

I would appreciate a toggle for the shift-space override as well :-)

gourdo1 commented 2 years ago

I updated the code to include a single toggle for both ctrl-space and shift-space ([Fn]8), but I'm not entirely sure that it's working. Can you verify if it works as expected? Make sure to clear your EEPROM after flashing the latest.

plasticrake commented 2 years ago

Fn8 is making ctrl-space work again. However shift-space seems to always be working regardless of toggle. I never tested shift-space on the old firmware though.

plasticrake commented 2 years ago

Not sure if intentional, but the Fn~ shows: 8. Disable modded SPACE functions [OFF] when ctrl-space works normally. Seems like the description is backwards

gourdo1 commented 2 years ago

CTRL-space is a standard modded space function. When disable is ON, I'm disabling those standard mods and forcing them to act like an unmodded space.

Would it be more clear if I called it "Disable standard modded SPACE functions" ?

or "Force modded-SPACE to function like SPACE"?

gourdo1 commented 2 years ago

I will create a branch and see if I can figure out how to get shift-space working. I think I know why it doesn't work, but not sure how to go about resolving it yet.

gourdo1 commented 2 years ago

If I'm in a text editor like Notepad++, is there a way I can visualize what ctrl-space and shift-space are supposed to do?

plasticrake commented 2 years ago

Current firmware: 8. Disable modded SPACE functions [OFF] -- ctrl-space works normally [ON] -- ctrl-space is disabled

That seems backwards, I would think this is clearer: 8. Modded SPACE functions [OFF] -- ctrl-space works normally [ON] -- ctrl-space is disabled

I'm assuming by "modded" you mean your tweaks of disabling space.

I use VSCode, but in Notepad++ ctrl-space should also autocomplete functions or do nothing. When disabled it will enter a space.

plasticrake commented 2 years ago

https://defkey.com/what-means/ctrl-space

https://defkey.com/what-means/shift-space

gourdo1 commented 2 years ago

ok, shift-space now does seem to work in firefox properly (scrolls backward) when fn-8 is toggled OFF, but it's still sending a space in some apps, so I'm not sure if I have it properly working or not. Try this bin and let me know if it's as expected: https://github.com/gourdo1/gmmkpro-media/raw/main/gmmk_pro_rev1_ansi_gourdo1.bin

gourdo1 commented 2 years ago

Ok, Excel seems like a good test case for me. I confirmed that Ctrl-space selects a column and shift-space now selects a row. If you toggle fn-8, then everything just acts like a space. I worded the toggle differently so there's less room for ambiguous interpretation.

Going to push this fix to PR-branch-Q2.

gourdo1 commented 2 years ago

Closing for now. Re-open if you see any wonkiness. Remember to clear EEPROM (unplug, re-plug holding down ESC, unplug and replug again) before troubleshooting.