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