// EAK (Easy Access keyboards: Internet, Multimedia, PDA)
// Copyright (C) 2002 Stanislav Brabec <sbrabec@suse.cz>
//
// Based on the LinEAK project.
// LinEAK - Linux support for Easy Access and Internet Keyboards
// Copyright (C) 2001, 2002 Mark Smulders <Mark@PIRnet.nl>

// Usage in XF86Config:
// Option "XkbLayout"	"my_kb_layout"
// Option "XkbVariant"	"my_kb_variant"
// Option "XkbModel"	"my_eak_type"
// Option "XkbRules"	"xfree86"
// Simple command line usage:
// setxkbmap 'my_kb_layout' -variant 'my_kb_variant' -model 'my_eak_type'

// Very common set of media keys.
hidden partial alphanumeric_keys
xkb_symbols "media_common" {
    key <I01>   {       [ XF86AudioMedia        ] };
    key <I10>   {       [ XF86AudioPrev         ] };
    key <I19>   {       [ XF86AudioNext         ] };
    key <I20>   {       [ XF86AudioMute         ] };
    key <I22>   {       [ XF86AudioPlay, XF86AudioPause ] };
    key <I24>   {       [ XF86AudioStop, XF86Eject ] };
    key <I2E>   {       [ XF86AudioLowerVolume  ] };
    key <I30>   {       [ XF86AudioRaiseVolume  ] };
    key <K5A>   {       [ XF86Eject             ] };
    key <K6C>   {       [ XF86Eject             ] };
};

// Popular web navigation keys.
hidden partial alphanumeric_keys
xkb_symbols "nav_common" {
    key <I21>   {       [ XF86Calculator        ] };
    key <I32>   {       [ XF86WWW               ] };
    key <I65>   {       [ XF86Search            ] };
    key <I66>   {       [ XF86Favorites         ] };
    key <I67>   {       [ XF86Reload            ] };
    key <I68>   {       [ XF86Stop              ] };
    key <I69>   {       [ XF86Forward           ] };
    key <I6A>   {       [ XF86Back              ] };
    key <I6B>   {       [ XF86MyComputer        ] };
    key <I6C>   {       [ XF86Mail              ] };
    key <I6D>   {       [ XF86AudioMedia        ] };
};

// ACPI Standard
hidden partial alphanumeric_keys
xkb_symbols "acpi_common" {
    key <I5E>	{	[ XF86PowerOff		]	};
    key <I5F>	{	[ XF86Standby		]	};
    key <I63>	{	[ XF86WakeUp		]	};
    key <I74>	{	[ XF86Battery		]	};
    key <I76>	{	[ XF86WLAN		]	};
    key <I16>	{	[ XF86Sleep		]	};
};

// Combined sections, for simplicity.
hidden partial alphanumeric_keys
xkb_symbols "media_nav_common" {
    include "inet(media_common)"
    include "inet(nav_common)"
};

hidden partial alphanumeric_keys
xkb_symbols "media_nav_acpi_common" {
    include "inet(media_common)"
    include "inet(nav_common)"
    include "inet(acpi_common)"
};

hidden partial alphanumeric_keys
xkb_symbols "nav_acpi_common" {
    include "inet(nav_common)"
    include "inet(acpi_common)"
};

hidden partial alphanumeric_keys
xkb_symbols "media_acpi_common" {
    include "inet(media_common)"
    include "inet(acpi_common)"
};

// Evdev Standardized Keycodes
partial alphanumeric_keys
xkb_symbols "evdev" {
    key <MUTE>   {      [ XF86AudioMute         ]       };
    key <VOL->   {      [ XF86AudioLowerVolume  ]       };
    key <VOL+>   {      [ XF86AudioRaiseVolume  ]       };
    key <POWR>   {      [ XF86PowerOff          ]       };
    key <STOP>   {      [ Cancel                ]       };
    key <AGAI>   {      [ Redo                  ]       };
    key <PROP>   {      [ SunProps              ]       };
    key <UNDO>   {      [ Undo                  ]       };
    key <FRNT>   {      [ SunFront              ]       };
    key <COPY>   {      [ XF86Copy              ]       };
    key <OPEN>   {      [ XF86Open              ]       };
    key <PAST>   {      [ XF86Paste             ]       };
    key <FIND>   {      [ Find                  ]       };
    key <CUT>    {      [ XF86Cut               ]       };
    key <HELP>   {      [ Help                  ]       };
    key <LNFD>   {      [ Linefeed              ]       };

// Commented out because HZTG has same keycode as TLDE
//    key <HZTG>   {      [ Zenkaku_Hankaku       ]       };

    key <HKTG>   {      [ Hiragana_Katakana     ]       };
    key <HENK>   {      [ Henkan                ]       };
    key <MUHE>   {      [ Muhenkan              ]       };
    key <KATA>   {      [ Katakana              ]       };
    key <HIRA>   {      [ Hiragana              ]       };
    key <RO>     {      [ Romaji                ]       };

    key <HNGL>   {      [ Hangul                ]       };
    key <HJCV>   {      [ Hangul_Hanja          ]       };
    key <FK21>   {      [ XF86TouchpadToggle    ]       };
    key <FK22>   {      [ XF86TouchpadOn        ]       };
    key <FK23>   {      [ XF86TouchpadOff       ]       };

    key <FK20>   {      [ XF86AudioMicMute      ]       };

//  key <I120>   {      [ ]       }; // KEY_MACRO
    key <I126>   {      [ plusminus             ]       };
    key <I128>   {      [ XF86LaunchA           ]       };
    key <I147>   {      [ XF86MenuKB            ]       };
    key <I148>   {      [ XF86Calculator        ]       };
//  key <I149>   {      [ ]       }; // KEY_SETUP
    key <I150>   {      [ XF86Sleep             ]       };
    key <I151>   {      [ XF86WakeUp            ]       };
    key <I152>   {      [ XF86Explorer          ]       };
    key <I153>   {      [ XF86Send              ]       };
//  key <I154>   {      [ ]       }; // KEY_DELETEFILE
    key <I155>   {      [ XF86Xfer              ]       };
    key <I156>   {      [ XF86Launch1           ]       };
    key <I157>   {      [ XF86Launch2           ]       };
    key <I158>   {      [ XF86WWW               ]       };
    key <I159>   {      [ XF86DOS               ]       };
    key <I160>   {      [ XF86ScreenSaver       ]       };
    key <I161>   {      [ XF86RotateWindows     ]       };
    key <I162>   {      [ XF86TaskPane          ]       };
    key <I163>   {      [ XF86Mail              ]       };
    key <I164>   {      [ XF86Favorites         ]       };
    key <I165>   {      [ XF86MyComputer        ]       };
    key <I166>   {      [ XF86Back              ]       };
    key <I167>   {      [ XF86Forward           ]       };
//  key <I168>   {      [ ]       }; // KEY_CLOSECD (opposite of eject)
    key <I169>   {      [ XF86Eject             ]       };
    key <I170>   {      [ XF86Eject, XF86Eject  ]       };
    key <I171>   {      [ XF86AudioNext         ]       };
    key <I172>   {      [ XF86AudioPlay, XF86AudioPause ] };
    key <I173>   {      [ XF86AudioPrev         ]       };
    key <I174>   {      [ XF86AudioStop, XF86Eject ]    };
    key <I175>   {      [ XF86AudioRecord       ]       };
    key <I176>   {      [ XF86AudioRewind       ]       };
    key <I177>   {      [ XF86Phone             ]       };
//  key <I178>   {      [ ]       }; // KEY_ISO
    key <I179>   {      [ XF86Tools             ]       };
    key <I180>   {      [ XF86HomePage          ]       };
    key <I181>   {      [ XF86Reload           ]       };
    key <I182>   {      [ XF86Close             ]       };
//  key <I183>   {      [ ]       }; // KEY_MOVE
//  key <I184>   {      [ ]       }; // KEY_EDIT
    key <I185>   {      [ XF86ScrollUp          ]       };
    key <I186>   {      [ XF86ScrollDown        ]       };
    key <I187>   {      [ parenleft             ]       };
    key <I188>   {      [ parenright            ]       };
    key <I189>   {      [ XF86New               ]       };
    key <I190>   {      [ Redo                  ]       };
    key <I192>   {      [ XF86LaunchA           ]       };
    key <I193>   {      [ XF86LaunchC           ]       };
    key <I194>   {      [ XF86LaunchD           ]       };
    key <I195>   {      [ XF86LaunchE           ]       };
    key <I196>   {      [ XF86LaunchF           ]       };
    key <I208>   {      [ XF86AudioPlay         ]       };
    key <I209>   {      [ XF86AudioPause        ]       };
    key <I210>   {      [ XF86Launch3           ]       };
    key <I211>   {      [ XF86Launch4           ]       };
    key <I212>   {      [ XF86LaunchB           ]       };
    key <I213>   {      [ XF86Suspend           ]       };
    key <I214>   {      [ XF86Close             ]       };
    key <I215>   {      [ XF86AudioPlay         ]       };
    key <I216>   {      [ XF86AudioForward      ]       };
//  key <I217>   {      [ ]       }; // KEY_BASSBOOST
    key <I218>   {      [ Print                 ]       };
//  key <I219>   {      [ ]       }; // KEY_HP
    key <I220>   {      [ XF86WebCam            ]       };
//  key <I221>   {      [ ]       }; // KEY_SOUND
//  key <I222>   {      [ ]       }; // KEY_QUESTION
    key <I223>   {      [ XF86Mail              ]       };
    key <I224>   {      [ XF86Messenger         ]       }; // KEY_CHAT
    key <I225>   {      [ XF86Search            ]       };
    key <I226>   {      [ XF86Go                ]       }; // KEY_CONNECT
    key <I227>   {      [ XF86Finance           ]       };
    key <I228>   {      [ XF86Game              ]       }; // KEY_SPORT
    key <I229>   {      [ XF86Shop              ]       };
//  key <I230>   {      [ ]       }; // KEY_ALTERASE
    key <I231>   {      [ Cancel                ]       };
    key <I232>   {      [ XF86MonBrightnessDown ]       };
    key <I233>   {      [ XF86MonBrightnessUp   ]       };
    key <I234>   {      [ XF86AudioMedia        ]       };
    key <I235>   {      [ XF86Display           ]       };
    key <I236>   {      [ XF86KbdLightOnOff     ]       }; // KEY_KBDILLUMTOGGLE
    key <I237>   {      [ XF86KbdBrightnessDown ]       }; // KEY_KBDILLUMDOWN
    key <I238>   {      [ XF86KbdBrightnessUp   ]       }; // KEY_KBDILLUMUP
    key <I239>   {      [ XF86Send              ]       };
    key <I240>   {      [ XF86Reply             ]       };
    key <I241>   {      [ XF86MailForward       ]       };
    key <I242>   {      [ XF86Save              ]       };
    key <I243>   {      [ XF86Documents         ]       };
    key <I244>   {      [ XF86Battery           ]       };
    key <I245>   {      [ XF86Bluetooth         ]       };
    key <I246>   {      [ XF86WLAN              ]       };
//  key <I249>   {      [ ]       }; // KEY_VIDEO_NEXT  --  drive next video source
//  key <I250>   {      [ ]       }; // KEY_VIDEO_PREV  --  drive previous video source
//  key <I251>   {      [ ]       }; // KEY_BRIGHTNESS_CYCLE  --  bright up, max++ == min
//  key <I252>   {      [ ]       }; // KEY_BRIGHTNESS_ZERO  --  brightness off
//  key <I253>   {      [ ]       }; // KEY_DISPLAY_OFF  --  turn off display
//  key <I254>   {      [ ]       }; // KEY_WIMAX
    key <I255>   {      [ XF86Hibernate         ]       }; // KEY_HIBERNATE

    key <FK13>   {      [ XF86Tools         ]       };
    key <FK14>   {      [ XF86Launch5       ]       };
    key <FK15>   {      [ XF86Launch6       ]       };
    key <FK16>   {      [ XF86Launch7       ]       };
    key <FK17>   {      [ XF86Launch8       ]       };
    key <FK18>   {      [ XF86Launch9       ]       };
};


// Acer

// Acer AirKey V
partial alphanumeric_keys
xkb_symbols "airkey" {
    include "inet(acpi_common)"
    key <I13>	{	[ XF86AudioNext		]	};
    key <I15>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I16>	{	[ XF86Mail		]	};
    key <I18>	{	[ XF86AudioPrev		]	};
    key <I19>	{	[ XF86AudioMute		]	};
    key <I24>	{	[ XF86WWW		]	};
    key <I26>	{	[ XF86AudioLowerVolume	]	};
    key <I2D>	{	[ XF86AudioRaiseVolume	]	};
    key <I2F>	{	[ XF86Terminal		]	};
    key <I31>	{	[ XF86AudioStop, XF86Eject ]	};
};

// Acer C300 Laptop
partial alphanumeric_keys
xkb_symbols "acer_c300" {
    include "inet(nav_common)"
    key <I17>   {       [ F14                   ]       };
    key <I1F>   {       [ F13                   ]       };
    key <I20>   {       [ XF86AudioMute         ]       };
    key <I2E>   {       [ XF86AudioLowerVolume  ]       };
    key <I30>   {       [ XF86AudioRaiseVolume  ]       };
    key <I5E>   {       [ XF86Launch2           ]       };
    key <I75>   {       [ Help                  ]       };
    key <IR7C>  {       [ XF86Launch1           ]       };
};

// Acer Ferrari 4000 Keyboard
// From Alex Dubov <oakad@yahoo.com>
partial alphanumeric_keys
xkb_symbols "acer_ferrari4k" {
    include "inet(media_nav_common)"
    key <I24>   {       [ dollar                ]       };
    key <I25>   {       [ EuroSign              ]       };
    key <I26>   {       [ XF86Display           ]       };
    // Missing keycodes - set-up with setkeycodes
    key <I70>   {       [ Help                  ]       };
    key <I71>   {       [ XF86Launch1           ]       };
    key <I72>   {       [ XF86Launch2           ]       };
    key <I73>   {       [ XF86Launch3           ]       };
    key <I74>   {       [ XF86Launch4           ]       };
};

// Acer Laptop (Generic layout for Acer laptops from 2004 onwards)
// From Carlos Corbacho <cathectic@gmail.com>
// Keys marked (HAL) require HAL 0.5.10 (or newer) to be set up correctly
// (Your laptop must also be added to hal-info)
// (Not all these keys will be available on every Acer laptop)
partial alphanumeric_keys
xkb_symbols "acer_laptop" {
    include "inet(media_nav_acpi_common)"
    key <I17>   {       [ XF86Launch2           ]        }; // "P" or "P2" (HAL)
    key <I1F>   {       [ XF86Launch1           ]        }; // "e" or "P1" (HAL)

    // Hotkeys (Function)
    // Launch Keys
    // Device keys
    key <I56>   {       [ XF86Display           ]        }; // Fn+F5 (HAL)
    key <I71>   {       [ XF86Launch4           ]        }; // Fn+F3 (HAL)
    key <I72>   {       [ XF86LaunchB           ]        }; // Bluetooth (HAL)
    key <I73>   {       [ XF86LaunchA           ]        }; // Wireless (HAL)
    key <I75>   {       [ Help                  ]        }; // Fn+F1 (HAL)
    key <I79>   {       [ XF86Launch5           ]        }; // Fn+F7 (HAL)
    key <K66>   {       [ XF86Launch3           ]        }; // Fn+F2 (HAL)

    // Special Characters
    // To avoid setting a precedent/standard that will be broken in later
    // versions of HAL, these keys are commented out for now. When they are no
    // longer marked 'FIXME' and have saner keycodes, these two entries can be
    // fixed and permanently uncommented. In the meantime, just uncomment these
    // to make the keys work.
//  key <K5D>   {       [ EuroSign              ]        }; // Euro (HAL)
//  key <K5E>   {       [ dollar                ]        }; // Dollar (HAL)
};


// Azona

// Azona RF2300 wireless Internet Keyboard
partial alphanumeric_keys
xkb_symbols "azonaRF2300" {
    // From Radics Laszlo <garaboncias@mailbox.hu>
    include "inet(nav_acpi_common)"
    key <I02>   {       [ XF86HomePage          ]       };
    key <I17>   {       [ XF86AudioStop         ]       };
    key <I1E>   {       [ XF86AudioRaiseVolume  ]       };
    key <I1F>   {       [ XF86AudioPlay, XF86AudioPause ] };
    key <I22>   {       [ XF86AudioNext         ]       };
    key <I24>   {       [ XF86AudioPrev         ]       };
    key <I25>   {       [ XF86AudioLowerVolume  ]       };
    key <I26>   {       [ XF86AudioMute         ]       };
    key <I3C>   {       [ XF86Copy              ]       };
    key <I78>   {       [ XF86Cut               ]       };
//  key <RCTL>  {       [ XF86Paste             ]       };
};


// Brother

// Brother Internet Keyboard
partial alphanumeric_keys
xkb_symbols "brother" {
    include "inet(acpi_common)"
    key <I10>	{	[ XF86ScrollUp		]	};
    key <I12>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I17>	{	[ XF86AudioPrev		]	};
    key <I18>	{	[ XF86ScrollDown	]	};
    key <I19>	{	[ XF86ZoomOut		]	};
    key <I1E>	{	[ XF86AudioMute		]	};
    key <I21>	{	[ XF86WWW		]	};
    key <I22>	{	[ Menu			]	};
    key <I23>	{	[ XF86AudioStop		]	};
    key <I24>	{	[ XF86Calculator	]	};
    key <I25>	{	[ XF86Xfer		]	};
    key <I26>	{	[ XF86Mail		]	};
    key <I2E>	{	[ XF86AudioNext		]	};
    key <I30>	{	[ XF86AudioRaiseVolume	]	};
    key <I32>	{	[ XF86ZoomIn		]	};
    key <I68>	{	[ XF86AudioLowerVolume	]	};
};


// BTC

// BTC 5113RF Multimedia
partial alphanumeric_keys
xkb_symbols "btc5113rf" {
    include "inet(acpi_common)"
    key <I10>	{	[ XF86AudioStop		]	};
    key <I12>	{	[ XF86AudioMute		]	};
    key <I19>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I20>	{	[ XF86Favorites		]	};
    key <I21>	{	[ XF86Eject		]	};
    key <I22>	{	[ XF86AudioPrev		]	};
    key <I24>	{	[ XF86AudioNext		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86Back		]	};
    key <I30>	{	[ XF86WWW		]	};
    key <I32>	{	[ XF86Search		]	};
};

// BTC 9000
partial alphanumeric_keys
xkb_symbols "btc9000" {
    include "inet(acpi_common)"
    key <I10>	{	[ XF86AudioStop		]	};
    key <I12>	{	[ XF86AudioMute		]	};
    key <I19>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I20>	{	[ XF86Favorites		]	};
    key <I21>	{	[ XF86AudioMedia	]	};
    key <I22>	{	[ XF86AudioPrev		]	};
    key <I24>	{	[ XF86AudioNext		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86Reload		]	};
    key <I2E>	{	[ XF86Mail		]	};
    key <I30>	{	[ XF86HomePage		]	};
    key <I32>	{	[ XF86Search		]	};
};

// BTC 9000A
partial alphanumeric_keys
xkb_symbols "btc9000a" {
    include "inet(acpi_common)"
    key <I10>	{	[ XF86AudioStop		]	};
    key <I12>	{	[ XF86AudioMute		]	};
    key <I19>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I20>	{	[ XF86Favorites		]	};
    key <I21>	{	[ XF86Eject		]	};
    key <I22>	{	[ XF86AudioPrev		]	};
    key <I24>	{	[ XF86AudioNext		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86HomePage		]	};
    key <I2E>	{	[ Help			]	};
    key <I30>	{	[ XF86WWW		]	};
    key <I32>	{	[ XF86Search		]	};
};

// BTC 9001AH
xkb_symbols "btc9001ah" {
    include "inet(acpi_common)"
    key <I02>   {       [ XF86HomePage          ]       };
    key <I17>   {       [ XF86AudioStop         ]       };
    key <I1E>   {       [ XF86AudioRaiseVolume  ]       };
    key <I1F>   {       [ XF86AudioPlay, XF86AudioPause ] };
    key <I22>   {       [ XF86AudioNext         ]       };
    key <I24>   {       [ XF86AudioPrev         ]       };
    key <I25>   {       [ XF86AudioLowerVolume  ]       };
    key <I26>   {       [ XF86AudioMute         ]       };
    key <I6C>   {       [ XF86Mail              ]       };
    key <RWIN>  {       [ XF86Eject             ]       };
};

// BTC 5090
partial alphanumeric_keys
xkb_symbols "btc5090" {
    include "inet(media_nav_acpi_common)"
    key <I26>   {       [ XF86Start             ]       };
    key <I33>   {       [ XF86Eject             ]       };
};

// BTC 9019U
partial alphanumeric_keys
xkb_symbols "btc9019u" {
    include "inet(media_nav_acpi_common)"
    key <FK17> {	[ XF86Search		]	};
    key <I02>  {	[ XF86HomePage		]	};
};


// Cherry

// Cherry Blue Line CyBo@rd
partial alphanumeric_keys
xkb_symbols "cherryblue" {
    include "inet(nav_common)"
    key <FK16>	{	[ XF86Reload		]	};
    key <I02>	{	[ XF86HomePage		]	};
    key <I17>	{	[ XF86AudioStop		]	};
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I1F>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I22>	{	[ XF86AudioNext		]	};
    key <I24>	{	[ XF86AudioPrev		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86AudioMute		]	};
    key <I63>	{	[ XF86Standby		]	};
    key <PRSC>	{	[ XF86Terminal		]	};
    key <IR7C>	{	[ XF86Go		]	};
};

// Cherry CyMotion Master XPress
partial alphanumeric_keys
xkb_symbols "cherryblueb" {
    include "inet(media_nav_common)"
    key <FK16>  {       [ XF86Reload            ]       };
    key <I02>   {       [ XF86HomePage          ]       };
    key <I07>   {       [ XF86Forward           ]       };
    key <I08>   {       [ XF86Back              ]       };
    key <I0A>   {       [ XF86Copy              ]       };
    key <I0B>	{	[ XF86ScrollUp		]	};
    key <I12>   {       [ XF86ScrollDown        ]       };
    key <I17>   {       [ XF86Cut               ]       };
    key <I18>   {       [ XF86Paste             ]       };
    key <I1E>   {       [ XF86AudioRaiseVolume  ]       };
    key <I25>   {       [ XF86AudioLowerVolume  ]       };
    key <I26>   {       [ XF86AudioMute         ]       };
    key <I2C>   {       [ XF86Book              ]       };
    key <I32>   {       [ XF86Finance           ]       };
    key <I63>   {       [ XF86Standby                   ] };
    key <I67>   {       [ XF86AudioRewind       ]       };
    key <I70>   {       [ XF86Eject             ]       };
    key <I71>   {       [ XF86Book              ]       };
    key <I72>   {       [ XF86Book              ]       };
    key <PRSC>  {       [ XF86Terminal          ]       };
    key <IR7C>  {       [ XF86Go                ]       };
};

// Cherry Blue Line CyBo@rd (alternate option)
partial alphanumeric_keys
xkb_symbols "cherrybluea" {
    include "inet(media_nav_acpi_common)"
    key <I6D>	{	[ XF86Go		]	};
};

// Cherry CyBo@rd USB-Hub
partial alphanumeric_keys
xkb_symbols "cherrycyboard" {
    include "inet(media_nav_acpi_common)"
    key <FK17>    {   [ XF86Search        ]   };
    key <I02> {   [ XF86HomePage      ]   };
    key <K67> {   [ XF86Terminal      ]   };
    key <IR7C>    {   [ XF86AudioMedia    ]   };
};

// Cherry CyMotion Expert
partial alphanumeric_keys
xkb_symbols "cherrycmexpert" {
    include "inet(cherryblueb)"
    include "inet(acpi_common)"
    key <FK15>	{	[ XF86Mail		]	};
};


// Chicony

// Chicony Internet Keyboard
partial alphanumeric_keys
xkb_symbols "chicony" {
    include "inet(acpi_common)"
    key <I12>	{	[ XF86AudioMute		]	};
    key <I17>	{	[ XF86Mail		]	};
    key <I19>	{	[ XF86AudioLowerVolume	]	};
    key <I1E>	{	[ XF86Forward		]	};
    key <I20>	{	[ XF86AudioNext		]	};
    key <I21>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I22>	{	[ XF86AudioPrev		]	};
    key <I23>	{	[ XF86AudioRaiseVolume	]	};
    key <I24>	{	[ XF86AudioStop		]	};
    key <I25>	{	[ XF86Back		]	};
    key <I26>	{	[ XF86LaunchB		]	};
    key <I2E>	{	[ XF86LaunchC		]	};
    key <I30>	{	[ XF86LaunchA		]	};
    key <I32>	{	[ XF86WWW		]	};
    key <I5F>	{	[ XF86ContrastAdjust	]	};
    key <I63>	{	[ XF86BrightnessAdjust	]	};
};

// Chicony KU-0108
partial alphanumeric_keys
xkb_symbols "chicony0108" {
    include "inet(cherrycyboard)"
};

// Chicony KU-0420 AKA Targus Slim Internet Media USB Keyboard
partial alphanumeric_keys
xkb_symbols "chicony0420" {
    include "inet(media_nav_acpi_common)"
    key <I01>   {       [ XF86AudioMedia        ]       };
    key <K67>   {       [ XF86MyComputer        ]       };
};

// Chicony KB-9885
partial alphanumeric_keys
xkb_symbols "chicony9885" {
    include "inet(acpi_common)"
    key <I12>	{	[ XF86AudioMute		]	};
    key <I17>	{	[ XF86Mail		]	};
    key <I19>	{	[ XF86AudioLowerVolume	]	};
    key <I1E>	{	[ XF86Forward		]	};
    key <I20>	{	[ XF86AudioNext		]	};
    key <I21>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I22>	{	[ XF86AudioPrev		]	};
    key <I23>	{	[ XF86AudioRaiseVolume	]	};
    key <I24>	{	[ XF86AudioStop		]	};
    key <I25>	{	[ XF86Back		]	};
    key <I26>	{	[ XF86LaunchB		]	};
    key <I2E>	{	[ XF86LaunchC		]	};
    key <I30>	{	[ XF86LaunchA		]	};
    key <I32>	{	[ XF86WWW		]	};
};


// Compaq

// Compaq Easy Access Keyboard
partial alphanumeric_keys
xkb_symbols "compaqeak8" {
    key <I13>	{	[ XF86Community		]	};
    key <I14>	{	[ XF86Market		]	};
    key <I15>	{	[ XF86Meeting		]	};
    key <I1A>	{	[ XF86Search		]	};
    key <I1B>	{	[ XF86News		]	};
    key <I1E>	{	[ XF86Mail		]	};
    key <I1F>	{	[ XF86HomePage		]	};
    key <I23>	{	[ XF86WWW		]	};
};

// Compaq Internet Keyboard (7 keys)
partial alphanumeric_keys
xkb_symbols "compaqik7" {
    key <I12>	{	[ XF86LightBulb		]	};
    key <I1E>	{	[ XF86Mail		]	};
    key <I21>	{	[ XF86Search		]	};
    key <I23>	{	[ Help			]	};
    key <I25>	{	[ XF86VendorHome	]	};
    key <I26>	{	[ XF86HomePage		]	};
    key <I32>	{	[ XF86Shop		]	};
};

// Compaq Internet Keyboard (13 keys)
partial alphanumeric_keys
xkb_symbols "compaqik13" {
    include "inet(media_acpi_common)"
    key <I1E>	{	[ XF86Mail		]	};
    key <I1F>	{	[ XF86Go		]	};
    key <I21>	{	[ XF86Search		]	};
    key <I23>	{	[ XF86WWW		]	};
    key <I32>	{	[ XF86Shop		]	};
};

// Compaq Internet Keyboard (18 keys)
partial alphanumeric_keys
xkb_symbols "compaqik18" {
    include "inet(media_acpi_common)"
    key <I12>	{	[ XF86LightBulb		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I1E>	{	[ XF86Mail		]	};
    key <I1F>	{	[ XF86Go		]	};
    key <I21>	{	[ XF86Search		]	};
    key <I23>	{	[ XF86WWW		]	};
    key <I25>	{	[ XF86VendorHome	]	};
    key <I26>	{	[ XF86Community		]	};
    key <I32>	{	[ XF86Shop		]	};
    key <I68>	{	[ Print			]	};
};

// Laptop/notebook Compaq (eg. Armada, Evo) Laptop Keyboard
partial alphanumeric_keys
xkb_symbols "armada" {
    include "inet(media_acpi_common)"
    key <I1A>	{	[ XF86Search		]	};
    key <I1E>	{	[ XF86Mail		]	};
    key <I1F>	{	[ XF86HomePage		]	};
    key <I23>	{	[ XF86WWW		]	};
    key <I59>   {       [ XF86Launch2           ]       }; // Battery Monitor
    key <I6F>	{	[ XF86AudioMedia	]	};
    key <I75>   {       [ XF86Launch0           ]       }; // Info Center
};

// Laptop/notebook Compaq (eg. Presario) Internet Keyboard
partial alphanumeric_keys
xkb_symbols "presario" {
    include "inet(media_acpi_common)"
    key <I14>	{	[ XF86Q			]	};
    key <I18>	{	[ XF86Launch2		]	};
    key <I1E>	{	[ XF86Mail		]	};
    key <I1F>	{	[ XF86Launch1		]	};
    key <I23>	{	[ XF86WWW		]	};
    key <I32>	{	[ XF86Shop		]	};
    key <I75>	{	[ XF86AudioMedia	]	};
};

// Compaq iPaq Keyboard
partial alphanumeric_keys
xkb_symbols "ipaq" {
    key <FK16>	{	[ XF86Shop		]	};
    key <I02>	{	[ XF86Standby		]	};
    key <I65>	{	[ XF86Search		]	};
    key <I66>	{	[ XF86Travel		]	};
    key <I69>	{	[ XF86BackForward	]	};
    key <I6A>	{	[ XF86Q			]	};
    key <I6C>	{	[ XF86Mail		]	};
};


// Dell

partial alphanumeric_keys
xkb_symbols "dell" {
    include "inet(acpi_common)"
    key <I12>	{	[ XF86Mail		]	};
    key <I1E>	{	[ XF86Search		]	};
    key <I26>	{	[ XF86HomePage		]	};
};

// Dell Precision M65
partial alphanumeric_keys
xkb_symbols "dellm65" {
    include "inet(media_common)"
    key <I04>   {       [ XF86PowerOff          ]       };
    key <LWIN>  {       [ Super_L               ]       };
};

// Laptop/notebook Dell Inspiron 8xxx
partial alphanumeric_keys
xkb_symbols "inspiron" {
    include "inet(media_common)"
    key <I02>   {       [ XF86AudioStop         ]       };
    key <I04>   {       [ XF86AudioNext         ]       };
    key <I21>   {       [ XF86Eject             ]       };
    key <I56>   {       [ XF86Display           ]       };
    key <IR7D>  {       [ XF86AudioPrev         ]       };
    key <IR7C>  {       [ XF86AudioPlay, XF86AudioPause ] };
};

// DELL USB Multimedia Keyboard (former 8135, generalized, superset of 8125)
partial alphanumeric_keys
xkb_symbols "dellusbmm" {
    // Describes the extra keys on a SK-8135 Multimedia keyboard
    // From Olivier Lahaye <olivier dot lahaye at motorola dot com>
    include "inet(media_nav_acpi_common)"
    key <I02>	{	[ XF86HomePage		]	};
    key <K67>	{	[ XF86MyComputer	]	};
    key <IR7C>	{	[ XF86AudioMedia	]	};
};


// Diamond

// Diamond 9801 / 9802 series
partial alphanumeric_keys
xkb_symbols "diamond" {
    include "inet(media_nav_acpi_common)"
    key <I6D>	{	[ XF86Go		]	};
};


// Ennyah

// Ennyah DKB-1008
partial alphanumeric_keys
xkb_symbols "ennyah_dkb1008" {
    include "inet(media_nav_acpi_common)"
    key <IR7C>  {	[ XF86AudioMedia	]	};
};


// Genius

// Genius Comfy KB-16M / Genius MM Keyboard KWD-910
partial alphanumeric_keys
xkb_symbols "genius" {
    include "inet(media_acpi_common)"
    key <I12>   {	[ XF86AudioRaiseVolume	]	};
    key <I17>   {	[ XF86Calculator	]	};
    key <I19>   {	[ XF86AudioLowerVolume	]	};
    key <I1E>   {	[ XF86Forward		]	};
    key <I21>   {	[ XF86AudioNext		]	};
    key <I23>	{	[ XF86AudioPrev		]	};
    key <I25>   {	[ XF86Back		]	};
    key <I26>   {	[ XF86ScreenSaver	]	};
    key <I2E>   {	[ XF86Mail		]	};
    key <I30>   {	[ XF86Eject		]	};
    key <I32>   {	[ XF86WWW		]	};
};

// Genius Comfy 21e
partial alphanumeric_keys
xkb_symbols "geniuscomfy2" {
    // Describes the extra keys on a Genius Comfy KB-21e-Scroll
    // From Radics Laszlo <garaboncias@mailbox.hu>
    include "inet(media_nav_acpi_common)"
    key <I23>   {       [ Return                ]       };
};


// Gyration

partial alphanumeric_keys
xkb_symbols "gyration" {
    include "inet(nav_common)"
    key <FK16>	{	[ XF86Reload		]	};
    key <I02>	{	[ XF86HomePage		]	};
    key <I17>	{	[ XF86AudioStop		]	};
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I1F>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I22>	{	[ XF86AudioNext		]	};
    key <I24>	{	[ XF86AudioPrev		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86AudioMute		]	};
};


// Hewlett-Packard

// Hewlett-Packard Internet Keyboard
partial alphanumeric_keys
xkb_symbols "hpi6" {
    include "inet(media_nav_acpi_common)"
    key <I02>   {       [ XF86HomePage          ]       };
    key <I12>	{	[ XF86Search		]	};
    key <I14>	{	[ XF86VendorHome	]	};
    key <I15>	{	[ XF86Community		]	};
    key <I16>	{	[ XF86AudioMedia	]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I1E>	{	[ XF86Shop		]	};
    key <I1F>	{	[ XF86Launch1		]	};
    key <I26>	{	[ Help			]	};
    key <I27>	{	[ XF86Finance		]	};
    key <I39>	{	[ Print			]	};
    key <I75>   {       [ Help                  ]       };
};

// Hewlett-Packard SK-2501, SK-2505 Multimedia Keyboard
partial alphanumeric_keys
xkb_symbols "hp250x" {
    key <I12>	{	[ XF86Tools		]	};
    key <I17>	{	[ XF86Search		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I1E>	{	[ XF86Mail		]	};
    key <I20>	{	[ XF86AudioMute		]	};
    key <I21>	{	[ XF86Launch5		]	};
    key <I22>	{	[ XF86Launch3		]	};
    key <I23>	{	[ XF86Launch2		]	};
    key <I24>	{	[ XF86Launch4		]	};
    key <I25>	{	[ XF86Standby		]	};
    key <I26>	{	[ Help			]	};
    key <I2E>	{	[ XF86AudioLowerVolume	]	};
    key <I30>	{	[ XF86AudioRaiseVolume	]	};
    key <I32>	{	[ XF86WWW		]	};
};

// Hewlett-Packard Omnibook XE3 GC, GD, GE and Pavilion N5xxx
partial alphanumeric_keys
xkb_symbols "hpxe3gc" {
    // Describes the OneTouch buttons on HP Omnibook XE3 GC and
    // HP Pavilion N52XX models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_common)"
    key <I71>	{	[ Help			]	};
    key <I72>	{	[ XF86Launch1		]	};
    key <I73>	{	[ XF86WWW		]	};
    key <I74>	{	[ XF86Mail		]	};
};

// Hewlett-Packard Omnibook XE3 GF
partial alphanumeric_keys
xkb_symbols "hpxe3gf" {
    // Describes the OneTouch buttons on HP Omnibook XE3 GF models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_nav_common)"
    key <I73>	{	[ Help			]	};
    key <I74>	{	[ XF86Launch1		]	};
};

// Hewlett-Packard Omnibook XT1000
partial alphanumeric_keys
xkb_symbols "hpxt1000" {
    // Describes the OneTouch buttons on HP Omnibook XT1000 models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_nav_common)"
    key <I71>	{	[ XF86Launch3		]	};
    key <I72>	{	[ Help			]	};
    key <I73>	{	[ XF86Launch2		]	};
    key <I74>	{	[ XF86Launch1		]	};
};

// Hewlett-Packard Pavilion ZT11xx
partial alphanumeric_keys
xkb_symbols "hpzt11xx" {
    // Describes the OneTouch buttons on HP Pavilion ZT11xx models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_nav_common)"
    key <I71>	{	[ XF86Launch3		]	};
    key <I72>	{	[ Help			]	};
    key <I73>	{	[ XF86Launch2		]	};
    key <I74>	{	[ XF86Launch1		]	};
};

// Hewlett-Packard Pavilion dv5
partial alphanumeric_keys
xkb_symbols "hpdv5" {
    // Describes the OneTouch buttons on HP Pavilion dv5 models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_common)"
    key <I12>  {       [ XF86ScreenSaver       ]       };
    key <I32>  {       [ XF86WWW               ]       };
    key <I75>  {       [ Help                  ]       };
    key <K6D>  {       [ XF86Launch1           ]       };
};

// Hewlett-Packard Omnibook XE4xxx and ZE4xxx
partial alphanumeric_keys
xkb_symbols "hpxe4xxx" {
    // Describes the OneTouch buttons on HP Omnibook XE4xxx and ZE4xxx
    // models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_nav_common)"
    key <I70>	{	[ Help			]	};
    key <I71>	{	[ XF86Launch2		]	};
    key <I73>	{	[ XF86Launch1		]	};
};

// Hewlett-Packard Omnibook 500 FA
partial alphanumeric_keys
xkb_symbols "hp500fa" {
    // Describes the OneTouch buttons on HP Omnibook 500 FA models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    key <I73>	{	[ Help			]	};
    key <I74>	{	[ XF86Launch1		]	};
};

// Hewlett-Packard Omnibook 5xx
partial alphanumeric_keys
xkb_symbols "hp5xx" {
    // Describes the OneTouch buttons on HP Omnibook 5xx models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    include "inet(media_common)"
    key <I73>	{	[ Help			]	};
    key <I74>	{	[ XF86Launch1		]	};
};


// Honeywell

// Honeywell Euroboard
partial alphanumeric_keys
xkb_symbols "honeywell_euroboard" {
    // January 2002
    // Scott Penrose <scottp@dd.com.au>
    // http://linux.dd.com.au/quest/linux/keyboard/honeywell/
    key <I10>	{	[ XF86Game		]	};
    key <I12>	{	[ XF86AudioPrev		]	};
    key <I17>	{	[ XF86Eject		]	};
    key <I18>	{	[ XF86Launch2		]	};
    key <I19>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I1E>	{	[ XF86Launch1		]	};
    key <I20>	{	[ XF86AudioMute		]	};
    key <I22>	{	[ XF86AudioNext		]	};
    key <I23>	{	[ XF86AudioStop		]	};
    key <I24>	{	[ XF86Mail		]	};
    key <I25>	{	[ XF86ScreenSaver	]	};
    key <I26>	{	[ XF86Calculator	]	};
    key <I2E>	{	[ XF86AudioLowerVolume	]	};
    key <I30>	{	[ XF86AudioRaiseVolume	]	};
    key <I32>	{	[ XF86WWW		]	};
};


// IBM

// IBM Rapid Access
partial alphanumeric_keys
xkb_symbols "rapidaccess" {
    key <I12>	{	[ XF86AudioMute		]	};
    key <I17>	{	[ XF86Launch2		]	};
    key <I1E>	{	[ XF86AudioLowerVolume	]	};
    key <I20>	{	[ XF86AudioRaiseVolume	]	};
    key <I21>	{	[ XF86AudioNext		]	};
    key <I22>	{	[ XF86AudioPause	]	};
    key <I22>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I23>	{	[ XF86AudioPrev		]	};
    key <I24>	{	[ XF86AudioStop		]	};
    key <I25>	{	[ XF86Standby		]	};
    key <I26>	{	[ Help			]	};
    key <I2E>	{	[ XF86Launch4		]	};
    key <I30>	{	[ XF86Launch3		]	};
    key <I32>	{	[ XF86Launch1		]	};
};

// IBM Rapid Access II
partial alphanumeric_keys
xkb_symbols "rapidaccess2" {
    include "inet(acpi_common)"
    key <I12>	{	[ XF86AudioNext		]	};
    key <I17>	{	[ XF86Favorites		]	};
    key <I1E>	{	[ XF86AudioMute		]	};
    key <I20>	{	[ XF86AudioStop		]	};
    key <I21>	{	[ XF86AudioLowerVolume	]	};
    key <I22>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I23>	{	[ XF86AudioRaiseVolume	]	};
    key <I24>	{	[ XF86AudioPrev		]	};
    key <I25>	{	[ XF86HomePage		]	};
    key <I26>	{	[ XF86Shop		]	};
    key <I2E>	{	[ XF86Search		]	};
    key <I30>	{	[ XF86MyComputer	]	};
    key <I32>	{	[ XF86VendorHome	]	};
};

// IBM ThinkPad 60 series
partial alphanumeric_keys
xkb_symbols "thinkpad60" {
    include "inet(media_nav_common)"
    key <I1F> { [ XF86VendorHome ] };
};

// IBM Space Saver
partial alphanumeric_keys
xkb_symbols "ibm_spacesaver" {
    key <NMLK>  {
        type="ONE_LEVEL",
        symbols[Group1]= [ Num_Lock ]
    };
};


// Logitech

// Logitech common definitions
hidden partial alphanumeric_keys
xkb_symbols "logitech_base" {
    include "inet(media_nav_acpi_common)"
    key <I02> { [ XF86HomePage ] };
    key <I15> { [ XF86Community ] };
    key <I16> { [ XF86ScrollClick ] };
    key <I21> {	[ XF86VendorHome ] };
    key <I3B> { [ XF86New ] };
    key <I3C> { [ XF86Reply ] };
    key <I43> { [ XF86MyComputer ] };
    key <I44> { [ XF86Documents ] };
    key <I57> { [ XF86Pictures ] };
    key <I58> { [ XF86Music ] };
};

// Logitech second set of common keys
hidden partial alphanumeric_keys
xkb_symbols "logitech_set3" {
    key <I17>	{	[ XF86AudioStop		]	};
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I1F>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I22>	{	[ XF86AudioNext		]	};
    key <I24>	{	[ XF86AudioPrev		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86AudioMute		]	};
    key <I44>   {       [ XF86New               ]       };      // F1
    key <I45>   {       [ XF86Reply             ]       };      // F2
    key <I4A>   {       [ XF86Send              ]       };      // F4
    key <I54>   {       [ Print                 ]       };      // F7
    key <I55>   {       [ XF86Save              ]       };      // F8
    key <I56>   {       [ XF86Documents         ]       };      // F10
    key <I69>   {       [ XF86Go                ]       };
    key <IR7C>  {       [ XF86AudioMedia        ]       };
};

// Logitech Access Keyboard
partial alphanumeric_keys
xkb_symbols "logiaccess" {
    include "inet(logitech_base)"
    key <FK13>	{	[ XF86MailForward	]	};
    key <FK14>	{	[ XF86Send		]	};
    key <I11>	{	[ XF86Messenger		]	};
    key <I12>	{	[ XF86WebCam		]	};
};

// Logitech Cordless Desktop (alternate option)
partial alphanumeric_keys
xkb_symbols "logicda" {
    include "inet(logitech_base)"
    include "inet(logitech_set3)"
};

// Logitech Internet Navigator Keyboard
partial alphanumeric_keys
xkb_symbols "logicink" {
    include "inet(logitech_base)"
    key <I11>	{	[ XF86Shop		]	};
    key <I12>	{	[ XF86VendorHome	]	};
    key <I13>	{	[ XF86Finance		]	};
    key <I14>	{	[ XF86Start		]	};
};

// Logitech Cordless Desktop EX110
partial alphanumeric_keys
xkb_symbols "logiex110" {
    include "inet(logitech_base)"
    key <I2F>   {       [ XF86Close             ]       };      // Close
// Extended function keys
// In the Console before starting X
// Using setkeycodes e03b 212 e03c 213 e03d 214 e03e 215 e03f 216 e040 217
//       setkeycodes e041 218 e042 219 e043 220 e044 221 e057 222 e058 223 6d 206
// *=keys that are there but need different symbol names.
    key <I3B>   {       [ Help                  ]       };      // F1
    key <FK13>  {       [ XF86Word              ]       };      // F2
    key <FK14>  {       [ XF86Excel             ]       };      // F3
    key <FK15>  {       [ XF86Pictures          ]       };      // F4
    key <FK16>  {       [ Undo                  ]       };      // F5
    key <I65>   {       [ Redo                  ]       };      // F6 *
    key <I42>   {       [ Print                 ]       };      // F7
    key <I43>   {       [ XF86Save              ]       };      // F8
    key <I44>   {       [ XF86Launch1           ]       };      // F9 *
    key <I45>   {       [ XF86Launch2           ]       };      // F10
    key <I14>   {       [ XF86Launch3           ]       };      // F11
    key <I4A>   {       [ XF86Launch4           ]       };      // F12
};

// Logitech iTouch Internet Navigator Keyboard SE
partial alphanumeric_keys
xkb_symbols "logiinkse" {
    include "inet(logitech_base)"
    key <FK13>	{	[ XF86MailForward	]	};	// F3
    key <FK14>	{	[ XF86Send		]	};	// F4
    key <FK15>	{	[ Undo			]	};	// F5
    key <FK16>	{	[ Redo			]	};	// F6
    key <FK17>	{	[ Print			]	};	// F7
    key <I11>	{	[ XF86Messenger		]	};
    key <I12>	{	[ XF86WebCam		]	};
    key <I13>	{	[ XF86VendorHome	]	};
    key <I14>	{	[ XF86Shop		]	};
    key <I42>	{	[ XF86Save		]	};	// F8
};

// Logitech iTouch Internet Navigator Keyboard SE (USB)
partial alphanumeric_keys
xkb_symbols "logiinkseusb" {
    include "inet(logitech_base)"
    include "inet(logitech_set3)"
};

// Logitech iTouch Cordless Keyboard (model Y-RB6)
partial alphanumeric_keys
xkb_symbols "logiitc" {
    include "inet(logitech_base)"
    key <I2F> {	[ XF86AudioRaiseVolume ] };

    // Just to override RaiseVolume from logitech_base,
    // since no keysym can have two keycodes, see
    // https://bugs.freedesktop.org/show_bug.cgi?id=7095
    key <I30> {	[ XF86Launch1 ] };
};

// Logitech Internet Keyboard
partial alphanumeric_keys
xkb_symbols "logiik" {
    include "inet(logitech_base)"
    key <I12>	{	[ Find			]	};
    key <I17>	{	[ Print			]	};
    key <I18>	{	[ XF86Favorites		]	};
    key <I19>	{	[ XF86Reload		]	};
    key <I1E>	{	[ XF86Search		]	};
    key <I20>	{	[ XF86HotLinks		]	};
    key <I22>	{	[ XF86Forward		]	};
    key <I23>	{	[ XF86HomePage		]	};
    key <I24>	{	[ XF86Stop		]	};
    key <I25>	{	[ XF86OpenURL		]	};
    key <I26>	{	[ XF86AddFavorite	]	};
    key <I32>	{	[ XF86History		]	};
    key <I7A>	{	[ XF86WWW		]	};
};

// Logitech iTouch
partial alphanumeric_keys
xkb_symbols "itouch" {
    include "inet(logitech_base)"
    key <I1F>	{	[ XF86AudioMute		]	};
    key <I2B>	{	[ XF86AudioLowerVolume	]	};
    key <I2D>	{	[ XF86AudioRaiseVolume	]	};
};

// Logitech UltraX Cordless Media Desktop
partial alphanumeric_keys
xkb_symbols "logiultraxc" {
    key <FK16>  {       [ XF86AudioMute ]       };
    key <FK17>  {       [ XF86AudioLowerVolume  ]       };
    key <I2B>   {       [ XF86AudioNext ]       };
    key <I2D>   {       [ XF86AudioPrev ]       };
    key <I2C>   {       [ XF86AudioPlay, XF86AudioPause ]       };
    key <KPDC>  {       [ XF86AudioRaiseVolume  ]       };
};

partial alphanumeric_keys
xkb_symbols "logidinovo" {
    include "inet(media_nav_common)"
    key <I02>	{	[ XF86HomePage		]	};
    key <I12>	{	[ XF86Standby		]	};
    key <I17>	{	[ XF86Search		]	};
    key <I21>	{	[ XF86AudioRaiseVolume	]	};
    key <K66>	{	[ XF86AudioLowerVolume	]	};
    key <KPDC>	{	[ XF86AudioMute		]	};
    key <IR7C>	{	[ XF86AudioMedia	]	};
};

partial alphanumeric_keys
xkb_symbols "logidinovoedge" {
    include "inet(media_acpi_common)"
    key <I02>	{	[ XF86HomePage		]	};
    key <I6C>	{	[ XF86Mail		]	};
    key <FK17>  {       [ XF86Search            ]       };
    key <IR7C>	{	[ XF86AudioMedia	]	};
};

partial alphanumeric_keys
xkb_symbols "logitech_g15" {
    include "inet(media_nav_acpi_common)"
    key <AE13> {         [   XF86Messenger ] };
    key <HKTG> {         [     XF86Launch7 ] };
    key  <I02> {         [     XF86Launch9 ] };
    key  <I04> {         [       XF86Phone ] };
    key  <I08> {         [     XF86LaunchD ] };
    key  <I09> {         [     XF86Support ] };
    key  <I0F> {         [     XF86LaunchF ] };
    key  <I16> {         [      XF86LogOff ] };
    key  <I18> {         [     XF86Launch5 ] };
    key  <I21> {         [      XF86Travel ] };
    key  <I23> {         [       XF86Spell ] };
    key  <I31> {         [     XF86Launch4 ] };
    key  <I3C> {         [       XF86Music ] };
    key  <I42> {         [     XF86Forward ] };
    key  <I43> {         [        XF86Send ] };
    key  <I57> {         [        XF86Save ] };
    key  <I64> {         [    XF86Pictures ] };
    key  <I67> {         [     XF86LaunchA ] };
    key  <I76> {         [      XF86iTouch ] };
    key  <I77> {         [     XF86Launch3 ] };
    key  <I79> {         [    XF86ToDoList ] };
    key  <I7B> {         [  XF86Calculator ] };
    key  <K5A> {         [  XF86VendorHome ] };
    key  <K5D> {         [        XF86Away ] };
    key  <K5E> {         [      XF86WebCam ] };
    key  <K5F> {         [     XF86Launch0 ] };
    key  <K63> {         [     XF86Launch6 ] };
    key  <K6D> {         [    XF86Calendar ] };
    key  <K71> {         [     XF86LaunchB ] };
    key  <K72> {         [     XF86LaunchC ] };
    key  <K74> {         [         XF86WWW ] };
    key  <K75> {         [     XF86LaunchE ] };
    key <II5D> {         [     XF86Launch1 ] };
    key <IR7D> {         [     XF86Launch2 ] };
    key <IR7C> {         [     XF86Launch8 ] };
};


// Memorex

// Memorex MX1998
partial alphanumeric_keys
xkb_symbols "mx1998" {
    include "inet(media_acpi_common)"
    key <DOWN>	{	[ XF86ScrollDown	]	};
    key <I12>	{	[ XF86AudioRewind	]	};
    key <I17>	{	[ XF86Close		]	};
    key <I18>	{	[ XF86Xfer		]	};
    key <I1E>	{	[ XF86AudioRecord	]	};
    key <I21>	{	[ XF86Documents		]	};
    key <I23>	{	[ XF86Game		]	};
    key <I25>	{	[ XF86Calculator	]	};
    key <I26>	{	[ Menu			]	};
    key <I32>	{	[ XF86WWW		]	};
    key <I57>	{	[ XF86WakeUp		]	};
    key <I68>	{	[ XF86DOS		]	};
    key <I7A>	{	[ XF86ScreenSaver	]	};
    key <UP>	{	[ XF86ScrollUp		]	};
};

// Memorex MX2500 EZ-Access Keyboard
partial alphanumeric_keys
xkb_symbols "mx2500" {
    include "inet(media_nav_acpi_common)"
    key <I12>	{	[ XF86Clear		]	};
    key <I13>	{	[ XF86Phone		]	};
    key <I14>	{	[ XF86DOS		]	};
    key <I17>	{	[ XF86Close		]	};
    key <I18>	{	[ XF86Xfer		]	};
    key <I1E>	{	[ XF86Eject		]	};
    key <I1F>	{	[ XF86Documents		]	};
    key <I26>	{	[ XF86News		]	};
    key <I6B>	{	[ XF86WakeUp		]	};
    key <I6D>	{	[ XF86RotateWindows	]	};
};

// Memorex MX2750
partial alphanumeric_keys
xkb_symbols "mx2750" {
    include "inet(media_nav_acpi_common)"
    key <I32>	{	[ XF86Launch0		]	};
};


// Microsoft

// Microsoft Natural Ergonomic Keyboard 4000
partial alphanumeric_keys
xkb_symbols "microsoft4000" {
    include "inet(media_nav_common)"
    key <I192>  {       [ XF86Launch1           ]       };
    key <I193>  {       [ XF86Launch2           ]       };
    key <I194>  {       [ XF86Launch3           ]       };
    key <I195>  {       [ XF86Launch4           ]       };
    key <I196>  {       [ XF86Launch5           ]       };
//  Missing because of lack of support from kbd driver: Zoom in and
//  slider.
};

// Microsoft Natural Wireless Ergonomic Keyboard 7000
partial alphanumeric_keys
xkb_symbols "microsoft7000" {
    include "inet(media_nav_common)"
    key <I07>	{	[ Undo			]	};
    key <I09>	{	[ XF86New		]	};
    key <I0A>	{	[ Redo			]	};
    key <I0E>	{	[ XF86MailForward	]	};
    key <I2F>	{	[ XF86Close		]	};
    key <I39>	{	[ Print			]	};
    key <I55>	{	[ XF86Save		]	};
    key <I5A>	{	[ XF86Send		]	};
    key <I62>	{	[ Help			]	};
    key <I64>	{	[ XF86Reply		]	};
    key <I76>	{	[ parenleft		]	};
    key <I7B>	{	[ parenright		]	};
    key <K59>	{	[ KP_Equal		]	};
    key <K64>	{	[ XF86Open		]	};
//  Missing because of lack of support from kbd driver: Spell, Launch,
//  and Zoom in and out buttons.
};

// Microsoft Internet Keyboard
partial alphanumeric_keys
xkb_symbols "microsoftinet" {
    include "inet(nav_acpi_common)"
    key <I68>	{	[ XF86AudioStop		]	};
};

// Microsoft Natural Keyboard Pro USB
partial alphanumeric_keys
xkb_symbols "microsoftprousb" {
    include "inet(nav_common)"
    key <FK16>   {   [ XF86Reload      ]   };
    key <I01>   {   [ XF86AudioMedia   ]   };
    key <I02>   {   [ XF86HomePage      ]   };
    key <I17>   {   [ XF86AudioStop      ]   };
    key <I1E>   {   [ XF86AudioRaiseVolume   ]   };
    key <I1F>   {   [ XF86AudioPlay, XF86AudioPause ] };
    key <I22>   {   [ XF86AudioNext      ]   };
    key <I24>   {   [ XF86AudioPrev      ]   };
    key <I25>   {   [ XF86AudioLowerVolume   ]   };
    key <I26>   {   [ XF86AudioMute      ]   };
    key <I63>   {   [ XF86Standby      ]   };
//   Internet Section -- Left Side
//   Multimedia Section -- Right Side
//   My Computer Section -- Far Right
//   My computer maps to printscreen, so leaving commented out for now
//   key <PRSC>   {   [ XF86MyComputer   ]   };
};

// Microsoft Natural Keyboard Pro OEM
partial alphanumeric_keys
xkb_symbols "microsoftprooem" {
    include "inet(media_nav_common)"
    key <FK17>	{	[ XF86Search		]	};
    key <I02>	{	[ XF86HomePage		]	};
    key <I63>	{	[ XF86Standby		]	};
    key <K67>	{	[ XF86MyComputer	]	};
//   Internet Section -- Left Side
//   Multimedia Section -- Right Side
//   My Computer Section -- Far Right
};

// Microsoft Internet Keyboard Pro, Swedish
partial alphanumeric_keys
xkb_symbols "microsoftprose" {
    include "inet(nav_common)"
    key <FK16>	{	[ XF86Reload		]	};
    key <I02>	{	[ XF86HomePage		]	};
    key <I17>	{	[ XF86AudioStop		]	};
    key <I1E>	{	[ XF86AudioRaiseVolume	]	};
    key <I1F>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I22>	{	[ XF86AudioNext		]	};
    key <I24>	{	[ XF86AudioPrev		]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86AudioMute		]	};
    key <I63>	{	[ XF86Standby		]	};
    key <I68>	{	[ XF86AudioStop		]	};
    key <PRSC>	{	[ XF86MyComputer	]	};
    key <IR7C>	{	[ XF86AudioMedia	]	};
};

// Microsoft Office Keyboard
partial alphanumeric_keys
xkb_symbols "microsoftoffice" {
    include "inet(nav_acpi_common)"
    key <BRK>	{	[ XF86Calendar		]	};
    key <END>	{	[ Undo			]	};
    key <I02>	{	[ XF86HomePage		]	};
    key <I1E>	{	[ XF86AudioLowerVolume	]	};
    key <I25>	{	[ XF86AudioRaiseVolume	]	};
    key <I26>	{	[ XF86AudioMute		]	};
    key <I3C>	{	[ XF86Cut		]	};
    key <I4A>	{	[ XF86LogOff		]	};
    key <I54>	{	[ XF86ApplicationLeft	]	};
    key <I55>	{	[ XF86TaskPane		]	};
    key <I56>	{	[ XF86Spell		]	};
    key <I57>	{	[ XF86WWW		]	};
    key <I58>	{	[ XF86New		]	};
    key <I59>	{	[ XF86Open		]	};
    key <I5A>	{	[ XF86Close		]	};
    key <I62>	{	[ Help			]	};
    key <I64>	{	[ XF86Save		]	};
    key <I67>	{	[ Print			]	};
    key <I6D>	{	[ XF86OfficeHome	]	};
    key <I70>	{	[ Redo			]	};
    key <I71>	{	[ XF86Reply		]	};
    key <I72>	{	[ XF86MailForward	]	};
    key <I73>	{	[ XF86Send		]	};
    key <I78>	{	[ XF86Copy		]	};
    key <MOAR>	{	[ XF86ApplicationRight	]	};
    key <RCTL>	{	[ XF86Paste		]	};
};

// Microsoft Wireless Multimedia Keyboard 1.0A
partial alphanumeric_keys
xkb_symbols "microsoftmult" {
    include "inet(media_nav_acpi_common)"
    key <AE13>  {       [ XF86Messenger         ]       };
    key <FK14>	{	[ XF86New		]	};
    key <FK15>	{	[ XF86Open		]	};
    key <FK16>	{	[ XF86Close		]	};
    key <FK17>	{	[ XF86Reply		]	};
    key <I07>	{	[ Redo			]	};
    key <I08>	{	[ Undo			]	};
    key <I16>   {       [ XF86LogOff            ]       };
    key <I23>	{	[ XF86Spell		]	};
    key <I3B>	{	[ Help			]	};
    key <I3C>   {       [ XF86Music     ]       };
    key <I42>	{	[ XF86Forward		]	};
    key <I43>	{	[ XF86Send		]	};
    key <I57>	{	[ XF86Save		]	};
    key <I58>	{	[ Print			]	};
    key <I64>   {       [ XF86Pictures  ]       };
    key <I80>   {       [ XF86Documents ]       };
};


// Oretec

// Oretec MCK-800 MM/Internet keyboard
partial alphanumeric_keys
xkb_symbols "oretec" {
    include "inet(acpi_common)"
    key <I10>	{	[ XF86ScrollUp		]	};
    key <I12>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I17>	{	[ XF86AudioPrev		]	};
    key <I18>	{	[ XF86ScrollDown	]	};
    key <I19>	{	[ XF86ZoomOut		]	};
    key <I1E>	{	[ XF86AudioMute		]	};
    key <I21>	{	[ XF86WWW		]	};
    key <I22>	{	[ Menu			]	};
    key <I23>	{	[ XF86AudioStop		]	};
    key <I24>	{	[ XF86Calculator	]	};
    key <I25>	{	[ XF86Xfer		]	};
    key <I26>	{	[ XF86Mail		]	};
    key <I2E>	{	[ XF86AudioNext		]	};
    key <I30>	{	[ XF86AudioRaiseVolume	]	};
    key <I32>	{	[ XF86ZoomIn		]	};
    key <I68>	{	[ XF86AudioLowerVolume	]	};
};


// Propeller

// Propeller Voyager (KTEZ-1000)
partial alphanumeric_keys
xkb_symbols "propeller" {
    include "inet(media_common)"
    key <I12>	{	[ XF86AudioRewind	]	};
    key <I17>	{	[ XF86Close		]	};
    key <I18>	{	[ XF86Xfer		]	};
    key <I1E>	{	[ XF86AudioRecord	]	};
    key <I21>	{	[ XF86Documents		]	};
    key <I23>	{	[ XF86Game		]	};
    key <I25>	{	[ XF86Calculator	]	};
    key <I26>	{	[ Menu			]	};
    key <I32>	{	[ XF86WWW		]	};
    key <I68>	{	[ XF86DOS		]	};
    key <I7A>	{	[ XF86Standby		]	};
};


// QTronix

// QTronix Scorpius 98N+
partial alphanumeric_keys
xkb_symbols "qtronix" {
    key <I10>	{	[ XF86ScrollDown	]	};
    key <I12>	{	[ XF86Forward		]	};
    key <I13>	{	[ XF86WakeUp		]	};
    key <I17>	{	[ XF86Search		]	};
    key <I18>	{	[ XF86Standby		]	};
    key <I19>	{	[ XF86ScrollUp		]	};
    key <I1E>	{	[ XF86Back		]	};
    key <I1F>	{	[ XF86Reload		]	};
    key <I20>	{	[ XF86AudioRaiseVolume	]	};
    key <I21>	{	[ XF86AudioPrev		]	};
    key <I22>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I23>	{	[ XF86AudioNext		]	};
    key <I24>	{	[ XF86AudioStop		]	};
    key <I25>	{	[ XF86HomePage		]	};
    key <I26>	{	[ XF86AudioMute		]	};
    key <I2E>	{	[ XF86AudioLowerVolume	]	};
    key <I30>	{	[ XF86AudioRecord	]	};
    key <I31>	{	[ XF86PowerOff		]	};
    key <I32>	{	[ XF86Stop		]	};
    key <I68>	{	[ XF86Calculator	]	};
};


// Samsung

// Samsung SDM 4500P
partial alphanumeric_keys
xkb_symbols "samsung4500" {
    include "inet(media_nav_acpi_common)"
    key <AE13>	{	[ XF86Launch4		]	};
    key <I02>	{	[ XF86Launch1		]	};
    key <I04>	{	[ XF86Launch3		]	};
    key <I06>	{	[ XF86Launch5		]	};
    key <I09>	{	[ XF86Close		]	};
    key <I0A>	{	[ XF86Book		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I26>	{	[ Help			]	};
    key <I59>	{	[ XF86Explorer		]	};
    key <IR7D>	{	[ XF86Launch2		]	};
};

// Samsung SDM 4510P
partial alphanumeric_keys
xkb_symbols "samsung4510" {
    include "inet(media_acpi_common)"
    key <I02>	{	[ XF86Launch1		]	};
    key <I04>	{	[ XF86Launch3		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <IR7D>	{	[ XF86Launch2		]	};
};


// SK

// SK-1300
partial alphanumeric_keys
xkb_symbols "sk1300" {
    include "inet(media_common)"
    key <I12>	{	[ XF86Eject		]	};
    key <I1E>	{	[ XF86Forward		]	};
    key <I20>	{	[ XF86WWW		]	};
    key <I25>	{	[ XF86Standby		]	};
    key <I26>	{	[ XF86Back		]	};
    key <I32>	{	[ XF86Stop		]	};
};

// SK-2500
partial alphanumeric_keys
xkb_symbols "sk2500" {
    include "inet(media_nav_common)"
    key <I12>	{	[ XF86AudioRewind	]	};
    key <I17>	{	[ XF86Close		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I19>	{	[ XF86Forward		]	};
    key <I1E>	{	[ XF86AudioRecord	]	};
    key <I23>	{	[ XF86Xfer		]	};
    key <I25>	{	[ XF86PowerOff		]	};
    key <I26>	{	[ Menu			]	};
    key <I7A>	{	[ XF86ScreenSaver	]	};
};

// SK-6200
partial alphanumeric_keys
xkb_symbols "sk6200" {
    include "inet(acpi_common)"
    key <I12>	{	[ XF86Favorites		]	};
    key <I14>	{	[ XF86AudioLowerVolume	]	};
    key <I16>	{	[ XF86AudioRaiseVolume	]	};
    key <I17>	{	[ XF86Back		]	};
    key <I19>	{	[ XF86Forward		]	};
    key <I1E>	{	[ XF86WWW		]	};
    key <I20>	{	[ XF86AudioMute		]	};
    key <I21>	{	[ XF86AudioNext		]	};
    key <I22>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I23>	{	[ XF86AudioPrev		]	};
    key <I24>	{	[ XF86AudioStop		]	};
    key <I32>	{	[ XF86Mail		]	};
};

// SK-7100
partial alphanumeric_keys
xkb_symbols "sk7100" {
    include "inet(media_common)"
    key <I12>	{	[ XF86AudioPause	]	};
    key <I17>	{	[ XF86Close		]	};
    key <I18>	{	[ XF86Video		]	};
    key <I1E>	{	[ XF86Eject		]	};
    key <I25>	{	[ XF86CD		]	};
    key <I26>	{	[ XF86Display		]	};
    key <I32>	{	[ XF86WWW		]	};
};


// Sven

// SVEN Ergonomic 2500
partial alphanumeric_keys
xkb_symbols "sven" {
    include "inet(acpi_common)"
    key <I10>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I12>	{	[ XF86Forward		]	};
    key <I17>	{	[ XF86AudioRaiseVolume	]	};
    key <I18>	{	[ XF86ZoomOut		]	};
    key <I19>	{	[ XF86AudioPrev		]	};
    key <I1A>	{	[ XF86AudioStop		]	};
    key <I1E>	{	[ XF86HomePage		]	};
    key <I20>	{	[ XF86Mail		]	};
    key <I21>	{	[ XF86ZoomIn		]	};
    key <I22>	{	[ XF86MyComputer	]	};
    key <I23>	{	[ XF86Stop		]	};
    key <I24>	{	[ XF86ScreenSaver	]	};
    key <I25>	{	[ XF86AudioLowerVolume	]	};
    key <I26>	{	[ XF86AudioMute		]	};
    key <I28>	{	[ XF86Calculator	]	};
    key <I29>	{	[ XF86Reload		]	};
    key <I2E>	{	[ XF86Search		]	};
    key <I30>	{	[ XF86Favorites		]	};
    key <I31>	{	[ XF86ScrollUp		]	};
    key <I32>	{	[ XF86ScrollDown	]	};
    key <I62>	{	[ XF86AudioNext		]	};
    key <I68>	{	[ XF86Back		]	};
};

// SVEN Slim 303
partial alphanumeric_keys
xkb_symbols "sven303" {
    key <I11>	{	[ XF86PowerOff		]	};
    key <I12>	{	[ XF86Sleep		]	};
    key <I16>	{	[ XF86WakeUp		]	};
};


// Symplon

// Symplon PaceBook (tablet PC)
partial alphanumeric_keys
xkb_symbols "symplon" {
    include "inet(nav_acpi_common)"
    key <HOME>	{	[ XF86RotationPB	]	};
    key <I13>	{	[ XF86SplitScreen	]	};
    key <I14>	{	[ XF86Support		]	};
    key <I17>	{	[ XF86New		]	};
    key <I21>	{	[ XF86User2KB		]	};
    key <I25>	{	[ XF86RotationKB	]	};
    key <I26>	{	[ XF86MenuKB		]	};
    key <I6B>	{	[ XF86User1KB		]	};
    key <PAUS>	{	[ XF86UserPB		]	};
    key <UP>	{	[ XF86MenuPB		]	};
};


// Toshiba

// Toshiba Satellite S3000
partial alphanumeric_keys
xkb_symbols "toshiba_s3000" {
    include "inet(media_common)"
    // Describes the Special buttons on Toshiba Satellite 3000 models.
    // See http://sourceforge.net/projects/omke for details on enabling
    // these keys
    key <I06>	{	[ XF86Launch1		]	};
    key <I13>	{	[ XF86Launch2		]	};
    key <I71>	{	[ XF86WWW		]	};
    key <I73>	{	[ XF86Mail		]	};
    key <I75>	{	[ XF86AudioRaiseVolume	]	};
    key <I76>	{	[ XF86AudioLowerVolume	]	};
};


// Trust

// Trust Wireless Keyboard Classic
partial alphanumeric_keys
xkb_symbols "trust" {
    include "inet(media_nav_acpi_common)"
    key <I11>	{	[ XF86ScreenSaver	]	};
    key <I1E>	{	[ XF86Eject		]	};
};

// Trust Direct Access Keyboard
partial alphanumeric_keys
xkb_symbols "trustda" {
    include "inet(media_common)"
    key <I12>	{	[ XF86AudioRewind	]	};
    key <I17>	{	[ XF86Close		]	};
    key <I18>	{	[ XF86Eject		]	};
    key <I1E>	{	[ XF86AudioRecord	]	};
    key <I23>	{	[ XF86Xfer		]	};
    key <I25>	{	[ XF86Standby		]	};
    key <I26>	{	[ Help			]	};
    key <I32>	{	[ XF86WWW		]	};
    key <I7A>	{	[ XF86Away		]	};
};


// YaHoo!

// Yahoo! Internet Keyboard
partial alphanumeric_keys
xkb_symbols "yahoo" {
    include "inet(acpi_common)"
    key <I11>	{	[ XF86AudioPrev		]	};
    key <I12>	{	[ XF86AudioPlay, XF86AudioPause ] };
    key <I1E>	{	[ XF86AudioStop		]	};
    key <I1F>	{	[ XF86AudioNext		]	};
    key <I20>	{	[ XF86AudioRecord	]	};
    key <I21>	{	[ XF86AudioLowerVolume	]	};
    key <I22>	{	[ XF86AudioRaiseVolume	]	};
    key <I23>	{	[ XF86AudioMute		]	};
    key <I24>	{	[ XF86Close		]	};
    key <I25>	{	[ XF86Calculator	]	};
    key <I26>	{	[ Help			]	};
    key <I27>	{	[ XF86Mail		]	};
    key <I28>	{	[ XF86WWW		]	};
};


// Apple keyboards (macbooks, powerbooks, powermac G5, etc)
partial alphanumeric_keys
xkb_symbols "apple" {
// Really brightness up/down
    key <II65>  {       [ XF86BrightnessAdjust  ]       };
    key <I54>   {       [ XF86BrightnessAdjust  ]       };
    key <I20>	{	[ XF86AudioMute		]	};
    key <I2E>	{	[ XF86AudioLowerVolume	]	};
    key <I30>	{	[ XF86AudioRaiseVolume	]	};
    key <I56>   {       [ XF86RotateWindows	]	};
// Really keyboard backlight off/up/down
    key <I57>   {       [ XF86Launch0		]	};
    key <I58>	{	[ XF86Launch1    	]	};
    key <I59>	{	[ XF86Launch2   	]	};
    key <I5E>	{	[ XF86PowerOff          ]       };
    key <K5D>	{	[ F13 ]    };
    key <K5E>	{	[ F14 ]    };
    key <K5F>	{	[ F15 ]    };
    key <K6C>	{	[ XF86Eject ]    };
    key <II5D>	{	[ F16 ]    };
    key <KPEQ>  {       [ KP_Equal ] };
};

partial alphanumeric_keys
xkb_symbols "cymotionlinux" {
    include "inet(media_nav_acpi_common)"
    key <I07>	{	[	Undo			]	};
    key <I0A>	{	[	Redo			]	};
    key <I0F>	{	[	XF86ScrollDown		]	};
    key <I17>	{	[	XF86Launch2		]	};
    key <I1F>	{	[	XF86Launch1		]	};
    key <I28>	{	[	XF86MenuKB		]	};
    key <I2B>	{	[	XF86Launch3		]	};
    key <I3C>	{	[	XF86Cut			]	};
    key <I78>	{	[	XF86Copy		]	};
    key <K65>	{	[	XF86Paste		]	};
    key <K75>	{	[	XF86ScrollUp		]	};
    key <IR7C>	{	[	XF86AudioMedia		]	};
};

partial alphanumeric_keys
xkb_symbols "silvercrest" {
    include "inet(media_nav_acpi_common)"
    key <I02>	{	[ XF86HomePage		]	};
    key <I21>	{	[ XF86Launch2		]	};
    key <K67>	{	[ XF86Launch1		]	};
};


// eMachines

partial alphanumeric_keys
xkb_symbols "emachines" {
    include "inet(media_nav_acpi_common)"
    key <I32>  {  [ XF86iTouch                    ]  };
    key <KP0>  {  [ KP_0                          ]  };
    key <KP1>  {  [ KP_1                          ]  };
    key <KP2>  {  [ KP_2                          ]  };
    key <KP3>  {  [ KP_3                          ]  };
    key <KP4>  {  [ KP_4                          ]  };
    key <KP5>  {  [ KP_5                          ]  };
    key <KP6>  {  [ KP_6                          ]  };
    key <KP7>  {  [ KP_7                          ]  };
    key <KP8>  {  [ KP_8                          ]  };
    key <KP9>  {  [ KP_9                          ]  };
    key <KPAD> {  [ KP_Add                        ]  };
    key <KPDL> {  [ KP_Decimal                    ]  };
    key <KPDV> {  [ KP_Divide                     ]  };
    key <KPMU> {  [ KP_Multiply                   ]  };
    key <KPSU> {  [ KP_Subtract                   ]  };
};


// BenQ

// BenQ X* (X730, X500, X800)
//
// To make the FN_LOCK and CONFIG key work on the BenQ X500 , use:
// setkeycodes e074 130 # KEY_PROPS  from /usr/include/linux/input.h
// setkeycodes e075 171 # KEY_CONFIG from /usr/include/linux/input.h
partial alphanumeric_keys
xkb_symbols "benqx" {
    include "inet(media_nav_acpi_common)"
    key <I02> { [ XF86ModeLock ] };
    key <I21> { [ XF86WWW      ]  };
    key <I2B> { [ XF86Go ] };
    key <I31> { [ XF86Calendar ] };
};


// Intel

// Intel Classmate
partial alphanumeric_keys
xkb_symbols "classmate" {
    key <I2E>   {       [ XF86AudioLowerVolume  ] };
    key <I30>   {       [ XF86AudioRaiseVolume  ] };
};


// Unitek

partial alphanumeric_keys
xkb_symbols "unitekkb1925" {
    include "inet(media_nav_common)"
    key <I0C> { [ XF86AudioMute ] };
    key <I11> { [ XF86PowerOff ] };
    key <I12> { [ XF86Sleep ] };
    key <I16> { [ XF86WakeUp ] };
    key <I18> { [ XF86Search ] };
    key <I1A> { [ XF86Reload ] };
};


// Creative

// Creative Desktop Wireless 7000
partial alphanumeric_keys
xkb_symbols "creativedw7000" {
    include "inet(media_nav_acpi_common)"
    key <I66>   {       [ XF86Pictures ]       };
};


// Compal

// Compal FL90
partial alphanumeric_keys
xkb_symbols "compalfl90" {
    include "inet(media_nav_acpi_common)"
    key <I54>   {       [ XF86MonBrightnessUp   ]       };
    key <II65>  {       [ XF86MonBrightnessDown ]       };
};

partial alphanumeric_keys
xkb_symbols "pc105" {
    include "inet(media_nav_acpi_common)"
};


// HTC Dream
partial alphanumeric_keys
xkb_symbols "htcdream" {
	key <BKSP> { [ BackSpace ] };
	key <RTRN> { [ Return ] };

        key <AE01> { [ 1, 1, exclam, exclam ] };
        key <AE02> { [ 2, 2, at, at ] };
        key <AE03> { [ 3, 3, numbersign, numbersign ] };
        key <AE04> { [ 4, 4, dollar, dollar ] };
        key <AE05> { [ 5, 5, percent, percent ] };
        key <AE06> { [ 6, 6, dead_circumflex, dead_circumflex ] };
        key <AE07> { [ 7, 7, ampersand, ampersand ] };
        key <AE08> { [ 8, 8, asterisk, asterisk ] };
        key <AE09> { [ 9, 9, parenleft, parenleft ] };
        key <AE10> { [ 0, 0, parenright, parenright ] };

	key <LFSH> { [ Shift_L ] };
	key <SPCE> { [ space ] };
	key <AB09> { [ period, period, slash, slash ] };
	key <RTSH> { [ Shift_R ] };

	modifier_map Shift { <LFSH>, <RTSH> };
};

partial alphanumeric_keys
xkb_symbols "chromebook" {
	include "level3(ralt_switch)"
        key <FK01> {    [ XF86Back ] };
        key <FK02> {    [ XF86Forward ] };
        key <FK03> {    [ XF86Reload ] };
        key <FK04> {    [ F11 ] };
//        key <FK05> {    [ F5, F5, F5, F5 ] }; // Overview key
        key <FK06> {    [ XF86MonBrightnessDown ] };
        key <FK07> {    [ XF86MonBrightnessUp ] };
        key <FK08> {    [ XF86AudioMute ] };
        key <FK09> {    [ XF86AudioLowerVolume ] };
        key <FK10> {    [ XF86AudioRaiseVolume ] };
        key <BKSP> {    [ BackSpace, BackSpace, Delete ] };
        key <UP>   {    [ Up, Up, Prior, Up ] };
        key <DOWN> {    [ Down, Down, Next, Down ] };
        key <LEFT> {    [ Left, Left, Home, Left ] };
        key <RGHT> {    [ Right, Right, End, Right ] };
        key <LWIN> {    [ Super_L, Super_L, Caps_Lock, Super_L ] };
};

partial alphanumeric_keys
xkb_symbols "teck227" {
    include "inet(media_nav_common)"
    key <HIRA> { [ Hiragana ] };
};

partial alphanumeric_keys
xkb_symbols "teck229" {
    include "inet(teck227)"
};
