// $Xorg: fi,v 1.3 2000/08/17 19:54:42 cpqbld Exp $

// $XFree86: xc/programs/xkbcomp/symbols/fi,v 3.10 2003/01/26 02:48:28 dawes Exp $


partial alphanumeric_keys 
 xkb_symbols "basic" {
 
    // Describes the differences between a very simple en_US
    // keyboard and a Finnish keyboard with dead key support
    // and all of ISO-8859-1 and ISO-8859-15 characters available.
 
    name[Group1]= "Finnish";
 
    key <TLDE> {	[         section,         onehalf      ],
			[      onequarter,   threequarters      ]};
    key <LSGT> {	[	     less,	   greater	],
                 	[             bar,       brokenbar      ]};
    // AltGr+<SPCE> is pressed accidentally too often after AltGr+<LSGT>,
    // hence AltGr+<SPCE> produces now space, not nobreakspace.
    key <SPCE> {	[	    space,	     space	],
			[	    space,    nobreakspace	]};
    key <AE01> {	[               1,          exclam  	],
			[      exclamdown,     onesuperior	]};
    key <AE02> {	[               2,        quotedbl  	],
			[	       at,     twosuperior	]};
    key <AE03> {	[              	3,	numbersign	],
			[	 sterling,   threesuperior	]};
    key <AE04> {	[               4,        currency     	],
			[	   dollar,	      cent	]};
    key <AE05> {	[               5,         percent     	],
			[        EuroSign,	 masculine	]};
    key <AE06> {	[               6,       ampersand     	],
			[	      yen,     ordfeminine	]};
    key <AE07> {	[               7,           slash     	],
			[       braceleft,       plusminus	]};
    key <AE08> {	[               8,       parenleft     	],
			[     bracketleft,   guillemotleft	]};
    key <AE09> {	[               9,      parenright     	],
			[    bracketright,  guillemotright	]};
    key <AE10> {	[               0,           equal     	],
                        [      braceright,          degree      ]};
    key <AB08> {	[           comma,       semicolon     	],
			[    dead_cedilla,     dead_ogonek	]};
    key <AB09> {	[          period,           colon     	],
			[  periodcentered,         notsign	]};
    key <AB01> {        [               z,               Z      ],
                        [	   zcaron,	    Zcaron      ]};
    key <AB02> {        [               x,               X      ],
                        [	 multiply,	  division      ]};
    key <AB03> {        [               c,               C      ],
                        [	copyright,	      cent      ]};
    key <AB05> {        [               b,               B      ],
                        [	   ssharp,	  NoSymbol      ]};
    key <AB06> {        [               n,               N      ],
                        [	   ntilde,	    Ntilde      ]};
    key <AB07> {        [               m,               M      ],
                        [	       mu,	  NoSymbol      ]};
    key <AB10> {	[           minus,      underscore     	],
			[	   hyphen,          macron	]};
    key <AC02> {        [               s,               S      ],
                        [          scaron,          Scaron      ]};
    key <AC03> {        [               d,               D      ],
                        [             eth,             ETH      ]};
    key <AD03> {        [               e,               E      ],
                        [        EuroSign,            cent      ]};
    key <AD04> {        [               r,               R      ],
                        [      registered,        NoSymbol      ]};
    key <AD05> {        [               t,               T      ],
                        [           thorn,           THORN      ]};
    key <AD10> {        [               p,               P      ],
                        [       paragraph,        NoSymbol      ]};
    key <AC10> {	[      odiaeresis,      Odiaeresis	],
			[	   oslash,        Ooblique 	]};
    key <AE11> {	[            plus,        question      ],
			[       backslash,    questiondown	]};
    key	<AC11> {	[      adiaeresis,      Adiaeresis	],
			[	       ae,	        AE	]};
    key <BKSL> {	[      apostrophe,        asterisk	],
			[	 NoSymbol,	  NoSymbol	]};
    key <AD11> {	[	    aring,           Aring 	],
			[	       oe,		OE	]};
    key <AE12> {   	[      dead_acute,      dead_grave      ],
			[	 NoSymbol,	  NoSymbol	]};
    key <AD12> {   	[  dead_diaeresis, dead_circumflex      ],
                 	[      dead_tilde,      dead_caron      ]};

    // End alphanumeric section, begin "Keypad"
    key <KPDL> {	[  KP_Delete,	KP_Separator	]	};
    // End "Keypad" section

    // Begin modifier mappings
    
    modifier_map Shift		{ Shift_L };
    modifier_map Lock		{ Caps_Lock };
    modifier_map Control	{ Control_L };
    modifier_map Mod3		{ Mode_switch };
};

partial alphanumeric_keys 
xkb_symbols "Sundeadkeys" {
    include "fi(basic)"		// for consistent naming
};

partial alphanumeric_keys 
xkb_symbols "sundeadkeys" {
    include "fi(Sundeadkeys)"	// for consistent naming
};

partial alphanumeric_keys 
xkb_symbols "nodeadkeys" {
    // Modifies the basic Finnish layout to eliminate all dead keys

    include "fi(basic)"		// for consistent naming

    key <AB08> {	[           comma,       semicolon     	],
			[         cedilla,          ogonek	]};
    key <AE12> {   	[           acute,           grave      ],
			[	 NoSymbol,	  NoSymbol	]};
    key <AD12> {   	[       diaeresis,     asciicircum      ],
                 	[      asciitilde,           caron      ]};
};
