File: fixmanpages

package info (click to toggle)
erlang-manpages 1%3A12.b.3-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 4,188 kB
  • ctags: 2
  • sloc: makefile: 68; perl: 30; sh: 15
file content (34 lines) | stat: -rw-r--r-- 1,158 bytes parent folder | download
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
#!/usr/bin/perl -w

my @files = `grep -l "^.TH" *`;
chomp(@files);

my($filename);
foreach $filename (@files) {
        print "Fixing $filename\n";
        my $file = `cat $filename`;
	# Replacing numbered characters by their troff equivalents
	$file =~ s/\xa0/\\ /g;
	$file =~ s/\xad//g;
	$file =~ s/\xae/\\[rg]/g;
	$file =~ s/\xb1/\\[+-]/g;
	$file =~ s/\xd6/\\[:O]/g;
	$file =~ s/\xd7/\\[mu]/g;
	$file =~ s/\xe4/\\[:a]/g;
	$file =~ s/\xe5/\\[oa]/g;
	$file =~ s/\xe9/\\['e]/g;
	$file =~ s/\xf6/\\[:o]/g;
	$file =~ s/\>/>/g;
	$file =~ s/\&lt;/</g;
	$file =~ s/\&ld;/</g; # in epmd.1 &ld; is used instead of &lt;
	$file =~ s/\&addr;/\&addr,/g; # &addr is a C-function arg (erl_connect.3 and ei_connect.3)
        $file =~ s/(^.TH\s+\w*\s+)3\s/$+3erl /;
        $file =~ s/(\S)\(3\)/$+(3erl)/g;
        $file =~ s/(.SH\s+)MODULE/$+NAME/;
        $file =~ s/(.SH\s+)APPLICATION/$+NAME/;
        open OUTPUT, ">$filename.temp" or die "Can't open $filename.temp\n";
        print OUTPUT "$file";
        close OUTPUT;
        unlink $filename or die "Can't delete $filename\n";
        rename "$filename.temp", "$filename" or die "Can't rename $filename\n";
}