/* xkeycaps, Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
 * Jamie Zawinski <jwz@jwz.org>
 * Copyright (c) 2005, 2006 Christoph Berg <cb@df7cb.de>
 *
 * Permission to use, copy, modify, distribute, and sell this software and its
 * documentation for any purpose is hereby granted without fee, provided that
 * the above copyright notice appear in all copies and that both that
 * copyright notice and this permission notice appear in supporting
 * documentation.  No representations are made about the suitability of this
 * software for any purpose.  It is provided "as is" without express or 
 * implied warranty.
 */




/***************************************************************************
 *                                                                         *
 *                                                                         *
 *                                  WARNING!!                              *
 *                                  WARNING!!                              *
 *                                  WARNING!!                              *
 *                                                                         *
 *                                                                         *
 *    Do not edit this file without having read `../defining.txt' first!   *
 *                                                                         *
 *                                                                         *
 *             Please send any changes you make to <cb@df7cb.de>.          *
 *                 But do carefully follow the instructions...             *
 *                                                                         *
 *                                                                         *
 *                                                                         *
 *                                                                         *
 ***************************************************************************/








#ifdef KBD
  KBD ("pck301", "Adesso", "Adesso PCK-301 (XFree86; US)", 0,
       &pck301_geom, pck301_caps, pck301_codes, xfree86us_map),
#else
# include "pck301-geom.h"
# include "pck301-caps.h"
# include "pck301-codes.h"
#endif 

#ifdef KBD
  KBD ("Amiga", "Amiga", "Non-A1000 (German)", 0,
       &amiga96_geom, amiga_de_caps, amiga_codes, amiga_de_map),
#else
# include "amiga96-geom.h"
# include "amiga-de-caps.h"
# include "amiga-codes.h"
# include "amiga-de-map.h"
#endif 

#ifdef KBD
  KBD ("Mac", "Apple", "Extended II (MacX; US)", "MacX",
       &mac_geom, mac_caps, mac_codes, mac_map),
#else
# include "mac-geom.h"
# include "mac-caps.h"
# include "mac-codes.h"
# include "mac-map.h"
#endif

#ifdef KBD
  KBD ("MkLinux-US", "Apple", "Extended II (MkLinux; US)", "X Consortium",
       &macext2_geom, mac_mklinux_us_caps, macext2_codes, mac_mklinux_map),
#else
# include "macext2-geom.h"
# include "mklinux-us-caps.h"
# include "macext2-codes.h"
/* # include "mac-map.h" */
#endif

#ifdef KBD
  KBD ("MkLinux-de", "Apple", "Extended II (MkLinux; German)", 0,
       &mac_geom, mac_mklinux_de_caps, mac_mklinux_codes, mac_mklinux_map),
#else
# include "mklinux-codes.h"
# include "mklinux-map.h"
# include "mklinux-de-caps.h"
#endif

#ifdef KBD
  KBD ("MacADB", "Apple", "Standard ADB (NetBSD; US)", 0,
       &macstd_geom, macstd_caps, macstd_codes, macstd_map),
#else
# include "macstd-geom.h"
# include "macstd-caps.h"
# include "macstd-codes.h"
# include  "macstd-map.h"
#endif

#ifdef KBD
  KBD ("TT", "Atari", "TT (US)", 0,
       &tt_geom, tt_caps, tt_codes, tt_map),
#else
# include "tt-geom.h"
# include "tt-caps.h"
# include "tt-codes.h"
# include "tt-map.h"
#endif

#ifdef KBD
  KBD ("Presario", "Compaq", "Presario 1655 (XInside; US)", 0,
       &presario_geom, presario_caps, presario_codes, xinside_map),
#else
# include "presario-geom.h"
# include "presario-caps.h"
# include "presario-codes.h"
#endif

#ifdef KBD
  KBD ("GA5k", "Concurrent", "GA5000 (US)", "CONCURRENT-ga5000",
       &pc101_geom, ga5k_caps, ga5k_codes, ga5k_map),
#else
# include "ga5k-caps.h"
# include "ga5k-codes.h"
# include "ga5k-map.h"
#endif

#ifdef KBD
  KBD ("Cramer", "Cramer", "106 key Interfaces (XFree86; US)", 0,
       &cramer_geom, cramer_caps, cramer_codes, xfree86us_map),
#else
# include "cramer-geom.h"
# include "cramer-caps.h"
# include "cramer-codes.h"
# include "xfree86us-map.h"
#endif

#ifdef KBD
  KBD ("CramerSGI", "Cramer", "106 key Interfaces (Irix 5.2, 6.3; US)", 0,
       &cramer_geom, cramer_caps, cramer_sgi_codes, sgi5_r5_map),
#else
# include "cramer-sgi-codes.h"
#endif

#ifdef KBD
  KBD ("AViiON", "Data General", "AViiON 300 PC (US)", 0,
       &pc101_geom, pc101_caps, aviion300_codes, aviion300_map),
#else
# include "aviion300-codes.h"
# include "aviion300-map.h"
#endif

#ifdef KBD
  KBD ("LK201", "Digital", "LK201 (US)", "Digital Equipment Corporation",
       &lk201_geom, lk201_caps, lk201_codes, lk201_map),
#else
# include "lk201-geom.h"
# include "lk201-caps.h"
# include "lk201-codes.h"
# include "lk201-map.h"
#endif

#ifdef KBD
  KBD ("LK401", "Digital", "LK401 (US)", "DECWINDOWS Digital",
       &lk401_geom, lk401_caps, lk401_codes, lk401_map),
#else
# include "lk401-caps.h"
# include "lk401-codes.h"
# include "lk401-map.h"
#endif

#ifdef KBD
  KBD ("LK401SF", "Digital", "LK401 (Swedish TTY)", 0,
       &lk401_geom, lk401sf_caps, lk401_codes, lk401sf_map),
#else
# include "lk401sf-caps.h"
# include "lk401sf-map.h"
#endif

#ifdef KBD
  KBD ("LK401SFDP", "Digital", "LK401 (Swedish DP)", 0,
       &lk401_geom, lk401sf_caps, lk401_codes, lk401sfdp_map),
#else
# include "lk401sfdp-map.h"
#endif

#ifdef KBD
  KBD ("LK421", "Digital", "LK421 (US)", 0,
       &lk421_geom, lk421_caps, lk421_codes, lk401_map),
#else
# include "lk421-geom.h"
# include "lk421-caps.h"
# include "lk421-codes.h"
#endif

#ifdef KBD
  KBD ("LK450", "Digital", "LK450 (XFree86)", 0,
       &lk401_geom, lk450_caps, lk450_codes, lk450_map),
#else
# include "lk450-caps.h"
# include "lk450-codes.h"
# include "lk450-map.h"
#endif

#ifdef KBD
  KBD ("PCXAL", "Digital", "PCXAL (US)", 0,
       &pc101_geom, pc101_caps, pcxal_codes, pcxal_map),
#else
# include "pcxal-codes.h"
# include "pcxal-map.h"
#endif

#ifdef KBD
  KBD ("PCXAL-R6", "Digital", "PCXAL (XFree86; US)", 0,
       &pc101_geom, pc101_caps, pcxal_r6_codes, pcxal_r6_map),
#else
# include "pcxal-r6-codes.h"
# include "pcxal-r6-map.h"
#endif

#ifdef KBD
    KBD ("GW2K", "Gateway 2000", "AnyKey Keyboard (XFree86; US)", 0,
       &gw2k_geom, gw2k_caps, gw2k_codes, gw2k_map),
#else
# include "gw2k-geom.h"
# include "gw2k-caps.h"
# include "gw2k-codes.h"
# include "gw2k-map.h"
#endif

#ifdef KBD
  KBD ("GVC", "GVC/ARM", "Concorde 105 key (XFree86; US)", 0,
       &gvc_geom, gvc_caps, gvc_codes, gvc_map),
#else
# include "gvc-geom.h"
# include "gvc-caps.h"
# include "gvc-codes.h"
# include "gvc-map.h"
#endif

#ifdef KBD
  KBD ("HP-ITF", "Hewlett-Packard", "HP9000 ITF HIL (US)",
       "Hewlett-Packard Company",
       &hpitf_geom, hpitf_caps, hpitf_codes, hpitf_map),
#else
# include "hpitf-geom.h"
# include "hpitf-caps.h"
# include "hpitf-codes.h"
# include "hpitf-map.h"
#endif

#ifdef KBD
  KBD ("HP-ITF-GERMAN", "Hewlett-Packard", "HP9000 ITF HIL (German)", 0,
       &hpitf_geom, hpitfde_caps, hpitf_codes, hpitfde_map),
#else
# include "hpitfde-caps.h"
# include "hpitfde-map.h"
#endif

#ifdef KBD
  KBD ("HP-ITF-FINNISH", "Hewlett-Packard", "HP9000 ITF HIL (Finnish)", 0,
       &hpitf_geom, hpitffi_caps, hpitf_codes, hpitfsf_map),
#else
# include "hpitfsf-caps.h"
# include "hpitfsf-map.h"
#endif

#ifdef KBD
  KBD ("HP-ITF-SWEDISH", "Hewlett-Packard", "HP9000 ITF HIL (Swedish)", 0,
       &hpitf_geom, hpitfsv_caps, hpitf_codes, hpitfsf_map),
#else
# include "hpitffi-caps.h"
#endif

#ifdef KBD
  KBD ("HP4032X", "Hewlett-Packard", "Aptrex Terminal (USASCII)", 0,
       &hp4032x_geom, sun5pc_caps, hp4032x_codes, hp4032x_map),
#else
# include "hp4032x-geom.h"
# include "hp4032x-codes.h"
# include "hp4032x-map.h"
#endif

#ifdef KBD
  KBD ("HP700RX", "Hewlett-Packard", "700/RX Terminal (101 key; US)",
       0,
       &pc101_geom, pc101_caps, hp700rx_codes, hp700rx_map),
#else
# include "hp700rx-codes.h"
# include "hp700rx-map.h"
#endif

#ifdef KBD
  KBD ("HP700RXUK", "Hewlett-Packard",
       "700/RX Terminal (102 key; United Kingdom)", 0,
       &pc102_geom, hppcuk_caps, hppcuk700rx_codes, hppcuk700rx_map),
#else
# include "hppcuk700rx-codes.h"
# include "hppcuk700rx-map.h"
#endif

#ifdef KBD
  KBD ("HP700RXSF", "Hewlett-Packard",
       "700/RX Terminal (102 key; Swedish/Finnish)", 0,
       &pc102_geom, pc102sf_caps, hppcuk700rx_codes, hppcsf700rx_map),
#else
# include "hppcsf700rx-map.h"
#endif

#ifdef KBD
  KBD ("HP-PS2_DIN_US_English", "Hewlett-Packard", "HP9000 PS2 DIN (US)", 0,
       &pc101_geom, pc101_caps, hp700rx_codes, hpps2din_us_map),
#else
# include "hpps2din_us-map.h"
#endif

#ifdef KBD
  KBD ("HP-PS2_DIN_German", "Hewlett-Packard", "HP9000 PS2 DIN (German)", 0,
       &pc102_geom, pc102de_caps, hppcuk700rx_codes, hpps2din_de_map),
#else
# include "hpps2din_de-map.h"
#endif

#ifdef KBD
  KBD ("Apollo", "Hewlett-Packard", "Apollo (US)", "Apollo Computer Inc",
       &apollo_geom, apollo_caps, apollo_codes, apollo_map),
#else
# include "apollo-geom.h"
# include "apollo-caps.h"
# include "apollo-codes.h"
# include "apollo-map.h"
#endif

#ifdef KBD
  KBD ("RT", "IBM", "PC/RT (US)", 0,
       &pc101_geom, rt_caps, rt_codes, rt_map),
#else
# include "rt-caps.h"
# include "rt-codes.h"
# include "rt-map.h"
#endif

#ifdef KBD
  KBD ("RTSW", "IBM", "PC/RT 102 (Swedish 7-bit)", 0,
       &pc102_geom, rtsw_caps, rtsw_codes, rtsw_map),
#else
# include "rtsw-caps.h"
# include "rtsw-codes.h"
# include "rtsw-map.h"
#endif

#ifdef KBD
  KBD ("RTSW8", "IBM", "PC/RT 102 (Swedish 8-bit)", 0,
       &pc102_geom, rtsw_caps, rtsw_codes, rtsw8_map),
#else
# include "rtsw8-map.h"
#endif

#ifdef KBD
  KBD ("RS6k", "IBM", "RS/6000 (AIXWindows R4; US)",
       "International Business Machines",
       &pc101_geom, rs6k_caps, rs6k_codes, rs6k_aix_map),
#else
# include "rs6k-caps.h"
# include "rs6k-codes.h"
# include "rs6k-aix-map.h"
#endif

#ifdef KBD
  KBD ("RS6kDE", "IBM", "RS/6000 (AIXWindows R4; German)", 0,
       &pc102_geom, rs6kde_caps, rs6kde_codes, rs6kde_aix_map),
#else
# include "rs6kde-caps.h"
# include "rs6kde-codes.h"
# include "rs6kde-aix-map.h"
#endif

#ifdef KBD
  KBD ("RS6k-XC", "IBM", "RS/6000 (X11R5; US)", 0,
       &pc101_geom, rs6k_caps, rs6k_codes, rs6k_xc_map),
#else
# include "rs6k-xc-map.h"
#endif

#ifdef KBD
  KBD ("TP560es", "IBM", "ThinkPad 560 (XFree86; Spanish)", 0,
       &tp560_geom, tp560es_caps, tp560_codes, xfree86es_map),
#else
# include "tp560-geom.h"
# include "tp560es-caps.h"
# include "tp560-codes.h"
#endif

#ifdef KBD
  KBD ("TP770", "IBM", "ThinkPad 770 (XFree86; US)", 0,
       &tp770_geom, tp770_caps, tp770_codes, xfree86us_map),
#else
# include "tp770-geom.h"
# include "tp770-caps.h"
# include "tp770-codes.h"
#endif

#ifdef KBD
  KBD ("Kinesis", "Kinesis", "120 key (XFree86; US)", 0,
       &kinesis_geom, kinesis_caps, kinesis_codes, xfree86us_map),
#else
# include "kinesis-geom.h"
# include "kinesis-caps.h"
# include "kinesis-codes.h"
#endif

#ifdef KBD
  KBD ("KinesisSIC", "Kinesis", "120 key (Sun Interface Converter; US)", 0,
       &kinesis_geom, kinesis_caps, kinesis_sparc_codes, ms104_sparc_map),
#else
# include "kinesis-sparc-codes.h"
# include "kinesis-sparc-map.h"
#endif

#ifdef KBD
  KBD ("ktx1000", "KTX 1000", "IBM 104 Key Compatible (XFree86; US)", 0,
       &ktx1000_geom, ktx1000_caps, ktx1000_codes, xfree86us_map),
#else
# include "ktx1000-caps.h"
# include "ktx1000-codes.h"
# include "ktx1000-geom.h"
#endif

#ifdef KBD
  KBD ("Labtam", "Labtam", "MT200 Terminal (US)", "Labtam Australia Pty Ltd",
       &tek101_geom, labtam_caps, labtam_codes, labtam_map),
#else
# include "labtam-caps.h"
# include "labtam-codes.h"
# include "labtam-map.h"
#endif

#ifdef KBD
  KBD ("MIDW", "MidwestMicro", "Elite SoundBook (US)", 0,
       &elite_geom, elite_caps, elite_codes, xfree86us_map),
#else
# include "elite-geom.h"
# include "elite-caps.h"
# include "elite-codes.h"
#endif

#if 0          /* #### commented out for now because the keymap isn't right */
#ifdef KBD
  KBD ("TREK", "Micron", "Transport Trek 2 (US)", 0,
       &trek_geom, trek_caps, trek_codes, xfree86us_map),
#else
# include "trek-geom.h"
# include "trek-caps.h"
# include "trek-codes.h"
#endif
#endif /* 0 */


#ifdef KBD
  KBD ("MS104", "Microsoft",
       "`Natural' 104 key (XFree86; US)", 0,
       &ms104_geom, ms104_caps, ms104_codes, xfree86us_map),
#else
# include "ms104-geom.h"
# include "ms104-caps.h"
# include "ms104-codes.h"
#endif

#ifdef KBD
  KBD ("MS104SGI", "Microsoft", "`Natural' 104 key (Irix 5.2, 6.3; US)", 0,
       &ms104_geom, ms104_caps, ms104_sgi5_codes, sgi5_r5_map),
#else
# include "ms104-sgi5-codes.h"
#endif

  /* Sun Interface Converter box, part # 370-2068-01 lets you connect one PC
     standard PS/2 style keyboard, one PS/2 style mouse, and one Sun style
     keyboard into your SparcStation. */
#ifdef KBD
  KBD ("MS104IFC", "Microsoft",
       "`Natural' 104 key (Sun Interface Converter; US)", 0,
       &ms104_geom, ms104_caps, ms104_sparc_codes, ms104_sparc_map),
#else
# include "ms104-sparc-codes.h"
# include "ms104-sparc-map.h"
#endif

  
#ifdef KBD
  KBD ("GW2KN", "Microsoft",
       "`Natural' 104 key (Gateway 2K XFree86; US)", 0,
       &gw2kn_geom, ms104_caps, gw2kn_codes, gw2kn_map),
#else
# include "gw2kn-geom.h"
# include "gw2kn-codes.h"
# include "gw2kn-map.h"
#endif

#ifdef KBD
  KBD ("MS104US_HPUX", "Microsoft",
       "`Natural' 104 key (HP-UX; US)", 0,
       &ms104_geom, ms104_caps, ms104_hpux_codes, hpps2din_us_map),
#else
# include "ms104-hpux-codes.h"
#endif

#ifdef KBD
  KBD ("MS105DE_HPUX", "Microsoft",
       "`Natural' 105 key (HP-UX; German)", 0,
       &ms105_geom, ms105de_caps, ms105_hpux_codes, hpps2din_de_map),
#else
# include "ms105-hpux-codes.h"
#endif

#ifdef KBD
  KBD ("MS105SE", "Microsoft",
       "`Natural' 105 key (Sun Interface Converter; Swedish)", 0,
       &ms105_geom, ms105se_caps, ms105se_codes, ms104_sparc_map),
#else
# include "ms105se-caps.h"
# include "ms105se-codes.h"
#endif

#ifdef KBD
  KBD ("MS105", "Microsoft", "`Natural' 105 key (XFree86; US)", 0,
       &ms105_geom, ms105_caps, ms105_codes, xfree86us_map),
#else
# include "ms105-geom.h"
# include "ms105-codes.h"
# include "ms105-caps.h"
#endif

#ifdef KBD
  KBD ("MS105DE", "Microsoft",
       "`Natural' 105 key (XFree86; German)", 0,
       &ms105_geom, ms105de_caps, ms105_codes, xfree86de_map),
#else
# include "ms105de-caps.h"
#endif

#ifdef KBD
  KBD ("MS105IT", "Microsoft",
       "`Natural' 105 key (XFree86; Italian)", 0,
       &ms105_geom, ms105it_caps, ms105_codes, xfree86it_map),
#else
# include "ms105it-caps.h"
# include "xfree86it-map.h"
#endif

#ifdef KBD
  KBD ("MS105ES", "Microsoft",
       "`Natural' 105 key (XFree86; Spanish)", 0,
       &ms105_geom, ms105es_caps, ms105_codes, xfree86es_map),
#else
# include "ms105es-caps.h"
# include "xfree86es-map.h"
#endif

#ifdef KBD
  KBD ("MS105BE", "Microsoft",
       "`Natural' 105 key (XFree86; Belgian)", 0,
       &ms105_geom, ms105be_caps, ms105_codes, xfree86be_map),
#else
# include "ms105be-caps.h"
# include "xfree86be-map.h"
#endif

#ifdef KBD
  KBD ("MAG3k", "MIPS", "Magnum 3000 (US)", "MIPS Computer Systems, Inc.",
       &ncd97_geom, mag3k_caps, mag3k_codes, mag3k_map),
#else
# include "mag3k-caps.h"
# include "mag3k-codes.h"
# include "mag3k-map.h"
#endif

#ifdef KBD
  KBD ("MAG-AT", "MIPS", "Magnum AT (US)", 0,
       &magat_geom, magat_caps, magat_codes, magat_map),
#else
# include "magat-geom.h"
# include "magat-caps.h"
# include "magat-codes.h"
# include "magat-map.h"
#endif

#ifdef KBD
  KBD ("RS2030", "MIPS", "RS-2030 (US)", 0,
       &pc101_geom, rs2030_caps, rs2030_codes, rs2030_map),
#else
# include "rs2030-caps.h"
# include "rs2030-codes.h"
# include "rs2030-map.h"
#endif

#ifdef KBD
  KBD ("NCD97", "NCD", "N97 (US)",
       "DECWINDOWS (Compatibility String) Network Computing Devices Inc.",
       &ncd97_geom, ncd97_caps, ncd97_codes, ncd97_map),
#else
# include "ncd97-geom.h"
# include "ncd97-caps.h"
# include "ncd97-codes.h"
# include "ncd97-map.h"
#endif

#ifdef KBD
  KBD ("NCD101", "NCD", "N101 (US)",
       "Network Computing Devices Inc.",
       &pc101_geom, ncd101_caps, ncd101_codes, ncd101_map),
#else
# include "ncd101-caps.h"
# include "ncd101-codes.h"
# include "ncd101-map.h"
#endif

#ifdef KBD
  KBD ("NCD102", "NCD", "N102 (US)", 0,
       &pc102_geom, ncd102_caps, ncd102_codes, ncd102_map),
#else
# include "ncd102-caps.h"
# include "ncd102-codes.h"
# include "ncd102-map.h"
#endif

#ifdef KBD
  KBD ("NCD102F", "NCD", "N102 (French)", 0,
       &pc102_geom, ncd102f_caps, ncd102f_codes, ncd102f_map),
#else
# include "ncd102f-caps.h"
# include "ncd102f-codes.h"
# include "ncd102f-map.h"
#endif

#ifdef KBD
  KBD ("NCD102N", "NCD", "N102 (Norwegian)", 0,
       &pc102_geom, ncd102n_caps, ncd102n_codes, ncd102n_map),
#else
# include "ncd102n-caps.h"
# include "ncd102n-codes.h"
# include "ncd102n-map.h"
#endif

#ifdef KBD
  KBD ("NCD102SF","NCD","N102 (Swedish/Finnish)",
       0,
       &pc102_geom, ncd102sf_caps, ncd102sf_codes, ncd102sf_map),
#else
# include "ncd102sf-caps.h"
# include "ncd102sf-codes.h"
# include "ncd102sf-map.h"
#endif

#ifdef KBD
  KBD ("NCD107", "NCD", "N107 (US)", 0,
       &sun4_geom, ncd107_caps, ncd107_codes, ncd107_map),
#else
# include "ncd107-caps.h"
# include "ncd107-codes.h"
# include "ncd107-map.h"
#endif

#ifdef KBD
  KBD ("NCD108", "NCD", "N108 (US)", 0,
       &ncd108_geom, ncd108_caps, ncd108_codes, ncd108_map),
#else
# include "ncd108-geom.h"
# include "ncd108-caps.h"
# include "ncd108-codes.h"
# include "ncd108-map.h"
#endif

#ifdef KBD
  KBD ("NCD108DE", "NCD", "N108 (German)", 0,
       &ncd108_geom, ncd108de_caps, ncd108_codes, ncd108de_map),
#else
# include "ncd108de-caps.h"
# include "ncd108de-map.h"
#endif

#ifdef KBD
  KBD ("NCD220", "NCD", "vt220 (US)", 0,
       &ncd220_geom, ncd220_caps, ncd220_codes, ncd220_map),
#else
# include "ncd220-caps.h"
# include "ncd220-codes.h"
# include "ncd220-map.h"
#endif

#ifdef KBD
  KBD ("NCD123UX", "NCD", "123UX (US)", 0,
       &ncd123_geom, ncd123_caps, ncd123_codes, ncd123_map),
#else
# include "ncd123-caps.h"
# include "ncd123-codes.h"
# include "ncd123-geom.h"
# include "ncd123-map.h"
#endif

#ifdef KBD
    /* must come after NCD123UX (shares data.) */
  KBD ("NCD123NA", "NCD", "123NA (US)", 0,
          &ncd123na_geom, ncd123na_caps, ncd123na_codes, ncd123na_map),
#else
# include "ncd123na-caps.h"
# include "ncd123na-codes.h"
# include "ncd123na-geom.h"
# include "ncd123na-map.h"
#endif

#ifdef KBD
  KBD ("NCDPC", "NCD", "PC-Xview (US)",
       "PC-Xview for Windows, by Network Computing Devices, Inc.",
       &tek101_geom, ncdpc_caps, ncdpc_codes, ncdpc_map),
#else
# include "ncdpc-caps.h"
# include "ncdpc-codes.h"
# include "ncdpc-map.h"
#endif

#ifdef KBD
  KBD ("NeXT", "NeXT", "Non-ADB (US)", "Pencom",
       &NeXT_geom, NeXT_caps, NeXT_codes, NeXT_map),
#else
# include "NeXT-geom.h"
# include "NeXT-caps.h"
# include "NeXT-codes.h"
# include "NeXT-map.h"
#endif

#ifdef KBD
  KBD ("OMNI102", "Northgate", "OmniKey 102 (XFree86; US)", 0,
       &omni102_geom, omni102_caps, omni102_codes, xfree86us_map),
#else
# include "omni102-geom.h"
# include "omni102-caps.h"
# include "omni102-codes.h"
#endif

#ifdef KBD
  KBD ("OMNIU", "Northgate", "OmniKey Ultra (XFree86; US)", 0,
       &omniultra_geom, omniultra_caps, omniultra_codes, xfree86us_map),
#else
# include "omniultra-geom.h"
# include "omniultra-caps.h"
# include "omniultra-codes.h"
#endif

#ifdef KBD
  KBD ("ORTEK", "Ortek", "Enhanced Keyboard (XFree86; US)", 0,
       &ortek_geom, ortek_caps, ortek_codes, xfree86us_map),
#else
# include "ortek-geom.h"
# include "ortek-caps.h"
# include "ortek-codes.h"
#endif

#ifdef KBD
  KBD ("L84", "PC", "84 key PC/AT (XFree86; US)", 0,
       &pc84_geom, pc84_caps, pc84_codes, xfree86us_map),
#else
# include "pc84-geom.h"
# include "pc84-caps.h"
# include "pc84-codes.h"
#endif

#ifdef KBD
  KBD ("HPPC", "PC",
       "101 key, wide Delete, short Enter (Hewlett-Packard PC; US)", 0,
       &pc101_geom, pc101_caps, hppc_codes, hppc_map),
#else
# include "pc101-geom.h"
# include "pc101-caps.h"
# include "hppc-codes.h"
# include "hppc-map.h"
#endif

#ifdef KBD
  KBD ("PCOW101", "PC",
       "101 key, wide Delete, short Enter (OpenWindows/x86; US)", 0,
       &pc101_geom, pc101_caps, openwin101_codes, openwin104_map),
#else
# include "openwin101-codes.h"
# include "openwin104-map.h"
#endif

#ifdef KBD
  KBD ("SCO110", "PC",
       "101 key, wide Delete, short Enter (Santa Cruz Operation; US)",
       "The Santa Cruz Operation",
       &pc101_geom, pc101_caps, sco110_codes, sco110_map),
#else
# include "sco110-codes.h"
# include "sco110-map.h"
#endif

#ifdef KBD
  KBD ("DELL", "PC", "101 key, wide Delete, short Enter (DELL PC; US)", 0,
       &pc101_geom, pc101_caps, dell_codes, dell_map),
#else
# include "dell-codes.h"
# include "dell-map.h"
#endif

  /* The order of IBM130 and AGE101 is important because of their
     vendor ID strings - see comments in "xoft*.h" to understand... */
#ifdef KBD
  KBD ("IBM130",  "PC",
       "101 key, wide Delete, short Enter (AGE XoftWare, XStation 130; US)",
       "AGE Logic, Inc. Release",
       &pc101_geom, rs6k_caps, rs6k_codes, xoft1_map),
#else
# include "xoft1-map.h"
#endif

#ifdef KBD
  KBD ("AGE101", "PC",
       "101 key, wide Delete, short Enter (AGE XoftWare, 2.0 PC; US)",
       "AGE Logic, Inc.",
       &pc101_geom, pc101_caps, xoft2_codes, xoft2_map),
#else
# include "xoft2-codes.h"
# include "xoft2-map.h"
#endif

#ifdef KBD
  KBD ("HCLPC", "PC",
       "101 key, wide Delete, short Enter (Hummingbird eXceed; US)",
       "Hummingbird Communications Ltd.",
       &hclpc_geom, hclpc_caps, hclpc_codes, hclpc_map),
#else
# include "hclpc-geom.h"
# include "hclpc-caps.h"
# include "hclpc-codes.h"
# include "hclpc-map.h"
#endif

#ifdef KBD
  KBD ("XLINE101", "PC",
       "101 key, wide Delete, short Enter (Pericom X-Line; US)", 0,
       &pc101_geom, pc101_caps, xline101_codes, xline101_map),
#else
# include "xline101-codes.h"
# include "xline101-map.h"
#endif

#ifdef KBD
  KBD ("XACC101", "PC", "101 key, wide Delete, short Enter (XInside; US)",
       "X Inside Inc.",
       &pc101_geom, pc101_caps, pc101_codes, xinside_map),
#else
# include "pc101-codes.h"
# include "xinside-map.h"
#endif

#ifdef KBD
  KBD ("Sun101IFC", "PC",
       "101 key, wide Delete, short Enter (Sun Interface Converter; US)", 0,
       &pc101_geom, pc101_caps, sun5ifc101_codes, sun5pc_xc6_map),
#else
# include "sun5ifc101-codes.h"
#endif

#ifdef KBD
  /* IBM PReP machines are RS6Ks.  These usually come with AIX;
     but the following describes one running Solaris. */
  KBD ("prepOW", "PC",
       "101 key, wide Delete, short Enter (OpenWindows/IBM PReP PPC; US)", 0,
       &pc101_geom, pc101_caps, openwin101_codes, openwin104_map),
#else
#endif

#ifdef KBD
  KBD ("L101-3", "PC", "101 key, wide Delete, tall Enter (XFree86; US)", 0,
       &pc101_3_geom, pc101_3_caps, pc101_3_codes, xfree86us_map),
#else
# include "pc101-3-geom.h"
# include "pc101-3-caps.h"
# include "pc101-3-codes.h"
#endif

#ifdef KBD
  KBD ("L101", "PC", "101 key, thin Delete, tall Enter (XFree86; US)",
       "The XFree86 Project, Inc",
       &pc101_2_geom, pc101_2_caps, pc101_2_codes, xfree86us_map),
#else
# include "pc101-2-geom.h"
# include "pc101-2-caps.h"
# include "pc101-2-codes.h"
#endif

#ifdef KBD
  KBD ("L101TH", "PC", "101 key, thin Delete, tall Enter (XFree86; Thai)", 0,
       &pc101_2_geom, pc101_2th_caps, pc101_2_codes, xfree86th_map),
#else
# include "pc101-2th-caps.h"
# include "xfree86th-map.h"
#endif

#ifdef KBD
  KBD ("L102DE2", "PC", "102 key, wide Delete, short Enter (XFree86; German)",
       0,
       &pc102_2_geom, pc102_2de_caps, pc102_2_codes, xfree86de_map),
#else
# include "pc102-2-geom.h"
# include "pc102-2de-caps.h"
# include "pc102-2-codes.h"
# include "xfree86de-map.h"
#endif

#ifdef KBD
  KBD ("L102", "PC", "102 key, wide Delete, tall Enter (XFree86; US)", 0,
       &pc102_geom, pc102_caps, pc102_codes, xfree86us_map),
#else
# include "pc102-geom.h"
# include "pc102-caps.h"
# include "pc102-codes.h"
#endif

#ifdef KBD
  KBD ("L102DE", "PC", "102 key, wide Delete, tall Enter (XFree86; German)", 0,
       &pc102_geom, pc102de_caps, pc102_codes, xfree86de_map),
#else
# include "pc102de-caps.h"
#endif

#if 0
/* The keymap is wrong on this one.  I need a correct keymap for
   XInside/DE.  */
#ifdef KBD
  KBD ("XACC102", "PC", "102 key, wide Delete, tall Enter (XInside; German)",
       0,
       &pc102_geom, pc102de_caps, pc102_codes, xinside_de_map),
#else
# include "xinside-map2.h"
#endif
#endif

#ifdef KBD
  KBD ("L102IT", "PC", "102 key, wide Delete, tall Enter (XFree86; Italian)",
       0,
       &pc102_geom, pc102it_caps, pc102_codes, xfree86it_map),
#else
# include "pc102it-caps.h"
#endif

#ifdef KBD
 KBD ("L102ES", "PC", "102 key, wide Delete, tall Enter (XFree86; Spanish)",
      0,
      &pc102_geom, pc102es_caps, pc102_codes, xfree86es_map),
#else
# include "pc102es-caps.h"
#endif

#ifdef KBD
  KBD ("L102SF", "PC",
       "102 key, wide Delete, tall Enter (XFree86; Swedish/Finnish)", 0,
       &pc102_geom, pc102sf_caps, pc102_codes, xfree86sf_map),
#else
# include "pc102sf-caps.h"
# include "xfree86sf-map.h"
#endif

#ifdef KBD
  KBD ("L102FR", "PC", "102 key, wide Delete, tall Enter (XFree86; French)", 0,
       &pc102_geom, pc102fr_caps, pc102_codes, xfree86fr_map),
#else
# include "pc102fr-caps.h"
# include "xfree86fr-map.h"
#endif

#ifdef KBD
  KBD ("L102UK", "PC",
       "102 key, wide Delete, tall Enter (XFree86; United Kingdom)", 0,
       &pc102_geom, pc102uk_caps, pc102_codes, xfree86uk_map),
#else
# include "pc102uk-caps.h"
# include "xfree86uk-map.h"
#endif

#ifdef KBD
  KBD ("L102BE", "PC", "102 key, wide Delete, tall Enter (XFree86; Belgian)",
       0,
       &pc102_geom, pc102be_caps, pc102_codes, xfree86be_map),
#else
# include "pc102be-caps.h"
#endif

#ifdef KBD
  KBD ("L102SR", "PC",
       "102 key, wide Delete, tall Enter (XFree86; Swiss French)", 0,
       &pc102_geom, pc102sr_caps, pc102_codes, xfree86sr_map),
#else
# include "pc102sr-caps.h"
# include "xfree86sr-map.h"
#endif

#ifdef KBD
  KBD ("L102NO", "PC",
       "102 key, wide Delete, tall Enter (XFree86; Norwegian)", 0,
       &pc102_geom, pc102no_caps, pc102_codes, xfree86no_map),
#else
#  include "pc102no-caps.h"
#  include "xfree86no-map.h"
#endif

#ifdef KBD
  KBD ("SN", "PC",
       "102 key, wide Delete, tall Enter (Exceed/Siemens-Nixdorf; German)", 0,
       &pc102_geom, pc102de_caps, sn_codes, sn_map),
#else
# include "sn-codes.h"
# include "sn-map.h"
#endif

#ifdef KBD
  KBD ("UW102NO", "PC",
       "102 key, wide Delete, tall Enter (SCO UnixWare 2; Norwegian)",
       0, &pc102_geom, pc102no_caps, uw102_codes, uw102no_map),
#else
# include "uw102-codes.h"
# include "uw102no-map.h"
#endif

#ifdef KBD
  KBD ("HPPCUK", "PC",
       "102 key, wide Delete, tall Enter (Hewlett-Packard PC; United Kingdom)",
       0,
       &pc102_geom, hppcuk_caps, hppcuk_codes, hppcuk_map),
#else
# include "hppcuk-codes.h"
# include "hppcuk-caps.h"
# include "hppcuk-map.h"
#endif

#ifdef KBD
  KBD ("HPPCSF", "PC",
      "102 key, wide Delete, tall Enter (Hewlett-Packard PC; Swedish/Finnish)",
       0,
       &pc102_geom, pc102sf_caps, hppcuk_codes, hppcsf_map),
#else
# include "hppcsf-map.h"
#endif

#ifdef KBD
  KBD ("HPPCDE", "PC",
       "102 key, wide Delete, tall Enter (Hewlett-Packard PC; German)", 0,
       &pc102_geom, pc102de_caps, hppcde_codes, hppcde_map),
#else
# include "hppcde-codes.h"
# include "hppcde-map.h"
#endif

#ifdef KBD
  KBD ("L102PT", "PC", "102 key, wide Delete, tall Enter (XFree86; Portuguse)",
       0,
       &pc102_geom, pc102pt_caps, pc102_codes, xfree86pt_map),
#else
# include "pc102pt-caps.h"
# include "xfree86pt-map.h"
#endif     

#ifdef KBD
  KBD ("L102-3UK", "PC",
       "102 key, thin Delete, tall Enter (XFree86; United Kingdom)", 0,
       &pc102_3_geom, pc102_3uk_caps, pc102_3_codes, xfree86uk_map),
#else
# include "pc102-3-geom.h"
# include "pc102-3uk-caps.h"
# include "pc102-3-codes.h"
#endif

#ifdef KBD
  KBD ("L104", "PC", "104 key, wide Delete, short Enter (XFree86; US)", 0,
       &pc104_geom, pc104_caps, pc104_codes, xfree86us_map),
#else
# include "pc104-geom.h"
# include "pc104-caps.h"
# include "pc104-codes.h"

#endif

#ifdef KBD
  KBD ("L104-2", "PC", "104 key, wide Delete, short Enter (XAccel; US)", 0,
       &pc104_geom, pc104_caps, pc104_2_codes, xinside_map),
#else
# include "pc104-2-codes.h"
#endif

#ifdef KBD
  KBD ("PCOW104", "PC",
       "104 key, wide Delete, short Enter (OpenWindows/x86; US)", 0,
       &pc104_geom, pc104_caps, openwin104_codes, openwin104_map),
#else
# include "openwin104-codes.h"
#endif

#ifdef KBD
  KBD ("PC105", "PC", "105 key, wide Delete, tall Enter (XFree86; US)",
       "The X.Org Foundation",
       &pc105_geom, ms105_caps, ms105_codes, xfree86us_map),
#else
# include "pc105-geom.h"
#endif

#ifdef KBD
  KBD ("PC105CA", "PC", "105 key, wide Delete, tall Enter (XFree86; Canadian)",
       0,
       &pc105_geom, pc105ca_caps, ms105_codes, pc105ca_map),
#else
# include "pc105ca-map.h"
# include "pc105ca-caps.h"
#endif

#ifdef KBD
  KBD ("PC105CF", "PC", "105 key, wide Delete, tall Enter (XFree86; CF)", 0,
       &pc105_geom, pc105cf_caps, ms105_codes, pc105cf_map),
#else
# include "pc105cf-map.h"
# include "pc105cf-caps.h"
#endif

#ifdef KBD
  KBD ("PC105UK", "PC",
       "105 key, wide Delete, tall Enter (XFree86; United Kingdom)", 0,
       &pc105_geom, pc105uk_caps, ms105_codes, xfree86uk_map),
#else
# include "pc105uk-caps.h"
#endif

#ifdef KBD
  KBD ("PC105DE", "PC", "105 key, wide Delete, tall Enter (XFree86; German)",
       0,
       &pc105_geom, ms105de_caps, ms105_codes, xfree86de_map),
#else
#endif

#ifdef KBD
  KBD ("PC105SF", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Swedish/Finnish)", 0,
       &pc105_geom, ms105sf_caps, ms105_codes, xfree86sf_map),
#else
# include "ms105sf-caps.h"
#endif

#ifdef KBD
  KBD ("PC105DA", "PC", "105 key, wide Delete, tall Enter (XFree86; Danish)",
       0,
       &pc105_geom, pc105da_caps, ms105_codes, xfree86da_map),
#else
# include "pc105da-caps.h"
# include "xfree86da-map.h"
#endif

#ifdef KBD
  KBD ("PC105SW", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Swedish)", 0,
       &pc105_geom, pc105sw_caps, ms105_codes, xfree86sw_map),
#else
# include "pc105sw-caps.h"
# include "xfree86sw-map.h"
#endif

#ifdef KBD
  KBD ("PC105IS", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Icelandic)", 0,
       &pc105_geom, pc105is_caps, ms105_codes, xfree86is_map),
#else
# include "pc105is-caps.h"
# include "xfree86is-map.h"
#endif

#ifdef KBD
  KBD ("PC105IT", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Italian)", 0,
       &pc105_geom, ms105it_caps, ms105_codes, xfree86it_map),
#else
#endif

#ifdef KBD
  KBD ("PC105ES", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Spanish)", 0,
       &pc105_geom, ms105es_caps, ms105_codes, xfree86es_map),
#else
#endif

#ifdef KBD
  KBD ("PC105BE", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Belgian)", 0,
       &pc105_geom, ms105be_caps, ms105_codes, xfree86be_map),
#else
#endif

#ifdef KBD
  KBD ("PC105SI", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Slovene)", 0,
       &pc105_geom, ms105si_caps, pc105_codes, xfree86si_map),
#else
# include "pc105-codes.h"
# include "ms105si-caps.h"
# include "xfree86si-map.h"
#endif

#ifdef KBD
  KBD ("PC105TR", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Turkish)", 0,
       &pc105_geom, pc105tr_caps, ms105_codes, xfree86tr_map),
#else
# include "pc105tr-caps.h"
# include "xfree86tr-map.h"
#endif

#ifdef KBD
  KBD ("PC105FR", "PC", "105 key, wide Delete, tall Enter (XFree86; French)",
       0,
       &pc105_geom, pc105fr_caps, ms105_codes, xfree86fr_map),
#else
# include "pc105fr-caps.h"
#endif

#ifdef KBD
  KBD ("PC105NO", "PC",
       "105 key, wide Delete, tall Enter (XFree86; Norwegian)", 0,
       &pc105_geom, pc105no_caps, ms105_codes, xfree86no_map),
#else
# include "pc105no-caps.h"
#endif

#ifdef KBD
  KBD ("L107BR", "PC",
       "107 key, wide Delete, tall Enter (XFree86; Brazilian ABNT2)", 0,
       &pc107_geom, pc107br_caps, pc107_codes, xfree86br_map),
#else
# include "pc107-geom.h"
# include "pc107br-caps.h"
# include "pc107-codes.h"
# include "xfree86br-map.h"
#endif

#ifdef KBD
    /* #### "chergo_de_map" is probably more properly named something like
            "xfree86de-map", but I'm not sure what, exactly.
     */
  KBD ("CHERGODE", "PC", "Cherry ErgoPlus (XFree86; German)", 0,
       &chergo_geom, chergo_de_caps, chergo_codes, chergo_de_map),
#else
# include "chergo-geom.h"
# include "chergo-de-caps.h"
# include "chergo-codes.h"
# include "chergo-de-map.h"
#endif

#ifdef KBD
  KBD ("CoolKeyboard", "PC", "CoolKeyboard 107 key (XFree86; US)", 0,
       &cc107_geom, cc107_caps, cc107_codes, xfree86us_map),
#else
# include "cc107-geom.h"
# include "cc107-caps.h"
# include "cc107-codes.h"
#endif

#ifdef KBD
  KBD ("HHKBPC", "PC", "Happy Hacking Keyboard (PC mode; XFree86; US)", 0,
       &hhkb_geom, hhkb_pc_caps, hhkb_pc_codes, xfree86us_map),
#else
# include "hhkb-geom.h"
# include "hhkb-caps.h"
# include "hhkb-codes.h"
#endif

#ifdef KBD
  KBD ("Sunshine", "PC",
       "Sunshine KB-6868 105 key (XFree86; US)", 0,
       &sunsh_6868_geom, sunsh_6868us_caps, sunsh_6868_codes, xfree86us_map),
#else
# include "sunsh-6868-geom.h"
# include "sunsh-6868us-caps.h"
# include "sunsh-6868-codes.h"
#endif

#ifdef KBD
  KBD ("PhaseX101", "Phase X Systems",
       "PX 101 key, wide Delete, short Enter (US)",
       "Samsung Electronics Co., Ltd.",
       &pc101_geom, pc101_caps, phasex110_codes, phasex110_map),
#else
# include "phasex110-codes.h"
# include "phasex110-map.h"
#endif

#ifdef KBD
  KBD ("PhaseX101b", "Phase X Systems",
       "PX 101 key, thin Delete, tall Enter (US)", 0,
       &pc101_2_geom, pc101_2_caps, phasex110b_codes, phasex110_map),
#else
# include "phasex110b-codes.h"
#endif

#ifdef KBD
  KBD ("PhaseXPXCH2", "Phase X Systems", "PX CH2 (Wyse 102 key; US)",
       "Phase X Systems Inc.",
       &pc101_geom, pc101_caps, phasex_pxch2_codes, phasex_pxch2_map),
#else
# include "phasex-pxch2-codes.h"
# include "phasex-pxch2-map.h"
#endif

#ifdef KBD
  KBD ("SHINE106PT", "Shine",
       "`Natural' 106 key (XFree86; Portuguese)", 0,
       &shine106_geom, shine106pt_caps, shine106_codes, xfree86pt_map),
#else
# include "shine106-geom.h"
# include "shine106pt-caps.h"
# include "shine106-codes.h"
#endif

#ifdef KBD
  KBD ("SGI", "Silicon Graphics", "101 key (Irix 5.2, 6.3; US)",
       "Silicon Graphics",
       &pc101_geom, sgi_caps, sgi5_codes, sgi5_r5_map),
#else
# include "sgi-caps.h"
# include "sgi5-codes.h"
# include "sgi5-r5-map.h"
#endif

#ifdef KBD
  KBD ("SGIDE6", "Silicon Graphics", "101 key (IRIX 6.2; German)", 0,
       &pc102_geom, sgide_caps, sgi5de_codes, sgi6de_r6_map),
#else
# include "sgide-caps.h"
# include "sgi5de-codes.h"
# include "sgi6de-r6-map.h"
#endif

#ifdef KBD
  KBD ("SGIDE", "Silicon Graphics", "101 key (IRIX 5.2; German)", 0,
       &pc102_geom, sgide_caps, sgi5de_codes, sgi5de_r5_map),
#else
# include "sgi5de-r5-map.h"
#endif

#ifdef KBD
  KBD ("SGI4R5", "Silicon Graphics", "101 key (IRIX 4.0 R5; US)", 0,
       &pc101_geom, sgi_caps, sgi4_codes, sgi4_r5_map),
#else
# include "sgi4-codes.h"
# include "sgi4-r5-map.h"
#endif

#ifdef KBD
  KBD ("SGIR4", "Silicon Graphics", "101 key (IRIX 4.0 R4; US)", 0,
       &pc101_geom, sgi_caps, sgi4_codes, sgi4_r4_map),
#else
# include "sgi4-r4-map.h"
#endif

#ifdef KBD
  KBD ("SGINO6", "Silicon Graphics", "102 key (IRIX 6.2; Norwegian)", 0,
       &pc102_geom, pc102no_caps, sgi5de_codes, sgi6no_r6_map),
#else
# include "sgi6no-r6-map.h"
#endif

#ifdef KBD
  KBD ("BFLY", "Soft Key", "Butterfly (US)", 0,
       &butterfly_geom, butterfly_caps, butterfly_codes, butterfly_map),
#else
# include "butterfly-geom.h"
# include "butterfly-codes.h"
# include "butterfly-caps.h"
# include "butterfly-map.h"
#endif

#ifdef KBD
  KBD ("BFLYDE", "Soft Key", "Butterfly (German)", 0,
       &butterfly_geom, butterflyde_caps, butterfly_codes, butterflyde_map),
#else
# include "butterflyde-caps.h"
# include "butterflyde-map.h"
#endif

#ifdef KBD
  KBD ("C1VE-DE", "Sony", "Vaio PCG-C1VE (XFree86; DE)", 0,
       &c1v_geom, c1ve_de_caps, c1v_codes, xfree86de_map),
#else
# include "c1v-geom.h"
# include "c1ve-de-caps.h"
# include "c1v-codes.h"
#endif

#ifdef KBD
  KBD ("C1VN-US", "Sony", "Vaio PCG-C1VN (XFree86; US)", 0,
       &c1v_geom, c1vn_us_caps, c1v_codes, xfree86de_map),
#else
# include "c1vn-us-caps.h"
/* c1v-geom.h and c1v-codes.h included above */
#endif

#ifdef KBD
  KBD ("NWS1250", "Sony", "NWS 1250 (US)", 0,
       &nws1250_geom, nws1250_caps, nws1250_codes, nws1250_map),
#else
# include "nws1250-geom.h"
# include "nws1250-caps.h"
# include "nws1250-codes.h"
# include "nws1250-map.h"
#endif

#ifdef KBD
  KBD ("NWS3410", "Sony", "NWS 3410 (US)", "Sony Corporation",
       &nws3410_geom, nws3410_caps, nws3410_codes, nws3410_map),
#else
# include "nws3410-geom.h"
# include "nws3410-caps.h"
# include "nws3410-codes.h"
# include "nws3410-map.h"
#endif

#ifdef KBD
  KBD ("Sun2", "Sun Microsystems", "Type 2 (X Consortium; US)", 0,
       &sun2_geom, sun2_caps, sun2_codes, sun2_xc_map),
#else
# include "sun2-geom.h"
# include "sun2-caps.h"
# include "sun2-codes.h"
# include "sun2-xc-map.h"
#endif

#ifdef KBD
  KBD ("Sun3", "Sun Microsystems", "Type 3 (X Consortium; US)", 0,
       &sun3_geom, sun3_caps, sun3_codes, sun3_xc_map),
#else
# include "sun3-geom.h"
# include "sun3-caps.h"
# include "sun3-codes.h"
# include "sun3-xc-map.h"
#endif

#ifdef KBD
  KBD ("Sun4ow", "Sun Microsystems", "Type 4 (OpenWindows; US)",
    /* "X11/NeWS - Sun Microsystems Inc.", */
       "Sun Microsystems, Inc.",
       &sun4_geom, sun4_caps, sun4_codes, sun4_ow_map),
#else
# include "sun4-geom.h"
# include "sun4-caps.h"
# include "sun4-codes.h"
# include "sun4-ow-map.h"
#endif

  /* This is the same as the R6 layout, coincidentally enough... */
#ifdef KBD
  KBD ("Sun4SWOW", "Sun Microsystems",
       "Type 4 (OpenWindows; Swedish/Finnish)", 0,
       &sun4sw_geom, sun4sw_caps, sun4sw_codes, sun4sw_map),
#else
# include "sun4sw-geom.h"
# include "sun4sw-caps.h"
# include "sun4sw-codes.h"
# include "sun4sw-map.h"
#endif

#ifdef KBD
  KBD ("Sun4r6", "Sun Microsystems", "Type 4 (X11R6; US)", 0,
       &sun4_geom, sun4_caps, sun4_codes, sun4_r6_map),
#else
# include "sun4-r6-map.h"
#endif

#ifdef KBD
  KBD ("Sun4SWr6", "Sun Microsystems", "Type 4 (X11R6; Swedish)", 0,
       &sun4sw_geom, sun4sw_caps, sun4sw_codes, sun4sw_map),
#else
#endif

#ifdef KBD
  KBD ("Sun4DE", "Sun Microsystems", "Type 4 (X11R6; German)", 0,
       &sun4de_geom, sun4de_caps, sun4de_codes, sun4de_map),
#else
# include "sun4de-geom.h"
# include "sun4de-caps.h"
# include "sun4de-codes.h"
# include "sun4de-map.h"
#endif

#ifdef KBD
  KBD ("Sun4ESOW", "Sun Microsystems",
       "Type 4 (OpenWindows; Catalan/Spanish)", 0,
       &sun4de_geom, sun4es_caps, sun4de_codes, sun4es_map),
#else
# include "sun4es-caps.h"
# include "sun4es-map.h"
#endif

#ifdef KBD
    /* #### I think this can't be right -- this must have a different keymap
            than the OpenWindows version... */
  KBD ("Sun4ESr6", "Sun Microsystems", "Type 4 (X11R6; Catalan/Spanish)", 0,
       &sun4de_geom, sun4es_caps, sun4de_codes, sun4es_map),
#else
#endif

#ifdef KBD
  KBD ("Sun4", "Sun Microsystems", "Type 4 (X11R4/R5; US)", 0,
       &sun4_geom, sun4_caps, sun4_codes, sun4_xc_map),
#else
# include "sun4-xc-map.h"
#endif

#ifdef KBD
  KBD ("Sun4linux", "Sun Microsystems", "Type 4 (XFree86; US)", 0,
       &sun4_geom, sun4_caps, sun4_codes, sun4_linux_map),
#else
# include "sun4-linux-map.h"
#endif

#ifdef KBD
  KBD ("Sun5OW", "Sun Microsystems", "Type 5 (OpenWindows; US)", 0,
       &sun5_geom, sun5_caps, sun5_codes, sun5_ow_map),
#else
# include "sun5-geom.h"
# include "sun5-caps.h"
# include "sun5-codes.h"
# include "sun5-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5SWFROW", "Sun Microsystems", "Type 5 (OpenWindows; Swiss-French)",
       0,
       &sun5swfr_geom, sun5swfr_caps, sun5swfr_codes, sun5swfr_ow_map),
#else
# include "sun5swfr-geom.h"
# include "sun5swfr-caps.h"
# include "sun5swfr-codes.h"
# include "sun5swfr-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5FR", "Sun Microsystems", "Type 5 (X11R6; French)", 0,
       &sun5swfr_geom, sun5fr_caps, sun5swfr_codes, sun5fr_xc6_map),
#else
# include "sun5fr-caps.h"
# include "sun5fr-xc6-map.h"
#endif

#ifdef KBD
  KBD ("Sun5SWOW", "Sun Microsystems", "Type 5 (OpenWindows; Swedish)", 0,
       &sun5sw_geom, sun5sw_caps, sun5sw_codes, sun5sw_ow_map),
#else
# include "sun5sw-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5UK", "Sun Microsystems", "Type 5 (OpenWindows; United Kingdom)", 0,
       &sun5uk_geom, sun5uk_caps, sun5uk_codes, sun5uk_ow_map),
#else
# include "sun5uk-geom.h"
# include "sun5uk-caps.h"
# include "sun5uk-codes.h"
# include "sun5uk-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5DE", "Sun Microsystems", "Type 5 (OpenWindows; German)", 0,
       &sun5de_geom, sun5de_caps, sun5de_codes, sun5de_ow_map),
#else
# include "sun5de-geom.h"
# include "sun5de-caps.h"
# include "sun5de-codes.h"
# include "sun5de-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5SWDE", "Sun Microsystems", "Type 5 (X11R6; Swiss-German)", 0,
       &sun5de_geom, sun5swde_caps, sun5de_codes, sun5swde_map),
#else
# include "sun5swde-caps.h"
# include "sun5swde-map.h"
#endif

#ifdef KBD
  KBD ("Sun5ESOW", "Sun Microsystems", "Type 5 (OpenWindows; Spanish)", 0,
       &sun5es_geom, sun5es_caps, sun5es_codes, sun5es_ow_map),
#else
# include "sun5es-geom.h"
# include "sun5es-caps.h"
# include "sun5es-codes.h"
# include "sun5es-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5r6", "Sun Microsystems", "Type 5 (X11R6; US)", 0,
       &sun5_geom, sun5_caps, sun5_codes, sun5_r6_map),
#else
# include "sun5-r6-map.h"
#endif

#ifdef KBD
  KBD ("Sun5", "Sun Microsystems", "Type 5 (X11R4/R5; US)", 0,
       &sun5_geom, sun5_caps, sun5_codes, sun5_xc_map),
#else
# include "sun5-xc-map.h"
#endif

#ifdef KBD
  KBD ("Sun5SW", "Sun Microsystems", "Type 5 (X11R4/R5 + patch; Swedish)", 0,
       &sun5sw_geom, sun5sw_caps, sun5sw_codes, sun5sw_xc_map),
#else
# include "sun5sw-geom.h"
# include "sun5sw-caps.h"
# include "sun5sw-codes.h"
# include "sun5sw-xc-map.h"
#endif

#ifdef XK_kana_NU	/* just in case some losing vendors don't ship it... */
# ifdef KBD
  KBD ("Sun5JA", "Sun Microsystems",
       "Type 5 (X11R4/R5 + patch; Katakana)", 0,
       &sun5jp_geom, sun5jp_caps, sun5jp_codes, sun5jp_xc_map),
# else
#  include "sun5jp-geom.h"
#  include "sun5jp-caps.h"
#  include "sun5jp-codes.h"
#  include "sun5jp-xc-map.h"
# endif
#endif /* XK_kana_NU */

#ifdef KBD
  KBD ("Sun5PCOW", "Sun Microsystems", "Type 5/PC (OpenWindows; US)", 0,
       &sun5pc_geom, sun5pc_caps, sun5pc_codes, sun5pc_ow_map),
#else
# include "sun5pc-caps.h"
# include "sun5pc-codes.h"
# include "sun5pc-ow-map.h"
#endif

#ifdef KBD
  KBD ("Sun5PCDEOW", "Sun Microsystems", "Type 5/PC (OpenWindows; German)", 0,
       &sun5pc_geom, sun5pc_caps, sun5pc_codes, sun5pc_owde_map),
#else
# include "sun5pc-owde-map.h"
#endif

#ifdef KBD
  KBD ("Sun5PCr6", "Sun Microsystems", "Type 5/PC (X11R6; US)", 0,
       &sun5pc_geom, sun5pc_caps, sun5pc_codes, sun5pc_xc6_map),
#else
# include "sun5pc-xc6-map.h"
#endif

#ifdef KBD
  KBD ("Sun5PCr4", "Sun Microsystems", "Type 5/PC (X11R4/R5; US)", 0,
       &sun5pc_geom, sun5pc_caps, sun5pc_codes, sun5pc_xc_map),
#else
# include "sun5pc-xc-map.h"
#endif

#ifdef KBD
  KBD ("Sun5PCr4p", "Sun Microsystems", "Type 5/PC (X11R4/R5 + patch; US)", 0,
       &sun5pc_geom, sun5pc_caps, sun5pc_codes, sun5pc_xc2_map),
#else
# include "sun5pc-xc2-map.h"
#endif

#ifdef KBD
  KBD ("Sun101A", "Sun Microsystems", "101A (X11R4/R5; US)", 0,
       &pc101_geom, pc101_caps, sun101a_codes, sun101a_xc_map),
#else
# include "sun101a-codes.h"
# include "sun101a-xc-map.h"
#endif

# ifdef XK_kana_NU	/* just in case some losing vendors don't ship it... */
# ifdef KBD
  KBD ("XMINT", "Takaoka", "Xmint Terminal (Katakana)",
       "TAKAOKA Electric Manufacturing Co., Ltd.",
       &xmint_geom, xmint_caps, xmint_codes, xmint_map),
# else
#  include "xmint-geom.h"
#  include "xmint-caps.h"
#  include "xmint-codes.h"
#  include "xmint-map.h"
# endif
#endif /* XK_kana_NU */

#ifdef KBD
  KBD ("TEK101", "Tektronix", "XP20 101 key (X11R5; US)",
       "Tektronix, Inc.",
       &tek101_geom, tek101_caps, tek101_codes, tek101_map),
#else
# include "tek101-geom.h"
# include "tek101-caps.h"
# include "tek101-codes.h"
# include "tek101-map.h"
#endif

#ifdef KBD
  KBD ("TEK101-4", "Tektronix", "XP20 101 key (X11R4; US)", 0,
      &tek101_geom, tek101_caps, tek101_codes, tek101_4_map),
#else
# include "tek101-4-map.h"
#endif

#ifdef KBD
  KBD ("TEK101-C", "Tektronix", "XP217C 101 key (US)", 0,
       &pc101_geom, pc101_caps, tek101_c_codes, tek101_c_map),
#else
# include "tek101-c-codes.h"
# include "tek101-c-map.h"
#endif

#ifdef KBD
  KBD ("TEK102", "Tektronix", "X358 102 key (German)", 0,
       &tek102_geom, tek102_de_caps, tek102_codes, tek102_de_map),
#else
# include "tek102-geom.h"
# include "tek102-codes.h"
# include "tek102-de-caps.h"
# include "tek102-de-map.h"
#endif

#ifdef KBD
  KBD ("TEK119", "Tektronix", "XP119 Sun 5/PC (US)", 0,
       &sun5pc_geom, sun5pc_caps, tek119_codes, tek119_map),
#else
# include "tek119-codes.h"
# include "tek119-map.h"
#endif

#ifdef KBD
  KBD ("TEK200US", "Tektronix", "VT200 (Ultrix; US)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_us_map),
#else
# include "tek200-geom.h"
# include "tek200-caps.h"
# include "tek200-codes.h"
# include "tek200u-us-map.h"
#endif

#ifdef KBD
  KBD ("TEK200DA", "Tektronix", "VT200 (Ultrix; Danish)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_da_map),
#else
# include "tek200u-da-map.h"
#endif

#ifdef KBD
  KBD ("TEK200DE", "Tektronix", "VT200 (Ultrix; German)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_de_map),
#else
# include "tek200u-de-map.h"
#endif

#ifdef KBD
  KBD ("TEK200FI", "Tektronix", "VT200 (Ultrix; Finnish)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_fi_map),
#else
# include "tek200u-fi-map.h"
#endif

#ifdef KBD
  KBD ("TEK200FR", "Tektronix", "VT200 (Ultrix; French)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_fr_map),
#else
# include "tek200u-fr-map.h"
#endif

#ifdef KBD
  KBD ("TEK200IT", "Tektronix", "VT200 (Ultrix; Italian)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_it_map),
#else
# include "tek200u-it-map.h"
#endif

#ifdef KBD
  KBD ("TEK200KA", "Tektronix", "VT200 (Ultrix; Katakana)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_ka_map),
#else
# include "tek200u-ka-map.h"
#endif

#ifdef KBD
  KBD ("TEK200NO", "Tektronix", "VT200 (Ultrix; Norwegian)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_no_map),
#else
# include "tek200u-no-map.h"
#endif

#ifdef KBD
  KBD ("TEK200SP", "Tektronix", "VT200 (Ultrix; Spanish)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_sp_map),
#else
# include "tek200u-sp-map.h"
#endif

#ifdef KBD
  KBD ("TEK200SW", "Tektronix", "VT200 (Ultrix; Swedish)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_sw_map),
#else
# include "tek200u-sw-map.h"
#endif

#ifdef KBD
  KBD ("TEK200SWDE", "Tektronix", "VT200 (Ultrix; Swiss-German)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_swde_map),
#else
# include "tek200u-swde-map.h"
#endif

#ifdef KBD
  KBD ("TEK200UK", "Tektronix", "VT200 (Ultrix; United Kingdom)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200u_uk_map),
#else
# include "tek200u-uk-map.h"
#endif

#ifdef KBD
  KBD ("TEK200VMS", "Tektronix", "VT200 (VMS; US)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200v_us_map),
#else
# include "tek200v-us-map.h"
#endif

#ifdef KBD
  KBD ("TEK200ESC", "Tektronix", "VT200 (US-ESC)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200xesc_us_map),
#else
# include "tek200xesc-us-map.h"
#endif

#ifdef KBD
  KBD ("TEK200F11", "Tektronix", "VT200 (US-F11)", 0,
       &tek200_geom, tek200_caps, tek200_codes, tek200xf11_us_map),
#else
# include "tek200xf11-us-map.h"
#endif

#ifdef KBD
  KBD ("TEK401US", "Tektronix", "Tek-LK401 (US)", 0,
       &lk401_geom, lk401_caps, tek401_codes, tek401_map),
#else
# include "tek401-codes.h"
# include "tek401-map.h"
#endif

#ifdef KBD
  KBD ("TEK401SF", "Tektronix", "Tek-LK401 (Swedish TTY)", 0,
       &lk401_geom, lk401sf_caps, tek401_codes, tek401sf_map),
#else
# include "tek401sf-map.h"
#endif

#ifdef KBD
  KBD ("TEK401SFDP", "Tektronix", "Tek-LK401 (Swedish DP)", 0,
       &lk401_geom, lk401sf_caps, tek401_codes, tek401sfdp_map),
#else
# include "tek401sfdp-map.h"
#endif

#ifdef KBD
  KBD ("TEKsun4", "Tektronix", "Tek-Sun Type4 (US)", 0,
       &sun4_geom, sun4_caps, teksun4_codes, teksun4_map),
#else
# include "teksun4-codes.h"
# include "teksun4-map.h"
#endif

#ifdef KBD
  KBD ("TEKXN11", "Tektronix", "XN11 Terminal (Swedish/Finnish)", 0,
       &tekxn10_geom, tekxn10_sf_caps, tekxn10_sf_codes, tekxn10_sf_map),
#else
# include "tekxn10-geom.h"
# include "tekxn10-sf-codes.h"
# include "tekxn10-sf-caps.h"
# include "tekxn10-sf-map.h"
#endif

#ifdef KBD
  KBD ("TM4000M", "Texas Instruments", "TravelMate 4000M (US)", 
       0, &tm4000m_geom, tm4000m_caps, tm4000m_codes, tm4000m_map),
#else
# include "tm4000m-geom.h"
# include "tm4000m-caps.h" 
# include "tm4000m-codes.h"
# include "tm4000m-map.h"
#endif

#ifdef KBD
  KBD ("Explorer", "Texas Instruments", "Explorer (US)",
       "Texas Instruments Explorer",
       &explorer_geom, explorer_caps, explorer_codes, explorer_map),
#else
# include "explorer-geom.h"
# include "explorer-caps.h"
# include "explorer-codes.h"
# include "explorer-map.h"
#endif

#ifdef KBD
  KBD ("Libretto", "Toshiba", "Libretto 100CT (US)", 0,
       &libretto100_geom, libretto100_caps, libretto100_codes, xfree86us_map),
#else
# include "libretto100-geom.h"
# include "libretto100-caps.h"
# include "libretto100-codes.h"
#endif

#ifdef KBD
  KBD ("Tecra", "Toshiba", "Tecra 500CDT (US)", 0,
       &tecra500_geom, tecra500_caps, tecra500_codes, tecra500_map),
#else
# include "tecra500-geom.h"
# include "tecra500-caps.h"
# include "tecra500-codes.h"
# include "tecra500-map.h"
#endif

#ifdef KBD
  KBD ("Portege", "Toshiba", "Portege 34xxCT (US)", 0,
       &portege34xx_geom, portege34xx_caps, portege34xx_codes, tecra500_map),
#else
# include "portege34xx-geom.h"
# include "portege34xx-caps.h"
# include "portege34xx-codes.h"
#endif

