1*6f6e7f06SIan Rogers#!/usr/bin/perl -w
2*6f6e7f06SIan Rogers
3*6f6e7f06SIan Rogersuse strict;
4*6f6e7f06SIan Rogersuse warnings;
5*6f6e7f06SIan Rogers
6*6f6e7f06SIan Rogersmy @menu = ();
7*6f6e7f06SIan Rogersmy $output = $ARGV[0];
8*6f6e7f06SIan Rogers
9*6f6e7f06SIan Rogersopen my $tmp, '>', "$output.tmp";
10*6f6e7f06SIan Rogers
11*6f6e7f06SIan Rogerswhile (<STDIN>) {
12*6f6e7f06SIan Rogers	next if (/^\\input texinfo/../\@node Top/);
13*6f6e7f06SIan Rogers	next if (/^\@bye/ || /^\.ft/);
14*6f6e7f06SIan Rogers	if (s/^\@top (.*)/\@node $1,,,Top/) {
15*6f6e7f06SIan Rogers		push @menu, $1;
16*6f6e7f06SIan Rogers	}
17*6f6e7f06SIan Rogers	s/\(\@pxref\{\[(URLS|REMOTES)\]}\)//;
18*6f6e7f06SIan Rogers	s/\@anchor\{[^{}]*\}//g;
19*6f6e7f06SIan Rogers	print $tmp $_;
20*6f6e7f06SIan Rogers}
21*6f6e7f06SIan Rogersclose $tmp;
22*6f6e7f06SIan Rogers
23*6f6e7f06SIan Rogersprint '\input texinfo
24*6f6e7f06SIan Rogers@setfilename gitman.info
25*6f6e7f06SIan Rogers@documentencoding UTF-8
26*6f6e7f06SIan Rogers@dircategory Development
27*6f6e7f06SIan Rogers@direntry
28*6f6e7f06SIan Rogers* Git Man Pages: (gitman).  Manual pages for Git revision control system
29*6f6e7f06SIan Rogers@end direntry
30*6f6e7f06SIan Rogers@node Top,,, (dir)
31*6f6e7f06SIan Rogers@top Git Manual Pages
32*6f6e7f06SIan Rogers@documentlanguage en
33*6f6e7f06SIan Rogers@menu
34*6f6e7f06SIan Rogers';
35*6f6e7f06SIan Rogers
36*6f6e7f06SIan Rogersfor (@menu) {
37*6f6e7f06SIan Rogers	print "* ${_}::\n";
38*6f6e7f06SIan Rogers}
39*6f6e7f06SIan Rogersprint "\@end menu\n";
40*6f6e7f06SIan Rogersopen $tmp, '<', "$output.tmp";
41*6f6e7f06SIan Rogerswhile (<$tmp>) {
42*6f6e7f06SIan Rogers	print;
43*6f6e7f06SIan Rogers}
44*6f6e7f06SIan Rogersclose $tmp;
45*6f6e7f06SIan Rogersprint "\@bye\n";
46*6f6e7f06SIan Rogersunlink "$output.tmp";
47