~ubuntu-branches/ubuntu/hardy/xkeyboard-config/hardy-proposed

« back to all changes in this revision

Viewing changes to debian/patches/nbsp-level4nl.diff

  • Committer: Bazaar Package Importer
  • Author(s): Colin Watson
  • Date: 2008-04-21 16:42:54 UTC
  • Revision ID: james.westby@ubuntu.com-20080421164254-tdbq8tnivo0lgwi4
Tags: 1.1~cvs.20080104.1-1ubuntu6
* Actually apply ca-shs-add and lekp-add patches. Fix up lekp-add to avoid
  patch conflicts.
* nbsp-level4nl: Define a new type for French narrow non-breaking space
  handling which hardcodes the Control modifier, rather than relying on a
  level-5 shift which changes the modifier key's function for every key on
  the keyboard (LP: #198759). Patch from Nicolas Mailhot upstream, via
  https://bugs.freedesktop.org/show_bug.cgi?id=9529#c29.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
By Nicolas Mailhot, from https://bugs.freedesktop.org/show_bug.cgi?id=9529#c29
 
2
 
 
3
diff -uNr xkeyboard-config-20080420/rules/base.o_s.part xkeyboard-config-20080420.new/rules/base.o_s.part
 
4
--- xkeyboard-config-20080420/rules/base.o_s.part       2008-04-07 23:28:16.000000000 +0200
 
5
+++ xkeyboard-config-20080420.new/rules/base.o_s.part   2008-04-20 16:43:06.000000000 +0200
 
6
@@ -75,6 +75,7 @@
 
7
   nbsp:level3n          =      +nbsp(level3n)
 
8
   nbsp:level4           =      +nbsp(level4)
 
9
   nbsp:level4n          =      +nbsp(level4n)
 
10
+  nbsp:level4nl         =      +nbsp(level4nl)
 
11
   japan:nicola_f_bs     =      +jp(nicola_f_bs)
 
12
   kpdl:dot              =      +kpdl(dot)
 
13
   kpdl:comma            =      +kpdl(comma)
 
14
diff -uNr xkeyboard-config-20080420/rules/base.xml.in xkeyboard-config-20080420.new/rules/base.xml.in
 
15
--- xkeyboard-config-20080420/rules/base.xml.in 2008-04-20 00:36:46.000000000 +0200
 
16
+++ xkeyboard-config-20080420.new/rules/base.xml.in     2008-04-20 21:12:23.000000000 +0200
 
17
@@ -4588,6 +4588,12 @@
 
18
           <_description>Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level</_description>
 
19
         </configItem>
 
20
       </option>
 
21
+      <option>
 
22
+        <configItem>
 
23
+          <name>nbsp:level4nl</name>
 
24
+          <_description>Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level; uses hardcoded control instead of iso-level-5 to access high levels.</_description>
 
25
+        </configItem>
 
26
+      </option>
 
27
     </group>
 
28
     <group allowMultipleSelection="true">
 
29
       <configItem>
 
30
diff -uNr xkeyboard-config-20080420/symbols/fr xkeyboard-config-20080420.new/symbols/fr
 
31
--- xkeyboard-config-20080420/symbols/fr        2008-03-22 19:50:08.000000000 +0100
 
32
+++ xkeyboard-config-20080420.new/symbols/fr    2008-04-20 17:18:30.000000000 +0200
 
33
@@ -85,11 +85,11 @@
 
34
 // Unicode French derivative
 
35
 // Loose refactoring of the historic Linux French keyboard layout
 
36
 //
 
37
-// Copyright © 2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
 
38
+// Copyright © 2006-2008 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
 
39
 //
 
40
 // Credits (fr-latin1, fr-latin0, fr-latin9)
 
41
 //   © 199x-1996 René Cougnenc ✝
 
42
-//   © 1997-2002 Guylhem Aznar <clavier @ externe.net> 
 
43
+//   © 1997-2002 Guylhem Aznar <clavier @ externe.net>
 
44
 //   © 2003-2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
 
45
 //
 
46
 // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
 
47
@@ -113,8 +113,7 @@
 
48
 
 
49
     include "latin"
 
50
     include "level3(ralt_switch)"
 
51
-    include "level5(rctrl_switch)"
 
52
-    include "nbsp(level4n)"
 
53
+    include "nbsp(level4nl)"
 
54
     include "keypad(oss)"
 
55
 
 
56
     name[Group1]="France - Alternative";
 
57
diff -uNr xkeyboard-config-20080420/symbols/nbsp xkeyboard-config-20080420.new/symbols/nbsp
 
58
--- xkeyboard-config-20080420/symbols/nbsp      2007-01-05 00:31:30.000000000 +0100
 
59
+++ xkeyboard-config-20080420.new/symbols/nbsp  2008-04-20 17:50:36.000000000 +0200
 
60
@@ -62,7 +62,6 @@
 
61
 };
 
62
 
 
63
 // level4n provides narrow no-breaking space in addition to the normal one
 
64
-// Used by fr(oss), be(oss)…
 
65
 partial
 
66
 xkb_symbols "level4n" {
 
67
  key <SPCE> {
 
68
@@ -71,3 +70,14 @@
 
69
  };
 
70
 };
 
71
 
 
72
+// level4nl provides narrow no-breaking space in addition to the normal one
 
73
+// without forcing the use of level5 for mostly four-level layouts
 
74
+// Used by fr(oss), be(oss)…
 
75
+partial
 
76
+xkb_symbols "level4nl" {
 
77
+ key <SPCE> {
 
78
+   type[Group1]="LOCAL_EIGHT_LEVEL",
 
79
+   symbols[Group1]= [ space, space, space, nobreakspace, space, 0x100202F, NoSymbol, NoSymbol ]
 
80
+ };
 
81
+};
 
82
+
 
83
diff -uNr xkeyboard-config-20080420/types/pc xkeyboard-config-20080420.new/types/pc
 
84
--- xkeyboard-config-20080420/types/pc  2007-08-29 00:04:38.000000000 +0200
 
85
+++ xkeyboard-config-20080420.new/types/pc      2008-04-20 21:15:24.000000000 +0200
 
86
@@ -67,4 +67,45 @@
 
87
        level_name[Level1] = "Base";
 
88
        level_name[Level2] = "Ctrl+Alt";
 
89
     };
 
90
+
 
91
+   // Local eight level
 
92
+   // Needed when you want part of your layout eight-level but can not use
 
93
+   // LevelFive as modifier, as this will take over right ctrl by default
 
94
+   // for all the layout and is too invasive for your average four-level user
 
95
+   // Needed to fix bug #9529
 
96
+   // FIXME Should really use RControl but it's seems not to be enabled by
 
97
+   // default and touching this requires a lot of testing
 
98
+   type "LOCAL_EIGHT_LEVEL" {
 
99
+       modifiers = Shift+Lock+LevelThree+Control;
 
100
+
 
101
+       map[None]       = Level1;
 
102
+       map[Lock+Shift] = Level1;
 
103
+       map[Shift] = Level2;
 
104
+       map[Lock]  = Level2;
 
105
+
 
106
+       map[LevelThree]            = Level3;
 
107
+       map[Lock+Shift+LevelThree] = Level3;
 
108
+       map[Shift+LevelThree] = Level4;
 
109
+       map[Lock+LevelThree]  = Level4;
 
110
+
 
111
+       map[Control]            = Level5;
 
112
+       map[Lock+Shift+Control] = Level5;
 
113
+       map[Shift+Control] = Level6;
 
114
+       map[Lock+Control]  = Level6;
 
115
+
 
116
+       map[LevelThree+Control]            = Level7;
 
117
+       map[Lock+Shift+LevelThree+Control] = Level7;
 
118
+       map[Shift+LevelThree+Control] = Level8;
 
119
+       map[Lock+LevelThree+Control]  = Level8;
 
120
+
 
121
+       level_name[Level1] = "Base";
 
122
+       level_name[Level2] = "Shift";
 
123
+       level_name[Level3] = "Level3";
 
124
+       level_name[Level4] = "Shift Level3";
 
125
+       level_name[Level5] = "Ctrl";
 
126
+       level_name[Level6] = "Shift Ctrl";
 
127
+       level_name[Level7] = "Level3 Ctrl";
 
128
+       level_name[Level8] = "Shift Level3 Ctrl";
 
129
+    };
 
130
+
 
131
 };