1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
#
# Latin1ToSgml.pm
#
# This is a latin1 only file containing functions having legacy
# latin1 chars. Split here to avoid the risk of messing up with
# charsets in other files.
#
# Copyright (C) 1995, Cees de Groot
# Copyright (C) 1995, Farzad Farid
# Copyright (C) 1995, Greg Hankins
# Copyright (C) 2020, Agustin Martin
# ---------------------------------------------------------------------------
package LinuxDocTools::Data::Latin1ToSgml;
use strict;
use base qw(Exporter);
our @EXPORT_OK = qw(ldt_latin1tosgml);
# ---------------------------------------------------------------------------
sub ldt_latin1tosgml {
# -------------------------------------------------------------------------
# Convert latin1 chars in input filehandle to sgml entities in the
# returned string (by Farzad Farid, adapted by Greg Hankins)
# -------------------------------------------------------------------------
my $FILE = shift;
my $sgmlout;
while (<$FILE>){
# Outline these commands later on - CdG
# Upper Case Latin-1 Letters
s//\À/g; # À
s//\Á/g; # Á
s//\Â/g; # Â
s//\Ã/g; # Ã
s//\Ä/g; # Ä
s//\Å/g; # Å
s//\Æ/g; # Æ
s//\Ç/g; # Ç
s//\È/g; # È
s//\É/g; # É
s//\Ê/g; # Ê
s//\Ë/g; # Ë
s//\Ì/g; # Ì
s//\Í/g; # Í
s//\Î/g; # Î
s//\Ï/g; # Ï
s//Ð/g; # Ð
s//\Ñ/g; # Ñ
s//\Ò/g; # Ò
s//\Ó/g; # Ó
s//\Ô/g; # Ô
s//\Õ/g; # Õ
s//\Ö/g; # Ö
# s//×/g; # × Moved below to symbols
s//\Ø/g; # Ø
s//\Ù/g; # Ù
s//\Ú/g; # Ú
s//\Û/g; # Û
s//\Ü/g; # Ü
s//\Ý/g; # Ý
s//\Þ/g; # Þ
s//\ß/g; # ß
# Lower Case Latin-1 Letters
s//\à/g; # à
s//\á/g; # á
s//\â/g; # â
s//\ã/g; # ã
s//\ä/g; # ä
s//\å/g; # å
s//\æ/g; # æ
s//\ç/g; # ç
s//\è/g; # è
s//\é/g; # é
s//\ê/g; # ê
s//\ë/g; # ë
s//\ì/g; # ì
s//\í/g; # í
s//\î/g; # î
s//\ï/g; # ï
s//\ð/g; # ð
s//\ñ/g; # ñ
s//\ò/g; # ò
s//\ó/g; # ó
s//\ô/g; # ô
s//\õ/g; # õ
s//\ö/g; # ö #247 is divide symbol below
s//\ø/g; # ø
s//\ù/g; # ù
s//\ú/g; # ú
s//\û/g; # û
s//\ü/g; # ü
s//\ý/g; # ý
s//\þ/g; # þ
s//\ÿ/g; # ÿ
# Some symbols
s//¡/g; # ¡
s//¢/g; # ¢
s//£/g; # £
s//¤/g; # ¤
s//¥/g; # ¥
s//&brkbar;/g; # ¦
s//§/g; # §
s//©/g; # ©
s//«/g; # «
s//¬/g; # ¬
s//®/g; # ®
s//°/g; # °
s//±/g; # ±
s//\μ/g; # µ
s//¿/g; # ¿
s//×/g; # ×
s//÷/g; # ÷
$sgmlout .= $_;
}
return $sgmlout;
}
1;
__END__
# Local Variables:
# coding: iso-8859-1
# perl-indent-level: 2
# End:
|