home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD2.bin / bbs / gnu / ispell-4.0-src.lha / ispell-4.0 / c-ibmpc.c < prev    next >
C/C++ Source or Header  |  1993-04-16  |  8KB  |  547 lines

  1. /* Copyright (C) 1990, 1993 Free Software Foundation, Inc.
  2.  
  3.    This file is part of GNU ISPELL.
  4.  
  5.    This program is free software; you can redistribute it and/or modify
  6.    it under the terms of the GNU General Public License as published by
  7.    the Free Software Foundation; either version 2, or (at your option)
  8.    any later version.
  9.  
  10.    This program is distributed in the hope that it will be useful,
  11.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  12.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13.    GNU General Public License for more details.
  14.  
  15.    You should have received a copy of the GNU General Public License
  16.    along with this program; if not, write to the Free Software
  17.    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
  18.  
  19. #include "charset.h"
  20.  
  21. /* this tables has two entries per character code.  The first
  22.  * one is used if the entry is for an alphabetic character,
  23.  * and gives the lower case character that has the same
  24.  * accent marks.
  25.  *
  26.  * The second code tells whether the character is part of a word.
  27.  * Normally, all alphabetic characters and the apostrophy have
  28.  * a 1.
  29.  */
  30.  
  31. /* charset table for IBM-PC console */
  32. struct charset charset[] =
  33. {
  34.   /* 00 */ 
  35.  {0, 0},
  36.  /* 01 */ 
  37.  {0, 0},
  38.  /* 02 */ 
  39.  {0, 0},
  40.  /* 03 */ 
  41.  {0, 0},
  42.  /* 04 */ 
  43.  {0, 0},
  44.  /* 05 */ 
  45.  {0, 0},
  46.  /* 06 */ 
  47.  {0, 0},
  48.  /* 07 */ 
  49.  {0, 0},
  50.  /* 08 */ 
  51.  {0, 0},
  52.  /* 09 */ 
  53.  {0, 0},
  54.  /* 10 */ 
  55.  {0, 0},
  56.  /* 11 */ 
  57.  {0, 0},
  58.  /* 12 */ 
  59.  {0, 0},
  60.  /* 13 */ 
  61.  {0, 0},
  62.  /* 14 */ 
  63.  {0, 0},
  64.  /* 15 */ 
  65.  {0, 0},
  66.  /* 16 */ 
  67.  {0, 0},
  68.  /* 17 */ 
  69.  {0, 0},
  70.  /* 18 */ 
  71.  {0, 0},
  72.  /* 19 */ 
  73.  {0, 0},
  74.  /* 20 */ 
  75.  {0, 0},
  76.  /* 21 */ 
  77.  {0, 0},
  78.  /* 22 */ 
  79.  {0, 0},
  80.  /* 23 */ 
  81.  {0, 0},
  82.  /* 24 */ 
  83.  {0, 0},
  84.  /* 25 */ 
  85.  {0, 0},
  86.  /* 26 */ 
  87.  {0, 0},
  88.  /* 27 */ 
  89.  {0, 0},
  90.  /* 28 */ 
  91.  {0, 0},
  92.  /* 29 */ 
  93.  {0, 0},
  94.  /* 30 */ 
  95.  {0, 0},
  96.  /* 31 */ 
  97.  {0, 0},
  98.  /* 32 space */ 
  99.  {0, 0},
  100.  /* 33 ! */ 
  101.  {0, 0},
  102.  /* 34 " */ 
  103.  {0, 0},
  104.  /* 35 # */ 
  105.  {0, 0},
  106.  /* 36 $ */ 
  107.  {0, 0},
  108.  /* 37 % */ 
  109.  {0, 0},
  110.  /* 38 & */ 
  111.  {0, 0},
  112.  /* 39 ' */ 
  113.  {'\'', 1},
  114.  /* 40 ( */ 
  115.  {0, 0},
  116.  /* 41 ) */ 
  117.  {0, 0},
  118.  /* 42 * */ 
  119.  {0, 0},
  120.  /* 43 + */ 
  121.  {0, 0},
  122.  /* 44 , */ 
  123.  {0, 0},
  124.  /* 45 - */ 
  125.  {0, 0},
  126.  /* 46 . */ 
  127.  {0, 0},
  128.  /* 47 / */ 
  129.  {0, 0},
  130.  /* 48 0 */ 
  131.  {0, 0},
  132.  /* 49 1 */ 
  133.  {0, 0},
  134.  /* 50 2 */ 
  135.  {0, 0},
  136.  /* 51 3 */ 
  137.  {0, 0},
  138.  /* 52 4 */ 
  139.  {0, 0},
  140.  /* 53 5 */ 
  141.  {0, 0},
  142.  /* 54 6 */ 
  143.  {0, 0},
  144.  /* 55 7 */ 
  145.  {0, 0},
  146.  /* 56 8 */ 
  147.  {0, 0},
  148.  /* 57 9 */ 
  149.  {0, 0},
  150.  /* 58 : */ 
  151.  {0, 0},
  152.  /* 59 ; */ 
  153.  {0, 0},
  154.  /* 60 < */ 
  155.  {0, 0},
  156.  /* 61 = */ 
  157.  {0, 0},
  158.  /* 62 > */ 
  159.  {0, 0},
  160.  /* 63 ? */ 
  161.  {0, 0},
  162.  /* 64 @ */ 
  163.  {0, 0},
  164.  /* 65 A */ 
  165.  {'a', 1},
  166.  /* 66 B */ 
  167.  {'b', 1},
  168.  /* 67 C */ 
  169.  {'c', 1},
  170.  /* 68 D */ 
  171.  {'d', 1},
  172.  /* 69 E */ 
  173.  {'e', 1},
  174.  /* 70 F */ 
  175.  {'f', 1},
  176.  /* 71 G */ 
  177.  {'g', 1},
  178.  /* 72 H */ 
  179.  {'h', 1},
  180.  /* 73 I */ 
  181.  {'i', 1},
  182.  /* 74 J */ 
  183.  {'j', 1},
  184.  /* 75 K */ 
  185.  {'k', 1},
  186.  /* 76 L */ 
  187.  {'l', 1},
  188.  /* 77 M */ 
  189.  {'m', 1},
  190.  /* 78 N */ 
  191.  {'n', 1},
  192.  /* 79 O */ 
  193.  {'o', 1},
  194.  /* 80 P */ 
  195.  {'p', 1},
  196.  /* 81 Q */ 
  197.  {'q', 1},
  198.  /* 82 R */ 
  199.  {'r', 1},
  200.  /* 83 S */ 
  201.  {'s', 1},
  202.  /* 84 T */ 
  203.  {'t', 1},
  204.  /* 85 U */ 
  205.  {'u', 1},
  206.  /* 86 V */ 
  207.  {'v', 1},
  208.  /* 87 W */ 
  209.  {'w', 1},
  210.  /* 88 X */ 
  211.  {'x', 1},
  212.  /* 89 Y */ 
  213.  {'y', 1},
  214.  /* 90 Z */ 
  215.  {'z', 1},
  216.  /* 91 [ */ 
  217.  {0, 0},
  218.  /* 92 \ */ 
  219.  {0, 0},
  220.  /* 93 ] */ 
  221.  {0, 0},
  222.  /* 94 ^ */ 
  223.  {0, 0},
  224.  /* 95 _ */ 
  225.  {0, 0},
  226.  /* 96 ` */ 
  227.  {0, 0},
  228.  /* 97 a */ 
  229.  {'a', 1},
  230.  /* 98 b */ 
  231.  {'b', 1},
  232.  /* 99 c */ 
  233.  {'c', 1},
  234.  /* 100 d */ 
  235.  {'d', 1},
  236.  /* 101 e */ 
  237.  {'e', 1},
  238.  /* 102 f */ 
  239.  {'f', 1},
  240.  /* 103 g */ 
  241.  {'g', 1},
  242.  /* 104 h */ 
  243.  {'h', 1},
  244.  /* 105 i */ 
  245.  {'i', 1},
  246.  /* 106 j */ 
  247.  {'j', 1},
  248.  /* 107 k */ 
  249.  {'k', 1},
  250.  /* 108 l */ 
  251.  {'l', 1},
  252.  /* 109 m */ 
  253.  {'m', 1},
  254.  /* 110 n */ 
  255.  {'n', 1},
  256.  /* 111 o */ 
  257.  {'o', 1},
  258.  /* 112 p */ 
  259.  {'p', 1},
  260.  /* 113 q */ 
  261.  {'q', 1},
  262.  /* 114 r */ 
  263.  {'r', 1},
  264.  /* 115 s */ 
  265.  {'s', 1},
  266.  /* 116 t */ 
  267.  {'t', 1},
  268.  /* 117 u */ 
  269.  {'u', 1},
  270.  /* 118 v */ 
  271.  {'v', 1},
  272.  /* 119 w */ 
  273.  {'w', 1},
  274.  /* 120 x */ 
  275.  {'x', 1},
  276.  /* 121 y */ 
  277.  {'y', 1},
  278.  /* 122 z */ 
  279.  {'z', 1},
  280.  /* 123 { */ 
  281.  {0, 0},
  282.  /* 124 | */ 
  283.  {0, 0},
  284.  /* 125 } */ 
  285.  {0, 0},
  286.  /* 126 ~ */ 
  287.  {0, 0},
  288.  /* 127 DEL */ 
  289.  {0, 0},
  290.  /* 128 */ 
  291.  {0207, 1},
  292.  /* 129 */ 
  293.  {0201, 1},            /* u umlaut */
  294.  /* 130 */ 
  295.  {0202, 1},            /* e acute */
  296.  /* 131 */ 
  297.  {0203, 1},            /* a hat */
  298.  /* 132 */ 
  299.  {0204, 1},            /* a umlaut */
  300.  /* 133 */ 
  301.  {0205, 1},            /* a grave */
  302.  /* 134 */ 
  303.  {0206, 1},            /* a circle */
  304.  /* 135 */ 
  305.  {0207, 1},            /* c cidella */
  306.  /* 136 */ 
  307.  {0210, 1},            /* e hat */
  308.  /* 137 */ 
  309.  {0211, 1},            /* e umlaut */
  310.  /* 138 */ 
  311.  {0212, 1},            /* e grave */
  312.  /* 139 */ 
  313.  {0213, 1},            /* i umlaut */
  314.  /* 140 */ 
  315.  {0214, 1},            /* i hat */
  316.  /* 141 */ 
  317.  {0215, 1},            /* i grave */
  318.  /* 142 */ 
  319.  {0204, 1},            /* A umulat */
  320.  /* 143 */ 
  321.  {0206, 1},            /* A circle */
  322.  /* 144 */ 
  323.  {0202, 1},            /* E acute */
  324.  /* 145 */ 
  325.  {0221, 1},            /* ae */
  326.  /* 146 */ 
  327.  {0221, 1},            /* AE */
  328.  /* 147 */ 
  329.  {0223, 1},            /* o hat */
  330.  /* 148 */ 
  331.  {0224, 1},            /* o umlaut */
  332.  /* 149 */ 
  333.  {0225, 1},            /* o grave */
  334.  /* 150 */ 
  335.  {0226, 1},            /* u circumflex */
  336.  /* 151 */ 
  337.  {0227, 1},            /* u grave */
  338.  /* 152 */ 
  339.  {0230, 1},            /* y umlaut */
  340.  /* 153 */ 
  341.  {0224, 1},            /* O umulaut */
  342.  /* 154 */ 
  343.  {0201, 1},            /* U umulaut */
  344.  /* 155 */ 
  345.  {0, 0},            /* cents */
  346.  /* 156 */ 
  347.  {0, 0},            /* pounds sterling */
  348.  /* 157 */ 
  349.  {0, 0},            /* yen */
  350.  /* 158 */ 
  351.  {0, 0},            /* Pt */
  352.  /* 159 */ 
  353.  {0, 0},            /* f (francs?) */
  354.  /* 160 */ 
  355.  {0240, 1},            /* a acute */
  356.  /* 161 */ 
  357.  {0241, 1},            /* i acute */
  358.  /* 162 */ 
  359.  {0242, 1},            /* o acute */
  360.  /* 163 */ 
  361.  {0243, 1},            /* u acute */
  362.  /* 164 */ 
  363.  {0244, 1},            /* n tilde */
  364.  /* 165 */ 
  365.  {0244, 1},            /* N tilde */
  366.  /* 166 */ 
  367.  {0, 0},
  368.  /* 167 */ 
  369.  {0, 0},
  370.  /* 168 */ 
  371.  {0, 0},            /* upside down ? */
  372.  /* 169 */ 
  373.  {0, 0},
  374.  /* 170 */ 
  375.  {0, 0},
  376.  /* 171 */ 
  377.  {0, 0},
  378.  /* 172 */ 
  379.  {0, 0},
  380.  /* 173 */ 
  381.  {0, 0},            /* upside down ! */
  382.  /* 174 */ 
  383.  {0, 0},            /* << */
  384.  /* 175 */ 
  385.  {0, 0},            /* >> */
  386.  /* 176 */ 
  387.  {0, 0},
  388.  /* 177 */ 
  389.  {0, 0},
  390.  /* 178 */ 
  391.  {0, 0},
  392.  /* 179 */ 
  393.  {0, 0},
  394.  /* 180 */ 
  395.  {0, 0},
  396.  /* 181 */ 
  397.  {0, 0},
  398.  /* 182 */ 
  399.  {0, 0},
  400.  /* 183 */ 
  401.  {0, 0},
  402.  /* 184 */ 
  403.  {0, 0},
  404.  /* 185 */ 
  405.  {0, 0},
  406.  /* 186 */ 
  407.  {0, 0},
  408.  /* 187 */ 
  409.  {0, 0},
  410.  /* 188 */ 
  411.  {0, 0},
  412.  /* 189 */ 
  413.  {0, 0},
  414.  /* 190 */ 
  415.  {0, 0},
  416.  /* 191 */ 
  417.  {0, 0},
  418.  /* 192 */ 
  419.  {0, 0},
  420.  /* 193 */ 
  421.  {0, 0},
  422.  /* 194 */ 
  423.  {0, 0},
  424.  /* 195 */ 
  425.  {0, 0},
  426.  /* 196 */ 
  427.  {0, 0},
  428.  /* 197 */ 
  429.  {0, 0},
  430.  /* 198 */ 
  431.  {0, 0},
  432.  /* 199 */ 
  433.  {0, 0},
  434.  /* 200 */ 
  435.  {0, 0},
  436.  /* 201 */ 
  437.  {0, 0},
  438.  /* 202 */ 
  439.  {0, 0},
  440.  /* 203 */ 
  441.  {0, 0},
  442.  /* 204 */ 
  443.  {0, 0},
  444.  /* 205 */ 
  445.  {0, 0},
  446.  /* 206 */ 
  447.  {0, 0},
  448.  /* 207 */ 
  449.  {0, 0},
  450.  /* 208 */ 
  451.  {0, 0},
  452.  /* 209 */ 
  453.  {0, 0},
  454.  /* 210 */ 
  455.  {0, 0},
  456.  /* 211 */ 
  457.  {0, 0},
  458.  /* 212 */ 
  459.  {0, 0},
  460.  /* 213 */ 
  461.  {0, 0},
  462.  /* 214 */ 
  463.  {0, 0},
  464.  /* 215 */ 
  465.  {0, 0},
  466.  /* 216 */ 
  467.  {0, 0},
  468.  /* 217 */ 
  469.  {0, 0},
  470.  /* 218 */ 
  471.  {0, 0},
  472.  /* 219 */ 
  473.  {0, 0},
  474.  /* 220 */ 
  475.  {0, 0},
  476.  /* 221 */ 
  477.  {0, 0},
  478.  /* 222 */ 
  479.  {0, 0},
  480.  /* 223 */ 
  481.  {0, 0},
  482.  /* 224 */ 
  483.  {0, 0},            /* alpha */
  484.  /* 225 */ 
  485.  {0, 0},            /* beta */
  486.  /* 226 */ 
  487.  {0, 0},            /* gamma */
  488.  /* 227 */ 
  489.  {0, 0},            /* pi */
  490.  /* 228 */ 
  491.  {0, 0},            /* capital sigma */
  492.  /* 229 */ 
  493.  {0, 0},            /* little sigma */
  494.  /* 230 */ 
  495.  {0, 0},            /* mu */
  496.  /* 231 */ 
  497.  {0, 0},
  498.  /* 232 */ 
  499.  {0, 0},
  500.  /* 233 */ 
  501.  {0, 0},            /* theta */
  502.  /* 234 */ 
  503.  {0, 0},            /* omega */
  504.  /* 235 */ 
  505.  {0, 0},            /* delta */
  506.  /* 236 */ 
  507.  {0, 0},
  508.  /* 237 */ 
  509.  {0, 0},
  510.  /* 238 */ 
  511.  {0, 0},            /* epsilon */
  512.  /* 239 */ 
  513.  {0, 0},
  514.  /* 240 */ 
  515.  {0, 0},
  516.  /* 241 */ 
  517.  {0, 0},
  518.  /* 242 */ 
  519.  {0, 0},
  520.  /* 243 */ 
  521.  {0, 0},
  522.  /* 244 */ 
  523.  {0, 0},
  524.  /* 245 */ 
  525.  {0, 0},
  526.  /* 246 */ 
  527.  {0, 0},
  528.  /* 247 */ 
  529.  {0, 0},
  530.  /* 248 */ 
  531.  {0, 0},
  532.  /* 249 */ 
  533.  {0, 0},
  534.  /* 250 */ 
  535.  {0, 0},
  536.  /* 251 */ 
  537.  {0, 0},
  538.  /* 252 */ 
  539.  {0, 0},
  540.  /* 253 */ 
  541.  {0, 0},
  542.  /* 254 */ 
  543.  {0, 0},
  544.  /* 255 */ 
  545.  {0, 0},
  546. };
  547.