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

Linux D and V key appear to be in the wrong spot (Mod-DH) #8

Closed
stratacast opened this issue Apr 5, 2018 · 15 comments
Closed

Linux D and V key appear to be in the wrong spot (Mod-DH) #8

stratacast opened this issue Apr 5, 2018 · 15 comments
Labels
question Good one!

Comments

@stratacast
Copy link

I applied the the Mod-DH rules to my Dell XPS using the install-dreymar-xmod.sh script from the repository and I noticed that all was applied right except the D and the V keys were in the wrong location. I still suck at finding the config XKB files so I can't tell if it is a typo in the file, or an error in applying to my laptop, which is running Fedora 27 GNOME

@DreymaR
Copy link
Owner

DreymaR commented Apr 11, 2018

They aren't in the wrong position, but you need to also set a keyboard model with a CurlAngle mod. This depends on your keyboard type (ANSI vs ISO) and preferences in the case of ANSI (AngleZ vs others).

Sorry, but I couldn't make it perfectly modular. One reason is that I want the Extend mappings to follow the CurlAngle mod so that Cut/Copy/Paste are still on Extend+X/C/V etc.

Not sure how to make the documentation more clear on this point?

@maxigit
Copy link

maxigit commented Dec 3, 2020

I have a similar problem with the Curl-DH ergo mod.
As far as I understand D should be before V but this is not the case (D is in AB05 i.e. the same column as B and G which contradict the Matrix/Ergo diagram on the Colemak mod-dh website.)

@DreymaR
Copy link
Owner

DreymaR commented Dec 3, 2020

Again, you have likely failed to set the keyboard Model component and only got the Layout component going for you. Please study the setxkb.sh script very closely, look inside it if you wish. And read the BigBag for XKB carefully.

The reason is modularity. Some want different Angle mods with Curl(DH), etc etc.

If you wish, however, feel free to change the key code mappings for yourself instead, in the symbols/colemak file. Note that Extend mappings won't follow suit unless you also edit the symbols/extend file.

@maxigit
Copy link

maxigit commented Dec 3, 2020

I'm NOT using setxkb.sh, I'm using the installed layout (using the layout selector in Manjaro). The layout is called "English (Colemak[ed], Curl-DH ergo mod)".

Also line 275 of xkb/symbols/colemak section "cmk_ed_dbg" D is explicitely mapped to B (). I understand this is done deliberately but you end up with the sequence z x c v d not z x c d v as it appears in all diagrams (with or withoult anglemode).

Is D not supposed to be below F (qwerty) in DH ergo mode ? What am I missing ?

@DreymaR
Copy link
Owner

DreymaR commented Dec 3, 2020

And I have to repeat myself: To use my implementation and get the right Curl-DH-Angle mod you HAVE TO SET THE KEYBOARD MODEL APPROPRIATELY. Using a CurlAngle model. Not just an Angle model. Like the setxkb.sh script does it. If you don't use that you have to figure out which model to use and how to activate it. Okay? Or edit the files.

Yes, the key is mapping D to B. Then the model moves it. That's the way this is made. Maybe I'll change it eventually since it's so hard to understand for you people. For now, go ahead and edit that yourself as I said above.

@maxigit
Copy link

maxigit commented Dec 3, 2020

I understand that using setxkb.sh will work. However for some reason, setxkb.sh doesn't work on my system. Instead I'm using the layout installed by typing

 bash install-dreymar.xmod.sh -o

I AM NOT usind setxkb.sh THEREFORE I CAN NOT set the keyboard model.

Maybe the problen the problem is not people not understanding things, maybe it is that the layout exported by install-dreymar.xmod.sh doesn't the set the keybord model.

Also, I don't want Angle model but Ergo as I have an ortholinear keyboard (but that is probably another problem).

Now, I've edited the file. I just thought you might interesting in the feedback : Selecting with GUI the Colemak DH ergo layout as D and V inversed.
it's your stuff, you don't have to fix it indeed. I'm just telling.

@precondition
Copy link

I don't know what DE you use, but you may be able to pick the right keyboard model graphically here, if I remember correctly:

@DreymaR
Copy link
Owner

DreymaR commented Dec 3, 2020

The problem here may be that setting the keyboard model used to be easy and now in some distros it's hard. I'm not expecting anyone to use my setxkb script, that's not the point. But setting kbd model is quite different from Linux to Linux these days, and rather arcane in some of them. That's not how it was back when I first made my files! Ugh.

So yeah, I guess I really should find time to change this soon, to make things simpler. There have been several users who found it hard to both understand and perform. On a side note though: For Curl(DH) on a non-matrix board you really should use an Angle mod of some kind! And that'll still be implemented as a model, even if I remove the CurlAngle models from the equation.

@maxigit
Copy link

maxigit commented Dec 3, 2020

I see. I didn't realize you meant model in the keyboard GUI. However, I have an ortho-linear keyboard and setting the model to Angle doesn't really make sense (and just shift everything, removing the z). So If I undertand well, there is no way to get this with the actual bag of tricks. Am I correct ?

@DreymaR
Copy link
Owner

DreymaR commented Dec 3, 2020

Yes, right now that's correct. Sorry, will fix eventually. For now, please edit the scan codes manually in the symbols/colemak file.

I wrote the BigBag for XKB before matrix boards became quite as popular as they are today, so I didn't take them into consideration back then. On another side note, in the case of matrix boards we're truly talking about different models – exactly!

@DreymaR DreymaR added the question Good one! label Dec 3, 2020
@maxigit
Copy link

maxigit commented Dec 3, 2020

I understand now. Basically the "Angle" mode (shift zxcv to the left) is done by setting the keyboard model and should work with any layout, which makes sense. Am I correct ? However, the DH is then not implemented as a layout but as a curl variant of the angle mode (but not quite). So the actual implementation of DH is actually a mix betwen model and layout.
Well people (like me) expect just Colemak-DH to be yet another a layout (Colemak + mh loop and dvbg loop) nothing more and don't realize it is also a model.

@DreymaR
Copy link
Owner

DreymaR commented Dec 3, 2020

I know. One thing led to another and DH ended up being a chimæra of layout and model. You see, I wanted the Extend+V mapping to follow the V key that separates from the ZXC keys in the DH mod (and in CurlAngle) but not in the Angle mod. Some might want to keep the Extend mapping in the old V position even though it no longer holds a V. And so it gets complicated.

And it got worse, because if you use the "CurlAngle" keyboard model and go back to a QWERTY layout the model will still swap your V and B keys unless you reset to the pc105 model at the same time! So yeah, I realize that this needs to be fixed now.

Thanks for the discussion! ฅʕ •ᴥ•ʔฅ

@maxigit
Copy link

maxigit commented Dec 3, 2020

I feel your pain. ;-)

@DreymaR
Copy link
Owner

DreymaR commented Dec 4, 2020

Hi! I just pushed a new commit that hopefully makes things easier for you. I removed the Curl keyboard models completely (although the setxkb.sh shortstrings still refer to them – which shouldn't affect you), and moved D inside V in the Curl(DH) layout itself instead. Hope that makes life better for you!

Could you please install the latest version and test it out for me? I'm not using Linux at the moment.

@maxigit
Copy link

maxigit commented Dec 4, 2020

It works fine on my matrix keyboard ! Thank you very much 🥇

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Good one!
Projects
None yet
Development

No branches or pull requests

4 participants