home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 9 / 09.iso / e / e032 / 3.ddi / FILES / UTILITIE.PAK / LANGUAGE.M < prev    next >
Encoding:
Text File  |  1992-07-29  |  15.9 KB  |  417 lines

  1.  
  2. (*:Version: Mathematica 2.0 *)
  3.  
  4. (*:Name: Utilities`Language` *)
  5.  
  6. (*:Title: Tools for the Support of International Characters *)
  7.  
  8. (*:Author: Wolfram Research, Inc. *)
  9.  
  10. (*:History:
  11.     Original Version by C. Tom Wickham-Jones (Wolfram Research),
  12.     May, 1991.
  13. *)
  14.  
  15. (* :Summary:
  16.     This package adds definitions for $Letters and $StringOrder
  17.     which are appropriate for a number of European languages
  18.     which can be represented by 8-bit characters in the the
  19.     ISOLatin1 standard.  These are arranged for a variety
  20.     of different font encodings such as ISOLatin1, Macintosh
  21.     and DOS.
  22.     It also defines the function CharacterTable which displays
  23.     a table of octal codes and their corresponding codes.
  24. *)
  25.  
  26. (*:Requirements: None *)
  27.  
  28. (* :Warning:
  29.     Whatever characters are entered are stored internally as
  30.     entered.  When they are written out they are written out
  31.     as entered unless explicitly changed with a StringConversion..
  32.     Thus problems may arise from writing files with one version
  33.     of Mathematica and reading them into another.
  34.     If $Language is undefined or a language which is unsupported
  35.     then english will be used.  If the font encoding is uncertain
  36.     then ISOLatin1 will be used.
  37. *)
  38.  
  39. (*:Sources *)
  40.  
  41. BeginPackage["Utilities`Language`"];
  42.  
  43. CharacterTable::usage = "CharacterTable[] displays a table of octal codes
  44. and their corresponding representations for characters with the eighth bit
  45. set. CharacterTable[ opts] passes opts to
  46. TableForm." 
  47.  
  48. Begin["`Private`"]
  49.  
  50. (* First CharacterTable *)
  51. CharacterRow[i_] :=
  52.      Prepend[
  53.                 Table[ FromCharacterCode[ 8 i + j], {j,0,7}],
  54.                 BaseForm[i,8]
  55.         ]
  56.  
  57. CharacterTable[ opts___] :=
  58.     TableForm[
  59.                 Prepend[
  60.                         Table[ CharacterRow[i], {i,16,31}],
  61.                         Prepend[ Table[BaseForm[i,8],{i,0,7}], " "]
  62.                 ],
  63.     opts,
  64.         TableAlignments -> {Left, Top}, TableSpacing -> {2,4}]
  65.  
  66.  
  67. Switch[ $Language,
  68.     "French",
  69.         MacLetters =
  70.             {{"a", "A"}, {"\210", "\313"}, {"\211", "\345"},
  71.             {"b", "B"}, {"c", "C"}, {"\215", "\202"},
  72.             {"d", "D"}, {"e", "E"}, {"\216", "\203"},
  73.              {"\217", "\351"}, {"\220", "\346"},
  74.             {"f", "F"}, {"g", "G"}, {"h", "H"},
  75.             {"i", "I"}, {"\224", "\353"},
  76.             {"j", "J"}, {"k", "K"}, {"l", "L"},
  77.             {"m", "M"}, {"n", "N"},
  78.             {"o", "O"}, {"\231", "\357"}, {"p", "P"},
  79.             {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"},
  80.             {"u", "U"}, {"\236", "\363"},
  81.             {"v", "V"}, {"w", "W"}, {"x", "X"},
  82.             {"y", "Y"}, {"z", "Z"}};
  83.         MacOrder =
  84.             {{"a", "A"}, {"\210", "\313"}, {"\211", "\345"},
  85.             {"b", "B"}, {"c", "C"}, {"\215", "\202"},
  86.             {"d", "D"}, {"e", "E"}, {"\216", "\203"},
  87.             {"\217", "\351"}, {"\220", "\346"},
  88.              {"f", "F"}, {"g", "G"}, {"h", "H"},
  89.             {"i", "I"}, {"\224", "\353"}, {"j", "J"},
  90.              {"k", "K"}, {"l", "L"}, {"m", "M"}, {"n", "N"}, 
  91.             {"o", "O"}, {"\231", "\357"},
  92.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  93.             {"s", "S"}, {"t", "T"}, {"u", "U"},
  94.              {"\236", "\363"}, {"v", "V"}, {"w", "W"}, 
  95.             {"x", "X"}, {"y", "Y"}, {"z", "Z"},
  96.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
  97.          ISOLetters =
  98.             {{"a", "A"}, {"\340", "\300"}, {"\342", "\302"}, 
  99.             {"b", "B"}, {"c", "C"}, {"\347", "\307"}, 
  100.             {"d", "D"}, {"e", "E"}, {"\350", "\310"},
  101.             {"\351", "\311"}, {"\352", "\312"}, {"f", "F"},
  102.             {"g", "G"}, {"h", "H"}, {"i", "I"}, {"\356", "\316"}, 
  103.             {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, {"n", "N"}, 
  104.             {"o", "O"}, {"\364", "\324"}, {"p", "P"}, {"q", "Q"},
  105.             {"r", "R"}, {"s", "S"}, {"t", "T"}, {"u", "U"}, {"\373", "\333"}, 
  106.             {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"},
  107.             {"z", "Z"} };
  108.         ISOOrder =
  109.             {{"a", "A"}, {"\340", "\300"}, {"\342", "\302"}, {"b", "B"}, 
  110.             {"c", "C"}, {"\347", "\307"}, {"d", "D"}, {"e", "E"}, 
  111.              {"\351", "\311"}, {"\350", "\310"}, {"\352", "\312"}, 
  112.              {"f", "F"}, {"g", "G"}, {"h", "H"}, {"i", "I"},
  113.              {"\356", "\316"}, {"j", "J"}, {"k", "K"}, {"l", "L"},
  114.              {"m", "M"}, {"n", "N"}, {"o", "O"}, {"\364", "\324"},
  115.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"},
  116.              {"t", "T"}, {"u", "U"}, {"\373", "\333"}, {"v", "V"},
  117.              {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"}, 
  118.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"},
  119.      "German",
  120.          MacLetters = 
  121.              {{"a", "A"}, {"\212", "\200"},
  122.               {"b", "B"}, {"c", "C"}, {"d", "D"},
  123.               {"e", "E"}, {"f", "F"}, {"g", "G"},
  124.              {"h", "H"}, {"i", "I"}, {"j", "J"}, 
  125.              {"k", "K"}, {"l", "L"}, {"m", "M"},
  126.               {"n", "N"}, {"o", "O"}, {"\232", "\205"},
  127.               {"p", "P"}, {"q", "Q"}, {"r", "R"},
  128.               {"s", "S"}, "\247",{"t", "T"},
  129.               {"u", "U"}, {"\237", "\206"},
  130.               {"v", "V"}, {"w", "W"}, {"x", "X"},
  131.               {"y", "Y"}, {"z", "Z"}} ;
  132.         MacOrder =
  133.             {{"a", "A"}, {"\212", "\200"}, {"b", "B"},
  134.             {"c", "C"}, {"d", "D"}, {"e", "E"},
  135.              {"f", "F"}, {"g", "G"}, {"h", "H"}, {"j", "J"},
  136.              {"k", "K"}, {"l", "L"},{"m", "M"},
  137.              {"n", "N"}, {"o", "O"}, {"\232", "\205"}, 
  138.              {"p", "P"}, {"q", "Q"},
  139.              {"r", "R"}, {"s", "S"}, "\247", {"t", "T"}, 
  140.              {"u", "U"}, {"\237", "\206"},
  141.              {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  142.              {"y", "Y"}, {"z", "Z"},
  143.              "0", "1", "2", "3", "4", "5", "6", "7","8", "9"};
  144.          ISOLetters =
  145.              { {"a", "A"}, {"\344", "\304"},
  146.               {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  147.               {"e", "E"}, {"f", "F"}, {"g", "G"},
  148.               {"h", "H"}, {"i", "I"}, {"j", "J"}, 
  149.               {"k", "K"}, {"l", "L"}, {"m", "M"},
  150.               {"n", "N"},{"o", "O"}, {"\366", "\326"},
  151.               {"p", "P"}, {"q", "Q"}, {"r", "R"},
  152.               {"s", "S"}, "\337",{"t", "T"},
  153.               {"u", "U"}, {"\374", "\334"},
  154.               {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  155.               {"y", "Y"}, {"z", "Z"} };
  156.         ISOOrder =
  157.             {{"a", "A"}, {"\344", "\304"}, {"b", "B"}, 
  158.             {"c", "C"}, {"d", "D"}, {"e", "E"},
  159.              {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  160.              {"j", "J"}, {"k", "K"}, {"l", "L"},
  161.              {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  162.              {"\366", "\326"}, {"p", "P"}, {"q", "Q"},
  163.              {"r", "R"}, {"s", "S"}, "\337", 
  164.              {"t", "T"}, {"u", "U"}, {"\374", "\334"},
  165.              {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  166.              {"y", "Y"}, {"z", "Z"},
  167.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"},
  168.  
  169.      "Danish",    
  170.          MacLetters =
  171.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  172.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  173.               {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  174.               {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  175.               {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  176.               {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  177.               {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  178.               {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  179.               {"y", "Y"}, {"z", "Z"}, {"\276", "\256"}, 
  180.               {"\277", "\257"},{"\214", "\201"}};        
  181.         MacOrder =
  182.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  183.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  184.              {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  185.              {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  186.              {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  187.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  188.              {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  189.              {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  190.              {"y", "Y"}, {"z", "Z"}, {"\276", "\256"}, 
  191.              {"\277", "\257"},{"\214", "\201"},
  192.              "0", "1", "2", "3", "4", "5", "6", "7", 
  193.              "8", "9"};
  194.          ISOLetters =
  195.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  196.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  197.               {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  198.               {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  199.               {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  200.               {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  201.               {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  202.               {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  203.               {"y", "Y"}, {"z", "Z"}, {"\346", "\306"}, 
  204.               {"\370", "\330"},{"\345", "\305"}};        
  205.         ISOOrder =
  206.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  207.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  208.              {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  209.              {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  210.              {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  211.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  212.              {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  213.              {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  214.              {"y", "Y"}, {"z", "Z"}, {"\346", "\306"}, 
  215.              {"\370", "\330"},{"\345", "\305"},
  216.              "0", "1", "2", "3", "4", "5", "6", "7", 
  217.              "8", "9"},
  218.      "Norwegian",
  219.              MacLetters =
  220.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  221.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  222.               {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  223.               {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  224.               {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  225.               {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  226.               {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  227.               {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  228.               {"y", "Y"}, {"z", "Z"}, {"\276", "\256"}, 
  229.               {"\277", "\257"},{"\214", "\201"}};        
  230.         MacOrder =
  231.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  232.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  233.              {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  234.              {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  235.              {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  236.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  237.              {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  238.              {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  239.              {"y", "Y"}, {"z", "Z"}, {"\276", "\256"}, 
  240.              {"\277", "\257"},{"\214", "\201"},
  241.              "0", "1", "2", "3", "4", "5", "6", "7","8", "9"};
  242.          ISOLetters =
  243.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  244.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  245.               {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  246.               {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  247.               {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  248.               {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  249.               {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  250.               {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  251.               {"y", "Y"}, {"z", "Z"}, {"\346", "\306"}, 
  252.               {"\370", "\330"},{"\345", "\305"}};        
  253.         ISOOrder =
  254.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, 
  255.             {"d", "D"}, {"e", "E"}, {"f", "F"}, 
  256.              {"g", "G"}, {"h", "H"}, {"i", "I"}, 
  257.              {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  258.              {"m", "M"}, {"n", "N"}, {"o", "O"}, 
  259.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, 
  260.              {"s", "S"}, {"t", "T"}, {"u", "U"}, 
  261.              {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  262.              {"y", "Y"}, {"z", "Z"}, {"\346", "\306"}, 
  263.              {"\370", "\330"},{"\345", "\305"},
  264.              "0", "1", "2", "3", "4", "5", "6", "7","8", "9"},
  265.      "Swedish",
  266.          MacLetters =
  267.             { {"a", "A"}, {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  268.             {"e", "E"}, {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  269.             {"i", "I"}, {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  270.               {"m", "M"}, {"n", "N"}, {"o", "O"}, {"p", "P"}, 
  271.               {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  272.               {"u", "U"}, {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  273.               {"y", "Y"}, {"z", "Z"}, {"\214", "\201"}, 
  274.               {"\212", "\200"},{"\232", "\205"}};
  275.         MacOrder =
  276.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  277.             {"e", "E"}, {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  278.             {"i", "I"}, {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  279.              {"m", "M"}, {"n", "N"}, {"o", "O"}, {"p", "P"}, 
  280.              {"q", "Q"}, {"r", "R"},{"s", "S"}, {"t", "T"}, 
  281.              {"u", "U"}, {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  282.              {"y", "Y"}, {"z", "Z"}, {"\214", "\201"}, 
  283.              {"\212", "\200"},{"\232", "\205"},
  284.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
  285.         ISOLetters =
  286.             { {"a", "A"}, {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  287.             {"e", "E"}, {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  288.             {"i", "I"}, {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  289.               {"m", "M"}, {"n", "N"}, {"o", "O"}, {"p", "P"}, 
  290.               {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  291.               {"u", "U"}, {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  292.               {"y", "Y"}, {"z", "Z"}, {"\345", "\305"}, 
  293.              {"\344", "\304"}, {"\366", "\326"}};
  294.         ISOOrder =
  295.             {{"a", "A"}, {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  296.             {"e", "E"}, {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  297.             {"i", "I"}, {"j", "J"}, {"k", "K"}, {"l", "L"}, 
  298.              {"m", "M"}, {"n", "N"}, {"o", "O"}, {"p", "P"}, 
  299.              {"q", "Q"}, {"r", "R"},{"s", "S"}, {"t", "T"}, 
  300.              {"u", "U"}, {"v", "V"}, {"w", "W"}, {"x", "X"}, 
  301.              {"y", "Y"}, {"z", "Z"}, {"\345", "\305"}, 
  302.              {"\344", "\304"}, {"\366", "\326"},
  303.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"},
  304.      "Spanish",
  305.          MacLetters =
  306.             { {"a", "A"}, {"\207", "\347"}, 
  307.             {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  308.             {"e", "E"}, {"\216", "\203"}, 
  309.             {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  310.             {"i", "I"}, {"\222", "\352"}, 
  311.             {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, 
  312.             {"n", "N"}, {"\226", "\204"},
  313.             {"o", "O"}, {"\227", "\356"},
  314.             {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, 
  315.             {"t", "T"},{"u", "U"}, {"\234", "\362"}, 
  316.             {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"} };
  317.         MacOrder =
  318.             {{"a", "A"}, {"\207", "\347"}, 
  319.              {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  320.              {"e", "E"}, {"\216", "\203"},  
  321.              {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  322.              {"i", "I"}, {"\222", "\352"}, 
  323.              {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, 
  324.              {"n", "N"}, {"\226", "\204"},
  325.              {"o", "O"}, {"\227", "\356"}, 
  326.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  327.              {"u", "U"}, {"\234", "\362"}, 
  328.              {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"}, 
  329.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
  330.          ISOLetters =
  331.             {{"a", "A"}, {"\341", "\301"}, 
  332.             {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  333.             {"e", "E"}, {"\351", "\311"}, 
  334.             {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  335.             {"i", "I"}, {"\355", "\315"}, 
  336.             {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, 
  337.             {"n", "N"}, {"\361", "\321"},
  338.             {"o", "O"}, {"\363", "\323"},
  339.             {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  340.             {"u", "U"}, {"\372", "\332"}, 
  341.             {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"}};
  342.         ISOOrder =
  343.             {{"a", "A"}, {"\341", "\301"}, 
  344.              {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  345.              {"e", "E"}, {"\351", "\311"},  
  346.              {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  347.              {"i", "I"}, {"\355", "\315"}, 
  348.              {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, 
  349.              {"n", "N"}, {"\361", "\321"},
  350.              {"o", "O"}, {"\363", "\323"}, 
  351.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, 
  352.              {"t", "T"}, {"u", "U"}, {"\372", "\332"}, 
  353.              {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"}, 
  354.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"},
  355.     "Italian",
  356.         MacLetters = 
  357.             { {"a", "A"}, {"\210", "\313"}, 
  358.             {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  359.             {"e", "E"}, {"\217", "\351"}, 
  360.             {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  361.             {"i", "I"}, {"\223", "\355"}, 
  362.             {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, {"n", "N"}, 
  363.             {"o", "O"}, {"\230", "\361"},
  364.             {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  365.             {"u", "U"}, {"\235", "\364"}, {"v", "V"}, 
  366.             {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"} };
  367.         MacOrder =
  368.             {{"a", "A"}, {"\210", "\313"}, 
  369.              {"b", "B"}, {"c", "C"}, {"d", "D"}, 
  370.              {"e", "E"}, {"\217", "\351"},  
  371.              {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  372.              {"i", "I"}, {"\223", "\355"}, 
  373.              {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, 
  374.              {"n", "N"},{"o", "O"}, {"\230", "\361"}, 
  375.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  376.              {"u", "U"}, {"\235", "\364"}, 
  377.              {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"}, 
  378.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
  379.          ISOLetters = 
  380.              { {"a", "A"}, {"\340", "\300"}, {"b", "B"}, 
  381.             {"c", "C"}, {"d", "D"}, {"e", "E"}, {"\350", "\310"}, 
  382.             {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  383.             {"i", "I"}, {"\354", "\314"}, {"j", "J"}, 
  384.             {"k", "K"}, {"l", "L"}, {"m", "M"}, {"n", "N"}, 
  385.             {"o", "O"}, {"\362", "\322"},{"p", "P"}, 
  386.             {"q", "Q"}, {"r", "R"}, {"s", "S"}, {"t", "T"}, 
  387.             {"u", "U"}, {"\371", "\331"}, {"v", "V"}, 
  388.             {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"} };
  389.         ISOOrder =
  390.             {{"a", "A"}, {"\340", "\300"}, {"b", "B"}, 
  391.             {"c", "C"}, {"d", "D"}, {"e", "E"}, {"\350", "\310"},  
  392.              {"f", "F"}, {"g", "G"}, {"h", "H"}, 
  393.              {"i", "I"}, {"\354", "\314"}, 
  394.              {"j", "J"}, {"k", "K"}, {"l", "L"}, {"m", "M"}, 
  395.              {"n", "N"}, {"o", "O"}, {"\362", "\322"}, 
  396.              {"p", "P"}, {"q", "Q"}, {"r", "R"}, {"s", "S"}, 
  397.              {"t", "T"},    {"u", "U"}, {"\371", "\331"}, 
  398.              {"v", "V"}, {"w", "W"}, {"x", "X"}, {"y", "Y"}, {"z", "Z"}, 
  399.              "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"},             
  400.      $Language,
  401.         MacLetters = $Letters; MacOrder = $StringOrder;
  402.          ISOLetters = $Letters; ISOOrder = $StringOrder;
  403. ]
  404.  
  405. Switch[ $OperatingSystem, 
  406.     "MacOS",    $Letters = MacLetters; $StringOrder = MacOrder,
  407.     $OperatingSystem, $Letters = ISOLetters; $StringOrder = ISOOrder
  408.     ]
  409.  
  410. Remove[ MacLetters, MacOrder, ISOLetters, ISOOrder]
  411.  
  412. End[]
  413.  
  414. EndPackage[]
  415.  
  416.  
  417.