GithubHelp home page GithubHelp logo

Comments (6)

39aldo39 avatar 39aldo39 commented on July 20, 2024

Your config looks right and you should get an action. I suspect that you get the actions Alt+Left (or Control+Left or Win+Left). This happens in Wayland, it should work fine in X. You can test this by executing xev in the terminal and pressing Alt+n. You should get the keysym Left with a state of 0x0. If Alt is still present, the state will be 0x8.

The Alt, Control and Win modifiers are kept, since the remapping may be used for changing shortcuts. For actions like Left they are removed. However, the method to do that is not (yet) supported in Wayland. I may add a way to indicate in the shiftlevels that you don't want Alt to be interpreted as shortcut modifier.

from klfc.

sandric avatar sandric commented on July 20, 2024

@39aldo39 Hmm, xev shows me status 0x8 but keysym is not Left, its n, so Left havent even parsed. Im not sure how you check for what your system is using, but htop shows me Xorg process and no Wayland occurences. Why does Left havent been parsed?

from klfc.

39aldo39 avatar 39aldo39 commented on July 20, 2024

That's weird. A few more questions:

  • How have you activated the layout? Using the install scripts, or have you done something different?
  • Does it work if you use the shiftlevel [ "None", "AltGr", "Shift" ] (with Shift and AltGr swapped)?
  • I think you can check the system by executing echo $XDG_SESSION_TYPE. It should be x11 or wayland.

from klfc.

sandric avatar sandric commented on July 20, 2024

Yes, I installed layout, echo $XDG_SESSION_TYPE gives me nothing. I tried to take specifically those generated lines from symbols:

    key.type[Group1] = "NONE_SHIFT_ALT_ALPHABETIC";
    key <AC07> { [            k,            N,         Left ],
                 actions[Group1] = [ NoAction(), NoAction(), Redirect(key=<LEFT>,clearMods=Alt) ] };

and from types:

    type "NONE_SHIFT_ALT_ALPHABETIC" {
        modifiers = Alt+Shift+Lock;
        
        map[None] = Level1;
        map[Lock] = Level2;
        map[Shift] = Level2;
        map[Shift+Lock] = Level1;
        map[Alt] = Level3;
        map[Alt+Lock] = Level3;
        map[Alt+Shift] = Level3;
        map[Alt+Shift+Lock] = Level3;
        
        preserve[Alt] = Alt;
        preserve[Alt+Lock] = Alt;
        preserve[Alt+Shift] = Alt+Shift;
        preserve[Alt+Shift+Lock] = Alt;
        
        level_name[Level1] = "Base";
        level_name[Level2] = "Shift";
        level_name[Level3] = "Alt";
    };

In my own layout, which I enable via xkbcomp, and strangely, it works, but only Left
and base part, and Shift is triggering lowercase n. I tried to play a bit with generated part, include us layout into it, or declare it as partial, but had no result and my xorg process constantly crashes because of those experiments, and I already wrote my own layout (its wasnt easy, but I think I finally understood how all that xkb magic works). So I think I'll stop on this since that particular line works for me via inserting inside my layout, must be smth with my own system is wrong. Thanks for help.

from klfc.

39aldo39 avatar 39aldo39 commented on July 20, 2024

I have found the problem. There was a bug in the install script, which stopped the installation. This caused the custom types (i.e. NONE_SHIFT_ALT_ALPHABETIC) to be not included. XKB fell back to the default type, which has AltGr instead of Alt.

from klfc.

sandric avatar sandric commented on July 20, 2024

Great, so it wasn't pointless). Sorry, I already deleted folder with my klfc json layout, and I also have no knowledge of haskell to be able to check master branch outside of archlinux yaourt installed package.

from klfc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.