Hi,

als ich das Mine Layout unter Ubuntu 23.04 mit xkeyboard-config 2.38
nutzen wollte, musste ich feststellen, dass es nicht mehr funktioniert.
Damit ihr nicht ebenso Zeit mit Fehlersuche verbringen müsst, hier die
Lösung: 

Upstream commit 4a60b90f119db150132901bd13355611de67aa69 ("symbols:
remove redundant mappings and assignments for <LVL3> and <LVL5>") hat 
"level3(modifier_mapping)" entfernt. Also einfach diese include-Zeile
aus dem Layout entfernen. Anbei der Patch für xkeyboard-config 2.38, den
ich verwende. Ein fertiges xkeyboard-config Paket für Ubuntu 23.04 gibt
es unter https://launchpad.net/~bdrung/+archive/ubuntu/staging

Das Mine Layout wird vermutlich für xkeyboard-config 2.39 eine weitere
Anpassung benötigen, da commit fa7f8eb5461e5187810025c61264eb40a395b55d
("rename two eight-level types to be more readable") die Gruppen
umbenannt hat.

-- 
Benjamin Drung
Debian & Ubuntu Developer
From: Benjamin Drung <bdr...@ubuntu.com>
Date: Tue, 18 Apr 2023 00:55:01 +0200
Subject: Add German Neo Mine layout

Origin: https://neo-layout.org/Layouts/mine/
Signed-off-by: Benjamin Drung <bdr...@debian.org>
---
 rules/base.xml |  6 ++++++
 symbols/de     | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 symbols/level3 |  9 +++++++++
 3 files changed, 75 insertions(+)

diff --git a/rules/base.xml b/rules/base.xml
index dca28e1..24b5bdd 100644
--- a/rules/base.xml
+++ b/rules/base.xml
@@ -3947,6 +3947,12 @@
             <description>German (Neo 2)</description>
           </configItem>
         </variant>
+        <variant>
+          <configItem>
+            <name>mine</name>
+            <description>German (Mine)</description>
+          </configItem>
+        </variant>
         <variant>
           <configItem>
             <name>mac</name>
diff --git a/symbols/de b/symbols/de
index 6cca921..2ddce95 100644
--- a/symbols/de
+++ b/symbols/de
@@ -1184,3 +1184,63 @@ xkb_symbols "lld" {
 
     key <AD10> { [ p, P, ediaeresis, Ediaeresis ] };
 };
+
+partial alphanumeric_keys
+xkb_symbols "mine_base" {
+    include "de(neo_base)"
+
+    key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
+    key <AB08> { [ comma,                   endash,                  NoSymbol,                U03F1,                   NoSymbol,                NoSymbol,                U21D2,                   NoSymbol                 ] };
+    key <AB09> { [ period,                  enfilledcircbullet,      NoSymbol,                U03D1,                   NoSymbol,                NoSymbol,                U21A6,                   NoSymbol                 ] };
+    // AC12 recieves symbols from neo AD12
+    key <AC12> { [ dead_acute,              dead_tilde,              dead_stroke,             dead_psili,              dead_doubleacute,        NoSymbol,                dead_breve,              NoSymbol                 ] };
+
+    key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
+    key <AD01> { [ j,                       J,                       NoSymbol,                Greek_theta,             NoSymbol,                NoSymbol,                Greek_THETA,             NoSymbol                 ] };
+    key <AD02> { [ l,                       L,                       NoSymbol,                Greek_lambda,            NoSymbol,                NoSymbol,                Greek_LAMBDA,            NoSymbol                 ] };
+    key <AD03> { [ u,                       U,                       NoSymbol,                NoSymbol,                NoSymbol,                NoSymbol,                includedin,              NoSymbol                 ] };
+    key <AD04> { [ a,                       A,                       NoSymbol,                Greek_alpha,             NoSymbol,                NoSymbol,                U2200,                   NoSymbol                 ] };
+    key <AD05> { [ q,                       Q,                       NoSymbol,                U03D5,                   NoSymbol,                NoSymbol,                U211A,                   NoSymbol                 ] };
+    key <AD06> { [ w,                       W,                       NoSymbol,                Greek_omega,             NoSymbol,                NoSymbol,                Greek_OMEGA,             NoSymbol                 ] };
+    key <AD07> { [ b,                       B,                       NoSymbol,                Greek_beta,              NoSymbol,                NoSymbol,                U21D0,                   NoSymbol                 ] };
+    key <AD08> { [ d,                       D,                       NoSymbol,                Greek_delta,             NoSymbol,                NoSymbol,                Greek_DELTA,             NoSymbol                 ] };
+    key <AD09> { [ g,                       G,                       NoSymbol,                Greek_gamma,             NoSymbol,                NoSymbol,                Greek_GAMMA,             NoSymbol                 ] };
+    key <AD10> { [ y,                       Y,                       NoSymbol,                Greek_upsilon,           NoSymbol,                NoSymbol,                nabla,                   NoSymbol                 ] };
+    // AD11 receives symbol from neo AC11 in layers 3 and from neo AD11 in layer 4
+    key <AD11> { [ z,                       Z,                       at,                      Greek_zeta,              U2212,                   NoSymbol,                U2124,                   NoSymbol                 ] };
+    // AD12 recieves symbol from neo AD11 in layers 3 and from neo AB10 in layer 4
+    key <AD12> { [ ssharp,                  U1E9E,                   U017F,                   Greek_finalsmallsigma,   semicolon,               NoSymbol,                jot,                     NoSymbol                 ] };
+    key <AC01> { [ c,                       C,                       NoSymbol,                Greek_chi,               NoSymbol,                NoSymbol,                U2102,                   NoSymbol                 ] };
+    key <AC02> { [ r,                       R,                       NoSymbol,                Greek_rho,               NoSymbol,                NoSymbol,                U211D,                   NoSymbol                 ] };
+    key <AC03> { [ i,                       I,                       NoSymbol,                Greek_iota,              NoSymbol,                NoSymbol,                integral,                NoSymbol                 ] };
+    key <AC04> { [ e,                       E,                       NoSymbol,                Greek_epsilon,           NoSymbol,                NoSymbol,                U2203,                   NoSymbol                 ] };
+    key <AC05> { [ o,                       O,                       NoSymbol,                Greek_omicron,           NoSymbol,                NoSymbol,                elementof,               NoSymbol                 ] };
+    key <AC06> { [ m,                       M,                       NoSymbol,                Greek_mu,                NoSymbol,                NoSymbol,                ifonlyif,                NoSymbol                 ] };
+    key <AC07> { [ n,                       N,                       NoSymbol,                Greek_nu,                NoSymbol,                NoSymbol,                U2115,                   NoSymbol                 ] };
+    key <AC08> { [ t,                       T,                       NoSymbol,                Greek_tau,               NoSymbol,                NoSymbol,                partialderivative,       NoSymbol                 ] };
+    key <AC09> { [ s,                       S,                       NoSymbol,                Greek_sigma,             NoSymbol,                NoSymbol,                Greek_SIGMA,             NoSymbol                 ] };
+    key <AC10> { [ h,                       H,                       NoSymbol,                Greek_psi,               NoSymbol,                NoSymbol,                Greek_PSI,               NoSymbol                 ] };
+    key <AB01> { [ v,                       V,                       NoSymbol,                NoSymbol,                NoSymbol,                NoSymbol,                radical,                 NoSymbol                 ] };
+    key <AB02> { [ x,                       X,                       NoSymbol,                Greek_xi,                NoSymbol,                NoSymbol,                Greek_XI,                NoSymbol                 ] };
+    key <AB03> { [ udiaeresis,              Udiaeresis,              NoSymbol,                NoSymbol,                NoSymbol,                NoSymbol,                union,                   NoSymbol                 ] };
+    key <AB04> { [ adiaeresis,              Adiaeresis,              NoSymbol,                Greek_eta,               NoSymbol,                NoSymbol,                U2135,                   NoSymbol                 ] };
+    key <AB05> { [ odiaeresis,              Odiaeresis,              NoSymbol,                U03F5,                   NoSymbol,                NoSymbol,                intersection,            NoSymbol                 ] };
+    key <AB06> { [ p,                       P,                       NoSymbol,                Greek_pi,                NoSymbol,                NoSymbol,                Greek_PI,                NoSymbol                 ] };
+    key <AB07> { [ f,                       F,                       NoSymbol,                Greek_phi,               NoSymbol,                NoSymbol,                Greek_PHI,               NoSymbol                 ] };
+    // AB10 receives symbol from neo AC11 in layer 4
+    key <AB10> { [ k,                       K,                       NoSymbol,                Greek_kappa,             period,                  KP_Decimal,              multiply,                NoSymbol                 ] };
+};
+
+partial alphanumeric_keys modifier_keys keypad_keys
+xkb_symbols "mine" {
+
+    include "de(mine_base)"
+
+    name[Group1]= "German (Mine)";
+
+    include "shift(both_capslock)"
+    include "level3(caps_switch)"
+    include "level3(ac11_switch)"
+    include "level5(lsgt_switch_lock)"
+    include "level5(ralt_switch_lock)"
+};
diff --git a/symbols/level3 b/symbols/level3
index f76906f..536a760 100644
--- a/symbols/level3
+++ b/symbols/level3
@@ -122,6 +122,15 @@ xkb_symbols "bksl_switch" {
   };
 };
 
+// The AC11 key (while pressed) chooses the third shift level.
+partial modifier_keys
+xkb_symbols "ac11_switch" {
+  key <AC11> {
+    type[Group1]="ONE_LEVEL",
+    symbols[Group1] = [ ISO_Level3_Shift ]
+  };
+};
+
 // The Less/Greater key (while pressed) chooses the third shift level.
 partial modifier_keys
 xkb_symbols "lsgt_switch" {
_______________________________________________
Diskussion mailing list -- diskussion@neo-layout.org
To unsubscribe send an email to diskussion-le...@neo-layout.org

Antwort per Email an