qmk / qmk_configurator

The QMK Configurator
http://config.qmk.fm
669 stars 340 forks source link

One-shot shift not working in combination with hold layers[Bug] #955

Closed jweickm closed 2 years ago

jweickm commented 2 years ago

Describe the Bug

Hi QMK community, The OSM LShift function works when it is the only function mapped to a key. However when I want to use it in combination with some "kc on tap switch to layer xyz while held" it does not work (tested on my olkb planck/rev6. See attached image. Would be grateful for help. Jakob

Additional Context?

osmshift_withlayerhold

noroadsleft commented 2 years ago

I think I may know what's going on here, but your linked image isn't actually linked, so I can't be sure.

jweickm commented 2 years ago

I think I may know what's going on here, but your linked image isn't actually linked, so I can't be sure.

Thanks for the reply. Something must have gone wrong when uploading the picture. It is just an image of how I tried to implement this feature on one of my keys. As OSM LSft also has a hold feature, does it not work together with other "kc on tap switch to layer xyz while held" modifiers?

To specify: Expected behaviour was "switch to layer 7 when held, and issue a one-shot shift for the next keypress when tapped"

noroadsleft commented 2 years ago

Yep, it's exactly what I suspected.

The inner argument for Layer Tap keys is limited to the Basic Keycode set - if it's not on this page, you can't use it inside an LT() keycode.

The QMK Docs detail this, screenshot below.

image

edited to add:

I think you could implement what you're after using Tap Dance, but you would have to compile your keymap from source - Configurator doesn't support Tap Dance.

jweickm commented 2 years ago

Hi James, thanks for clarifying this. Would this be something that can be implemented with QMK, just not the online configurator? j

On 2021年7月18日 17:23:18 GMT+02:00, James Young @.***> wrote:

Yep, it's exactly what I suspected.

The inner argument for Layer Tap keys is limited to the Basic Keycode set - if it's not on this page, you can't use it inside an LT() keycode.

The QMK Docs detail this, screenshot below.

image

Jakob Weickmann

yanfali commented 2 years ago

Since this is an advanced use case and not something the configurator currently can support, closing.