The attached patch modularises the wang keypad. It seems to do the right thing inside the be(wang) layout, not so sure when the option is used directly. Not that running rawhide at the start of a fedora cycle is a good way to detect brokenness :)
Created attachment 7619 [details] [review] Proposed patch
Please test this wang modularization
(BTW some parts of xkeyboard-config use "numpad", others "keypad", this is all very confusing)
Nicolas, it seems be(wang) = be(basic) + keypad(legacy_wang). May be, it would make sense to drop be(wang) altogether? Just creating the compatibility rule mapping it to be(basic)...
Well actually if you look at be(wang) it also tweaks two keys. Using only keypad(legacy_wang) would kill this tweaking I modularized wang because I was looking at be for be(oss) and it seemed the right thing to do (esp. since be(wang) comments points at a uk keyboard so I suppose the wang keypad is not used only in Belgium) But I have no wang keyboard so I haven't the faintest idea if dropping the rest of be(wang) is ok. Probably whoever asked for be(wang) would be better placed to comment
The last Wang azerty Belgium 724 keyboard I bought in 1996 had two additional engravings, a tilde and a brokenbar located in the top right corner of the TLDE and LSGT key respectively. This model was unavailable shortly after so I guess it is uncommon. It would probably be fine to drop support for this layout. On the other hand, the tilde and brokenbar could be added to the be default since it is a strict addition. Model number overview: 724 qwerty US = pc101 + 8 keys (Help, F13-F16, Cancel, Erase, GL) (725-3770) 724 azerty BE = pc102 + 8 keys + three level keypad (item 725-3771-ae) pre 1996: came with a coiled grey PE DIN/5 to RJ11 telephone cable 1997: used a high quality coiled ivory synthetic rubber cable 724 qwerty UK = pc102 + 8 keys + three level keypad (item 725-3771-uk) Pre 1990 keyboards came without PC-style arrow engravings on the numeric keypad. It was the digit with or without the additional symbol. The PC upgrade kit contained three level keycaps, a tweezer, and instructions, all shrink-wrapped on a piece of cardboard.
More questions: 1. Why not just make keypad(*number_wang) public? Instead of keypad(*_wang)? 2. Why THREE_LEVELS_KEYPAD is necessary? AFAICS FOUR_LEVELS_KEYPAD would be enough, wouldn't it? I do not think that processing of NumLock + Level3 and Shift + Level3 is critical - I would prefer not to create new types without real need.
(In reply to comment #7) > More questions: > 1. Why not just make keypad(*number_wang) public? Instead of keypad(*_wang)? Your call. Would be an easy decision if every layout used the modularized keypad definition, but right now only two (fr(oss) and be(oss) do). Also while it does not change a thing for basic wang, you'll lose the math operators for unicode_wang > 2. Why THREE_LEVELS_KEYPAD is necessary? AFAICS FOUR_LEVELS_KEYPAD would be > enough, wouldn't it? I do not think that processing of NumLock + Level3 and > Shift + Level3 is critical - I would prefer not to create new types without real > need. Maybe I've overengineered a little :) It's really a three-level keypad though, I like the fact the code made that clear. I can rework the patch a little if you really want it 4-level
> Also while it does > not change a thing for basic wang, you'll lose the math operators for unicode_wang Well, you're right at this point. Let's leave it as it is. > like the fact the code made that clear. I can rework the patch a little if you > really want it 4-level Yes please do so. Even though we do not use level 4 - I think it can be safely ignored, for simplicity sake.
Created attachment 8294 [details] [review] Proposed patch Updated patch that does not need a new type
BTW it seems I've been modularising keypad layouts (keypad options) while people have been modularising keypad rules (numpad options) The problem is the two changes ignore each other : if can't both use a modularised keypad layout option and a numpad rule. Unfortunately the numpad changes make my head spin, but something should be done about this
(In reply to comment #10) > Updated patch that does not need a new type Thinking about it some more — maybe putting a Nosymbol at fourth level is more correct ? IIRC fourth level inherits third if not defined
Created attachment 10738 [details] [review] Proposed patch
Ok, new patch Since I don't have a wang keyboard this will be the last one unless someone finds a problem. It depends on the kpdl stuff in bug 11611
Created attachment 10741 [details] [review] Proposed patch Remove cut & paste duplicate
Again, forgot base.o_s.part ;) Committed, thanks.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.