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

Inconsistent behaviour with carrot #512

Closed
seekM opened this issue May 14, 2019 · 8 comments
Closed

Inconsistent behaviour with carrot #512

seekM opened this issue May 14, 2019 · 8 comments
Labels
Investigation Required Issue needs to be investigated.

Comments

@seekM
Copy link
Contributor

seekM commented May 14, 2019

Carrot:

 "carrot":
    R(Text("^"), rdescript="Core: Carat"),

I'm getting inconsistent behaviour using carrot. I was just trying it and saying carrot yields nothing, saying it again yields ^^. Yesterday saying carrot gave me ^^ directly on the first try. Expected behaviour: Say it once, get ^. I tried it in Notepad++. Anyone else experiencing this?

@LexiconCode LexiconCode added the Investigation Required Issue needs to be investigated. label May 14, 2019
@kendonB
Copy link
Collaborator

kendonB commented May 14, 2019

No unusual behavior here. Are you using an unusual keyboard? On my Māori keyboard, we prefix with the backtick to add macrons, for example, which introduces unusual behavior if you're actually trying to make a backtick.

@kendonB
Copy link
Collaborator

kendonB commented May 14, 2019

Is there another carrot command somewhere deep in your version of caster? try find in files?

@seekM
Copy link
Contributor Author

seekM commented May 15, 2019

I fiddled with Window 10 language and keyboard settings and figured this out:

carrot output depending on...
German language, German keyboard: ^^
German language, English US keyboard: backtick (can't format it here)
English language, German keyboard: &
English language, English US keyboard: ^

@seekM
Copy link
Contributor Author

seekM commented May 15, 2019

For Windows 10 German language, German keyboard layout I could fix it using this rule filter:

def update_carrot(rule):
    if "carrot" in rule.mapping_actual().keys():
        rule.mapping_actual()["carrot"] = R(Key("caret") + Key("left") + Key("delete"))

def fix_carrot_german_windows10_scenario(mp):
    if mp.time == MergeInf.BOOT:
        if mp.rule1 is not None :
            update_carrot(mp.rule1)   
        update_carrot(mp.rule2)

So this issue can be closed I think, but it should probably be added to the documentation that you have to look out for these kind of issues and might need modifications depending on which language / keyboard layout you have.

@kendonB
Copy link
Collaborator

kendonB commented May 15, 2019

Can we detect the keyboard and language within caster and fix up the output? Long term it would be a shame if we only supported the English / English combo.

@LexiconCode
Copy link
Member

Yes we do need to handle alternate keyboards better. Fundamentally though is this something that's a caster issue or dragonfly?

@kendonB
Copy link
Collaborator

kendonB commented May 15, 2019

A KeyboardLanguageContext class from dragonfly would be great. People do change these on the fly (at least I do) so we'd want to detect last second like AppContext

@kendonB
Copy link
Collaborator

kendonB commented May 18, 2019

Will close this for now while we wait and see what comes from Dragonfly

@kendonB kendonB closed this as completed May 18, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Investigation Required Issue needs to be investigated.
Projects
None yet
Development

No branches or pull requests

3 participants