nbsp revision 1.1 1 // $XKeyboardConfig: xkeyboard-config/symbols/nbsp,v 1.4 2008-04-22 19:54:11 svu Exp $
2 //
3
4 // Let space provide nobreakspace for the desired level.
5
6 partial
7 xkb_symbols "none" {
8 key <SPCE> {
9 type[Group1]="ONE_LEVEL",
10 symbols[Group1]= [ space ]
11 };
12 };
13
14 partial
15 xkb_symbols "level2" {
16 key <SPCE> {
17 type[Group1]="TWO_LEVEL",
18 symbols[Group1]= [ space, nobreakspace ]
19 };
20 };
21
22
23 // level3 & level3ns provide no-breaking spaces starting from level3
24 // This is good for typographers but experience shows many users accidently
25 // type no-breaking spaces on the CLI (resulting in errors)
26 // Used by fr(latin9)
27 partial
28 xkb_symbols "level3" {
29 key <SPCE> {
30 type[Group1]="FOUR_LEVEL",
31 symbols[Group1]= [ space, space, nobreakspace ]
32 };
33 };
34
35 // level3s kills fourth level
36 // Used by ca(multix)
37 partial
38 xkb_symbols "level3s" {
39 key <SPCE> {
40 type[Group1]="FOUR_LEVEL",
41 symbols[Group1]= [ space, space, nobreakspace, NoSymbol ]
42 };
43 };
44
45 // level3n provides narrow no-breaking space in addition to the normal one
46 partial
47 xkb_symbols "level3n" {
48 key <SPCE> {
49 type[Group1]="FOUR_LEVEL",
50 symbols[Group1]= [ space, space, nobreakspace, 0x100202F ]
51 };
52 };
53
54
55 // for this reason pushing no-breaking spaces to level4 is the safe default nowadays
56 partial
57 xkb_symbols "level4" {
58 key <SPCE> {
59 type[Group1]="FOUR_LEVEL",
60 symbols[Group1]= [ space, space, space, nobreakspace ]
61 };
62 };
63
64 // level4n provides narrow no-breaking space in addition to the normal one
65 partial
66 xkb_symbols "level4n" {
67 key <SPCE> {
68 type[Group1]="EIGHT_LEVEL",
69 symbols[Group1]= [ space, space, space, nobreakspace, space, 0x100202F, NoSymbol, NoSymbol ]
70 };
71 };
72
73 // level4nl provides narrow no-breaking space in addition to the normal one
74 // without forcing the use of level5 for mostly four-level layouts
75 // Used by fr(oss), be(oss)
76 partial
77 xkb_symbols "level4nl" {
78 key <SPCE> {
79 type[Group1]="LOCAL_EIGHT_LEVEL",
80 symbols[Group1]= [ space, space, space, nobreakspace, space, 0x100202F, NoSymbol, NoSymbol ]
81 };
82 };
83
84