Home | History | Annotate | Line # | Download | only in symbols
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