"Fossies" - the Fresh Open Source Software Archive

Member "latex2html-2021.2/versions/cp1251.pl" (1 Jul 2021, 18241 Bytes) of package /linux/www/latex2html-2021.2.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Perl source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 ### File: cp1251.pl
    2 ### Version 0.1,  October 28, 2005
    3 ### Written by Sergej Znamenskij <znamensk@rustex.botik.ru>
    4 ###
    5 ### CP1251 encoding information
    6 ###
    7 ### based on cp1252.pl
    8 
    9 ## Copyright (C) 1999 by Ross Moore
   10 ## This program is free software; you can redistribute it and/or modify
   11 ## it under the terms of the GNU General Public License as published by
   12 ## the Free Software Foundation; either version 2 of the License, or
   13 ## (at your option) any later version.
   14 
   15 ## This program is distributed in the hope that it will be useful,
   16 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
   17 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   18 ## GNU General Public License for more details.
   19 ## You should have received a copy of the GNU General Public License
   20 ## along with this program; if not, write to the Free Software
   21 ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
   22 #
   23 #<!-- (C) International Organization for Standardization 1986
   24 #     Permission to copy in any form is granted for use with
   25 #     conforming SGML systems and applications as defined in
   26 #     ISO 8879, provided this notice is included in all copies.
   27 #     This has been extended for use with HTML to cover the full
   28 #     set of codes in the range 160-255 decimal.
   29 #-->
   30 #<!-- Character entity set. Typical invocation:
   31 #     <!ENTITY % ISOlat1 PUBLIC
   32 #       "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
   33 #     %ISOlat1;
   34 #-->
   35 
   36 $CHARSET = "windows-1251";
   37 $INPUTENC='cp1251';  # empty implies 'latin1'
   38 $russian_encoding=$INPUTENC;
   39 
   40 #Character ranges for lower --> upper-case conversion
   41 
   42 $sclower = "\\340-\\377";
   43 $scupper = "\\300-\\337";
   44 
   45 
   46 %low_entities = ( '224', '192'
   47                  ,'225', '193'
   48                  ,'226', '194'
   49                  ,'227', '195'
   50                  ,'228', '196'
   51                  ,'229', '197'
   52                  ,'230', '198'
   53                  ,'231', '199'
   54                  ,'232', '200'
   55                  ,'233', '201'
   56                  ,'234', '202'
   57                  ,'235', '203'
   58                  ,'236', '204'
   59                  ,'237', '205'
   60                  ,'238', '206'
   61                  ,'239', '207'
   62                  ,'240', '208'
   63                  ,'241', '209'
   64                  ,'242', '210'
   65                  ,'243', '211'
   66                  ,'244', '212'
   67                  ,'245', '213'
   68                  ,'246', '214'
   69                  ,'247', '215'
   70                  ,'248', '216'
   71                  ,'249', '217'
   72                  ,'250', '218'
   73                  ,'251', '219'
   74                  ,'252', '220'
   75                  ,'253', '221'
   76                  ,'254', '222'
   77                  ,'255', '223'
   78                  ,'158', '142'
   79                  ,'190', '189'
   80                  ,'191', '175'
   81                  ,'179', '178'
   82                  ,'188', '163'
   83                  ,'186', '170'
   84                  ,'184', '168'
   85                  ,'180', '165'
   86                  ,'162', '161'
   87                  ,'156', '140'
   88                  ,'159', '143'
   89                  ,'144', '128'
   90                  ,'154', '138'
   91                  ,'131', '129'
   92 );
   93 
   94 sub do_cmd_copyright {join('', '', $_[0]);}
   95 sub do_cmd_cyra {join('', '', $_[0]);}
   96 sub do_cmd_CYRA {join('', '', $_[0]);}
   97 sub do_cmd_cyrb {join('', '', $_[0]);}
   98 sub do_cmd_CYRB {join('', '', $_[0]);}
   99 sub do_cmd_cyrch {join('', '', $_[0]);}
  100 sub do_cmd_CYRCH {join('', '', $_[0]);}
  101 sub do_cmd_cyrc {join('', '', $_[0]);}
  102 sub do_cmd_CYRC {join('', '', $_[0]);}
  103 sub do_cmd_cyrdje {join('', '', $_[0]);}
  104 sub do_cmd_CYRDJE {join('', '', $_[0]);}
  105 sub do_cmd_cyrd {join('', '', $_[0]);}
  106 sub do_cmd_CYRD {join('', '', $_[0]);}
  107 sub do_cmd_cyrdze {join('', '', $_[0]);}
  108 sub do_cmd_CYRDZE {join('', '', $_[0]);}
  109 sub do_cmd_cyrdzhe {join('', '', $_[0]);}
  110 sub do_cmd_CYRDZHE {join('', '', $_[0]);}
  111 sub do_cmd_cyre {join('', '', $_[0]);}
  112 sub do_cmd_CYRE {join('', '', $_[0]);}
  113 sub do_cmd_cyrerev {join('', '', $_[0]);}
  114 sub do_cmd_CYREREV {join('', '', $_[0]);}
  115 sub do_cmd_cyrery {join('', '', $_[0]);}
  116 sub do_cmd_CYRERY {join('', '', $_[0]);}
  117 sub do_cmd_cyrf {join('', '', $_[0]);}
  118 sub do_cmd_CYRF {join('', '', $_[0]);}
  119 sub do_cmd_cyrg {join('', '', $_[0]);}
  120 sub do_cmd_CYRG {join('', '', $_[0]);}
  121 sub do_cmd_cyrgup {join('', '', $_[0]);}
  122 sub do_cmd_CYRGUP {join('', '', $_[0]);}
  123 sub do_cmd_cyrh {join('', '', $_[0]);}
  124 sub do_cmd_CYRH {join('', '', $_[0]);}
  125 sub do_cmd_cyrhrdsn {join('', '', $_[0]);}
  126 sub do_cmd_CYRHRDSN {join('', '', $_[0]);}
  127 sub do_cmd_cyrie {join('', '', $_[0]);}
  128 sub do_cmd_CYRIE {join('', '', $_[0]);}
  129 sub do_cmd_CYRII {join('', '', $_[0]);}
  130 sub do_cmd_cyrii {join('', '', $_[0]);}
  131 sub do_cmd_cyri {join('', '', $_[0]);}
  132 sub do_cmd_CYRI {join('', '', $_[0]);}
  133 sub do_cmd_cyrishrt {join('', '', $_[0]);}
  134 sub do_cmd_CYRISHRT {join('', '', $_[0]);}
  135 sub do_cmd_cyrje {join('', '', $_[0]);}
  136 sub do_cmd_CYRJE {join('', '', $_[0]);}
  137 sub do_cmd_cyrk {join('', '', $_[0]);}
  138 sub do_cmd_CYRK {join('', '', $_[0]);}
  139 sub do_cmd_CYRLJE {join('', '', $_[0]);}
  140 sub do_cmd_cyrlje {join('', '', $_[0]);}
  141 sub do_cmd_cyrl {join('', '', $_[0]);}
  142 sub do_cmd_CYRL {join('', '', $_[0]);}
  143 sub do_cmd_cyrm {join('', '', $_[0]);}
  144 sub do_cmd_CYRM {join('', '', $_[0]);}
  145 sub do_cmd_cyrnje {join('', '', $_[0]);}
  146 sub do_cmd_CYRNJE {join('', '', $_[0]);}
  147 sub do_cmd_cyrn {join('', '', $_[0]);}
  148 sub do_cmd_CYRN {join('', '', $_[0]);}
  149 sub do_cmd_cyro {join('', '', $_[0]);}
  150 sub do_cmd_CYRO {join('', '', $_[0]);}
  151 sub do_cmd_cyrp {join('', '', $_[0]);}
  152 sub do_cmd_CYRP {join('', '', $_[0]);}
  153 sub do_cmd_cyrr {join('', '', $_[0]);}
  154 sub do_cmd_CYRR {join('', '', $_[0]);}
  155 sub do_cmd_cyrsftsn {join('', '', $_[0]);}
  156 sub do_cmd_CYRSFTSN {join('', '', $_[0]);}
  157 sub do_cmd_cyrshch {join('', '', $_[0]);}
  158 sub do_cmd_CYRSHCH {join('', '', $_[0]);}
  159 sub do_cmd_cyrsh {join('', '', $_[0]);}
  160 sub do_cmd_CYRSH {join('', '', $_[0]);}
  161 sub do_cmd_cyrs {join('', '', $_[0]);}
  162 sub do_cmd_CYRS {join('', '', $_[0]);}
  163 sub do_cmd_cyrt {join('', '', $_[0]);}
  164 sub do_cmd_CYRT {join('', '', $_[0]);}
  165 sub do_cmd_cyrtshe {join('', '', $_[0]);}
  166 sub do_cmd_CYRTSHE {join('', '', $_[0]);}
  167 sub do_cmd_cyru {join('', '', $_[0]);}
  168 sub do_cmd_CYRU {join('', '', $_[0]);}
  169 sub do_cmd_cyrushrt {join('', '', $_[0]);}
  170 sub do_cmd_CYRUSHRT {join('', '', $_[0]);}
  171 sub do_cmd_cyrv {join('', '', $_[0]);}
  172 sub do_cmd_CYRV {join('', '', $_[0]);}
  173 sub do_cmd_cyrya {join('', '', $_[0]);}
  174 sub do_cmd_CYRYA {join('', '', $_[0]);}
  175 sub do_cmd_cyryi {join('', '', $_[0]);}
  176 sub do_cmd_CYRYI {join('', '', $_[0]);}
  177 sub do_cmd_cyryo {join('', '', $_[0]);}
  178 sub do_cmd_CYRYO {join('', '', $_[0]);}
  179 sub do_cmd_cyryu {join('', '', $_[0]);}
  180 sub do_cmd_CYRYU {join('', '', $_[0]);}
  181 sub do_cmd_cyrzh {join('', '', $_[0]);}
  182 sub do_cmd_CYRZH {join('', '', $_[0]);}
  183 sub do_cmd_cyrz {join('', '', $_[0]);}
  184 sub do_cmd_CYRZ {join('', '', $_[0]);}
  185 #sub do_cmd_dots {join('', '', $_[0]);}
  186 #sub do_cmd_dots { join('', &iso_map("hellip", ""), $_[0]);}
  187 sub do_cmd_dots { join('', '&#133;', $_[0]);}
  188 #sub do_cmd_guillemotleft {join('', '', $_[0]);}
  189 sub do_cmd_guillemotleft { join('', &iso_map("laquo", ""), $_[0]);}
  190 #sub do_cmd_guillemotright {join('', '', $_[0]);}
  191 sub do_cmd_guillemotright { join('', &iso_map("raquo", ""), $_[0]);}
  192 sub do_cmd_guilsinglleft {join('', '', $_[0]);}
  193 #sub do_cmd_guilsinglleft { join('', &iso_map("lsaquo", ""), $_[0]);}
  194 sub do_cmd_guilsinglright {join('', '', $_[0]);}
  195 #sub do_cmd_guilsinglright { join('', &iso_map("rsaquo", ""), $_[0]);}
  196 #sub do_cmd_lnot {join('', '', $_[0]);}
  197 sub do_cmd_lnot { join('', &iso_map("not", ""), $_[0]);}
  198 sub do_cmd_mathdegree { join('', &iso_map("deg", ""), $_[0]);}
  199 sub do_cmd_mathordfeminine { join('', &iso_map("ordf", ""), $_[0]);}
  200 sub do_cmd_mathordmasculine { join('', &iso_map("ordm", ""), $_[0]);}
  201 sub do_cmd_micron { join('', &iso_map("micro", ""), $_[0]);}
  202 sub do_cmd_minus {join('', '', $_[0]);}
  203 #sub do_cmd_minus { join('', &iso_map("shy", ""), $_[0]);}
  204 sub do_cmd_mu {join('', '', $_[0]);}
  205 sub do_cmd_nobreakspace {join('', '', $_[0]);}
  206 #sub do_cmd_P {join('', '', $_[0]);}
  207 sub do_cmd_P { join('', &iso_map("para", ""), $_[0]);}
  208 #sub do_cmd_pm {join('', '', $_[0]);}
  209 sub do_cmd_pm { join('', &iso_map("plusmn", ""), $_[0]);}
  210 sub do_cmd_pounds { join('', &iso_map("pound", ""), $_[0]);}
  211 sub do_cmd_quotedblbase {join('', '', $_[0]);}
  212 #sub do_cmd_quotedblbase { join('', &iso_map("dbquo", ""), $_[0]);}
  213 sub do_cmd_quotesinglbase {join('', '', $_[0]);}
  214 #sub do_cmd_quotesinglbase { join('', &iso_map("sbquo", ""), $_[0]);}
  215 #sub do_cmd_S {join('', '', $_[0]);}
  216 sub do_cmd_S { join('', &iso_map("sect", ""), $_[0]);}
  217 sub do_cmd_ss { join('', &iso_map("sz", "lig"), $_[0]);}
  218 #sub do_cmd_textbrokenbar {join('', '', $_[0]);}
  219 sub do_cmd_textbrokenbar { join('', &iso_map("brvbar", ""), $_[0]);}
  220 sub do_cmd_textbullet {join('', '', $_[0]);}
  221 #sub do_cmd_textbullet { join('', &iso_map("bullet", ""), $_[0]);}                               # !!!
  222 sub do_cmd_textcent { join('', &iso_map("cent", ""), $_[0]);}
  223 #sub do_cmd_textcurrency {join('', '', $_[0]);}
  224 sub do_cmd_textcurrency { join('', &iso_map("curren", ""), $_[0]);}
  225 #sub do_cmd_textdegree {join('', '', $_[0]);}
  226 sub do_cmd_textdegree { join('', &iso_map("deg", ""), $_[0]);}
  227 sub do_cmd_textemdash {join('', '', $_[0]);}
  228 #sub do_cmd_textemdash { join('', &iso_map("mdash", ""), $_[0]);}
  229 sub do_cmd_textendash {join('', '', $_[0]);}
  230 #sub do_cmd_textendash { join('', &iso_map("ndash", ""), $_[0]);}
  231 #sub do_cmd_texteuro {join('', '', $_[0]);}
  232 sub do_cmd_texteuro { join('', &iso_map("euro", ""), $_[0]);}
  233 sub do_cmd_textflorin { join('', &iso_map("florin", ""), $_[0]);}
  234 sub do_cmd_textnumero {join('', '', $_[0]);}
  235 #sub do_cmd_textperiodcentered {join('', '', $_[0]);}
  236 sub do_cmd_textperiodcentered { join('', &iso_map("middot", ""), $_[0]);}
  237 sub do_cmd_textperthousand {join('', '', $_[0]);}
  238 #sub do_cmd_textperthousand { join('', &iso_map("permil", ""), $_[0]);}
  239 sub do_cmd_textquotedblleft {join('', '', $_[0]);}
  240 #sub do_cmd_textquotedblleft { join('', &iso_map("ldquo", ""), $_[0]);}                               # !!!
  241 sub do_cmd_textquotedblright {join('', '', $_[0]);}
  242 #sub do_cmd_textquotedblright { join('', &iso_map("rdquo", ""), $_[0]);}                               # !!!
  243 sub do_cmd_textquoteleft {join('', '', $_[0]);}
  244 #sub do_cmd_textquoteleft { join('', &iso_map("lsquo", ""), $_[0]);}                               # !!!
  245 sub do_cmd_textquoteright {join('', '', $_[0]);}
  246 #sub do_cmd_textquoteright { join('', &iso_map("rsquo", ""), $_[0]);}                               # !!!
  247 #sub do_cmd_textregistered {join('', '', $_[0]);}
  248 sub do_cmd_textregistered { join('', &iso_map("reg", ""), $_[0]);}
  249 sub do_cmd_texttrademark {join('', '', $_[0]);}
  250 #sub do_cmd_texttrademark { join('', &iso_map("trade", ""), $_[0]);}                               # !!!
  251 sub do_cmd_times { join('', &iso_map("times", ""), $_[0]);}
  252 
  253 %windows_1251_character_map
  254      = (
  255 #    '\\CYRDJE' , '&#128', 
  256 #    '\\@tabacckludge\'\CYRG' , '&#129', 
  257 #    '\\quotesinglbase' , '&#130', 
  258 #    '\\@tabacckludge\'\cyrg' , '&#131', 
  259 #    '\\quotedblbase' , '&#132', 
  260 #    '\\dots' , '&#133', 
  261 #    '\\dag' , '&#134', 
  262 #    '\\ddag' , '&#135', 
  263 #    '\\texteuro' , '&#136', 
  264 #    '\\textperthousand' , '&#137', 
  265 #    '\\CYRLJE' , '&#138', 
  266 #    '\\guilsinglleft' , '&#139', 
  267 #    '\\CYRNJE' , '&#140', 
  268 #    '\\@tabacckludge\'\CYRK' , '&#141', 
  269 #    '\\CYRTSHE' , '&#142', 
  270 #    '\\CYRDZHE' , '&#143', 
  271 #    '\\cyrdje' , '&#144', 
  272 #    '\\textquoteleft' , '&#145', 
  273 #    '\\textquoteright' , '&#146', 
  274 #    '\\textquotedblleft' , '&#147', 
  275 #    '\\textquotedblright' , '&#148', 
  276 #    '\\textbullet' , '&#149', 
  277 #    '\\textendash' , '&#150', 
  278 #    '\\textemdash' , '&#151', 
  279 #    '\\texttrademark' , '&#153', 
  280 #    '\\cyrlje' , '&#154', 
  281 #    '\\guilsinglright' , '&#155', 
  282 #    '\\cyrnje' , '&#156', 
  283 #    '\\@tabacckludge\'\cyrk' , '&#157', 
  284 #    '\\cyrtshe' , '&#158', 
  285 #    '\\cyrdzhe' , '&#159', 
  286 #    '\\nobreakspace' , '&#160', 
  287 #    '\\CYRUSHRT' , '&#161', 
  288 #    '\\cyrushrt' , '&#162', 
  289 #    '\\CYRJE' , '&#163', 
  290 #    '\\textcurrency' , '&#164', 
  291 #    '\\CYRGUP' , '&#165', 
  292 #    '\\textbrokenbar' , '&#166', 
  293 #    '\\S' , '&#167', 
  294 #    '\\CYRYO' , '&#168', 
  295 #    '\\copyright' , '&#169', 
  296 #    '\\CYRIE' , '&#170', 
  297 #    '\\guillemotleft' , '&#171', 
  298 #    '\\lnot' , '&#172', 
  299 #    '\\-' , '&#173', 
  300 #    '\\textregistered' , '&#174', 
  301 #    '\\CYRYI' , '&#175', 
  302 #    'textdegree' , '&#176', 
  303 #    '\\pm' , '&#177', 
  304 #    '\\CYRII' , '&#178', 
  305 #    '\\cyrii' , '&#179', 
  306 #    '\\cyrgup' , '&#180', 
  307 #    '\\mu' , '&#181', 
  308 #    '\\P' , '&#182', 
  309 #    '\\textperiodcentered' , '&#183', 
  310 #    '\\cyryo' , '&#184', 
  311 #    '\\textnumero' , '&#185', 
  312 #    '\\cyrie' , '&#186', 
  313 #    '\\guillemotright' , '&#187', 
  314 #    '\\cyrje' , '&#188', 
  315 #    '\\CYRDZE' , '&#189', 
  316 #    '\\cyrdze' , '&#190', 
  317 #    '\\cyryi' , '&#191', 
  318        'amp', '&amp;',  # ampersand
  319        'gt', '&#62;',   # greater than
  320        'lt', '&lt;',    # less than
  321        'quot', '&quot;',        # double quote
  322 
  323 # These have HTML mnemonic names for HTML 4.0 ...
  324        'euro',  '&#136;', 
  325        'sbquo', '&#130;', 
  326        'florin', '&#131;', 
  327        'dbquo', '&#132;', 
  328        'hellip', '&#133;', 
  329        'dagger', '&#134;', 
  330        'Dagger', '&#135;', 
  331        'caret', '&#136;',   # caret accent
  332        'tilde', '&#152;',   # tilde accent
  333        'permil', '&#137;',   # 
  334        'lsaquo', '&#139;',   # 
  335        'rsaquo', '&#155;',   # 
  336        'lsquo', '&#145;', 
  337        'rsquo', '&#146;', 
  338        'ldquo', '&#147;', 
  339        'rdquo', '&#148;', 
  340        'bull', '&#149;', 
  341        'ndash', '&#150;', 
  342        'mdash', '&#151;', 
  343        'trade', '&#152;',   # trademark symbol
  344        'nbsp', '&#160;',       # non-breaking space
  345        'curren', '&#164;',     # currency sign
  346        'brvbar', '&#166;',  
  347        'sect', '&#167;',       # section mark
  348        'copy', '&#169;',       # copyright mark
  349        'laquo', '&#171;', 
  350        'raquo', '&#187;', 
  351        'not', '&#172;',
  352        'shy', '&#173;',
  353        'reg', '&#174;',
  354        'deg', '&#176;',
  355        'plusmn', '&#177;',
  356        'micro', '&#181;',
  357        'para', '&#182;',   # paragraph mark
  358        'middot', '&#183;',
  359 
  360 # These are character types without arguments ...
  361        'grave' , "`",
  362        'circ', '^',
  363        'dot', '.',
  364        'cedil', "&#184;"
  365     );
  366 
  367 %cp1251_character_map_inv =
  368     (
  369      '^'      , '\\^{}',
  370      '&#62;'  , '\\ensuremath{>}',
  371      '&lt;'   , '\\ensuremath{<}',
  372      '&amp;'  , '\\&',
  373     '&#128' , '\\CYRDJE', 
  374     '&#129' , '\\@tabacckludge\'\CYRG', 
  375     '&#131' , '\\@tabacckludge\'\cyrg', 
  376     '&#138' , '\\CYRLJE', 
  377     '&#140' , '\\CYRNJE', 
  378     '&#141' , '\\@tabacckludge\'\CYRK', 
  379     '&#142' , '\\CYRTSHE', 
  380     '&#143' , '\\CYRDZHE', 
  381     '&#144' , '\\cyrdje', 
  382     '&#154' , '\\cyrlje', 
  383     '&#156' , '\\cyrnje', 
  384     '&#157' , '\\@tabacckludge\'\cyrk', 
  385     '&#158' , '\\cyrtshe', 
  386     '&#159' , '\\cyrdzhe', 
  387     '&#161' , '\\CYRUSHRT', 
  388     '&#162' , '\\cyrushrt', 
  389     '&#163' , '\\CYRJE', 
  390     '&#165' , '\\CYRGUP', 
  391     '&#168' , '\\CYRYO', 
  392     '&#170' , '\\CYRIE', 
  393     '&#175' , '\\CYRYI', 
  394     '&#178' , '\\CYRII', 
  395     '&#179' , '\\cyrii', 
  396     '&#180' , '\\cyrgup', 
  397     '&#184' , '\\cyryo', 
  398     '&#185' , '\\textnumero', 
  399     '&#186' , '\\cyrie', 
  400     '&#188' , '\\cyrje', 
  401     '&#189' , '\\CYRDZE', 
  402     '&#190' , '\\cyrdze', 
  403     '&#191' , '\\cyryi', 
  404      '&#126;' , '\\~{}',
  405      '&#130;' , '\\quotesinglbase{}',
  406      '&#131;' , '\\textflorin{}',
  407      '&#132;' , '\\quotedblbase{}',
  408      '&#133;' , '\\dots{}',
  409      '&#134;' , '\\dag{}',
  410      '&#135;' , '\\ddag{}',
  411      '&#136;' , '\\texteuro{}',
  412      '&#137;' , '\\textperthousand{}',
  413      '&#139;' , '\\guilsinglleft{}',
  414      '&#145;' , '\\textquoteleft{}',
  415      '&#146;' , '\\textquoteright{}',
  416      '&#147;' , '\\textquotedblleft{}',
  417      '&#148;' , '\\textquotedblright{}',
  418      '&#149;' , '\\textbullet{}',
  419      '&#150;' , '\\textendash{}',
  420      '&#151;' , '\\textemdash{}',
  421      '&#152;' , '\\~{}',
  422      '&#153;' , '\\texttrademark{}',
  423      '&#155;' , '\\guilsinglright{}',
  424     '&#160;' , '\\nobreakspace{}',
  425     '&#164;' , '\\textcurrency{}',
  426     '&#166;' , '\\textbrokenbar{}',
  427      '&#167;' , '\\S{}',
  428      '&#169;' , '\\copyright{}',
  429     '&#171;' , '\\guillemotleft{}',
  430     '&#172;' , '\\ensuremath{\\lnot{}}',
  431     '&#173;' , '\\-',
  432 #   '&#174;' , '\\textregistered{}',
  433      '&#174;' , '\\ensuremath{\\circledR}',
  434      '&#176;' , '\\ensuremath{^{\\circ}}',
  435     '&#177;' , '\\ensuremath{\\pm}',
  436     '&#181;' , '\\ensuremath{\\mu}',
  437      '&#182;' , '\\P{}',
  438 #   '&#183;' , '\\textperiodcentered{}',
  439      '&#183;' , '\\cdot{}',
  440      '&#184;' , '\\c{ }',
  441     '&#187;' , '\\guillemotright{}',
  442 );
  443 
  444 sub russian_titles {
  445     $toc_title = "";
  446     $lof_title = " ";
  447     $lot_title = " ";
  448     $idx_title = " ";
  449     $ref_title = " ";
  450     $bib_title = "";
  451   # $nom_title = " ";
  452     $nom_title = "";
  453     $abs_title = "";
  454     $app_title = "";
  455     $pre_title = "";
  456     $foot_title = "";
  457     $thm_title = "";
  458     $fig_name = ".";
  459     $tab_name = "";
  460     $prf_name = "";
  461     $date_name = "";
  462     $page_name = ".";
  463   #  Sectioning-level titles
  464     $part_name = "";
  465     $chapter_name = "";
  466     $section_name = "";
  467     $subsection_name = "";
  468     $subsubsection_name = "";
  469     $paragraph_name = "";
  470   #  Misc. strings
  471     $child_name = "";
  472     $info_title = "   ...";
  473     $also_name = ". ";
  474     $russian_see_name = ".";
  475     $see_name = $russian_see_name;
  476   #  names in navigation panels
  477     $next_name = ".";
  478     $up_name = "";
  479     $prev_name = ".";
  480   #  field names in email headers
  481     $encl_name = ".";
  482     $headto_name = ".";
  483     $cc_name = ".";
  484 
  485     @russian_Month = ('', '', '', '', '', '',
  486               '', '', '', '', '',
  487               '', '');
  488     @Month = @russian_Month;
  489     $GENERIC_WORDS = "|||||";
  490 }
  491 
  492 sub russian_today {
  493     local($today) = &get_date();
  494     $today =~ s|(\d+)/0?(\d+)/|$2 $russian_Month[$1] |;
  495     join('',$today,$_[0],' .');
  496 }
  497 
  498 sub russian_seename {
  499   join('',$russian_see_name,$_[0]);
  500 }
  501 
  502 1;