File: latin1.pl

package info (click to toggle)
ispanish 1.5-5
  • links: PTS
  • area: main
  • in suites: slink
  • size: 1,516 kB
  • ctags: 17
  • sloc: makefile: 101; perl: 54; sh: 40; lisp: 7; csh: 6
file content (60 lines) | stat: -rw-r--r-- 1,096 bytes parent folder | download | duplicates (2)
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
#!/usr/bin/perl

%hl2a=(
  "e1","'a",
  "c1","'A",
  "e9","'e",
  "c9","'E",
  "ed","'i",
  "cd","'I",
  "f1","'n",
  "d1","'N",
  "f3","'o",
  "d3","'O",
  "fa","'u",
  "da","'U",
  "fc","\"u",
  "dc","\"U"
);

%a2l=(
  "'a","",
  "'A","",
  "'e","",
  "'E","",
  "'i","",
  "'I","",
  "'n","",
  "'N","",
  "'o","",
  "'O","",
  "'u","",
  "'U","",
  "\"u","",
  "\"U",""
);

$size=keys(%a2l);
@chars=keys(%a2l);

$\ = "\n";		# automatically add newline on print

while (<>) {
    chop;
    if (/^defstringtype "tex" "tex" ".tex"/){
	printf "defstringtype \"latin1\" \"tex\" \".txt\"\n"
    } elsif (/^altstringtype "latin1" "tex" ".txt"/){
	printf "altstringtype \"tex\" \"tex\" \".tex\"\n"
    } elsif (/^stringchar \\(..)	\\(..)/){
	printf "stringchar %s	%s\n",$a2l{$1},$a2l{$2}
    } elsif (/^altstringchar   \\x(..)    \\(..)/){
	printf "altstringchar   \\%s    %s\n",$hl2a{$1},$a2l{$2}
    } elsif (/^altstringchar   (.*)	\\(..)/){
	printf "altstringchar   %s	%s\n",$1,$a2l{$2}
    } else {
	for ($i=0; $i<$size ; $i++){
	  s/$chars[$i]/$a2l{$chars[$i]}/g
	}
	print
    }
}