Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Chords and Layers and Modifiers combined #55

Open
w-jablonski opened this issue Aug 15, 2024 · 5 comments
Open

[Feature Request] Chords and Layers and Modifiers combined #55

w-jablonski opened this issue Aug 15, 2024 · 5 comments
Labels
enhancement New feature or request

Comments

@w-jablonski
Copy link

w-jablonski commented Aug 15, 2024

Thank you for this promising project!

(Then you get people like me who come and start Feature Requests like: I need 777 features that are present in QMK, but done better! So please forgive.)

Scenario: I wanna have numbers under left hand like so: press a Button_1+{z,x,c,...} simultaneously to type {1,2,3,...} so like Chords in QMK. Easy. But then, if typing longer numbers, why repeat these chords with each digit? No, I wanna keep holding Button_1 down while I release the {z,x,c,...} and then tap the subsequent {z,x,c,...} keys to type subsequent digits. So in summary, pressing such a Chord activates a layer which remains active until the Button_1 is released.

If we implement config for features like Chords, Layers separately (like in QMK), then there might be no elegant way to mix them, like in above scenario. So ideally, these would be declared in a one, unified way which allows for any possible scenario, including Chords, Modifiers, Layers, One-shot Action, Tap-or-hold, Multiple Tap (known as Tap Dance in QMK).

I could try design the elegant config, but not the implementation since I don't know Rust. Or maybe this has been done before by another project?

@HaoboGu
Copy link
Owner

HaoboGu commented Aug 16, 2024

RMK doesn't have Chord right now, I'm still considering how these features(Chord, Layers, Tap/Hold, One-Shot, etc) can be implemented in an ergonomic way. Obviously, they have something common but are totally different. If I understand you correct, this feature is somehow like a partial layer switch: Button_1 actually activates another layer, but only for the specific keys.

@HaoboGu HaoboGu added the enhancement New feature or request label Aug 16, 2024
@w-jablonski
Copy link
Author

Thanks. I am not quite sure about "partial layer switch". I see it simply as activating another layer, even if a small one consisting of only 10 keys.

@HaoboGu
Copy link
Owner

HaoboGu commented Aug 16, 2024

Yeah that's what I mean.

@w-jablonski w-jablonski mentioned this issue Dec 25, 2024
10 tasks
@argenkiwi
Copy link

@HaoboGu, there is already a very powerful keyboard customization application called Kanata that is also written in Rust. Would there be any way to make their configuration scheme work with this project?

@HaoboGu
Copy link
Owner

HaoboGu commented Jan 14, 2025

@HaoboGu, there is already a very powerful keyboard customization application called Kanata that is also written in Rust. Would there be any way to make their configuration scheme work with this project?

Kanata is written for the desktop, not for the embedded. It's better to have a converter which converts Kanata scheme to RMK's config. I'm quite open to it if someone wants to take over

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants