Home | History | Annotate | Line # | Download | only in symbols
nbsp revision 1.1.1.2
      1  1.1.1.2  mrg // $XKeyboardConfig$
      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