162306a36Sopenharmony_ci#!/usr/bin/perl -w
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciuse strict;
462306a36Sopenharmony_ciuse warnings;
562306a36Sopenharmony_ci
662306a36Sopenharmony_cimy @menu = ();
762306a36Sopenharmony_cimy $output = $ARGV[0];
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciopen my $tmp, '>', "$output.tmp";
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciwhile (<STDIN>) {
1262306a36Sopenharmony_ci	next if (/^\\input texinfo/../\@node Top/);
1362306a36Sopenharmony_ci	next if (/^\@bye/ || /^\.ft/);
1462306a36Sopenharmony_ci	if (s/^\@top (.*)/\@node $1,,,Top/) {
1562306a36Sopenharmony_ci		push @menu, $1;
1662306a36Sopenharmony_ci	}
1762306a36Sopenharmony_ci	s/\(\@pxref\{\[(URLS|REMOTES)\]}\)//;
1862306a36Sopenharmony_ci	s/\@anchor\{[^{}]*\}//g;
1962306a36Sopenharmony_ci	print $tmp $_;
2062306a36Sopenharmony_ci}
2162306a36Sopenharmony_ciclose $tmp;
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciprint '\input texinfo
2462306a36Sopenharmony_ci@setfilename gitman.info
2562306a36Sopenharmony_ci@documentencoding UTF-8
2662306a36Sopenharmony_ci@dircategory Development
2762306a36Sopenharmony_ci@direntry
2862306a36Sopenharmony_ci* Git Man Pages: (gitman).  Manual pages for Git revision control system
2962306a36Sopenharmony_ci@end direntry
3062306a36Sopenharmony_ci@node Top,,, (dir)
3162306a36Sopenharmony_ci@top Git Manual Pages
3262306a36Sopenharmony_ci@documentlanguage en
3362306a36Sopenharmony_ci@menu
3462306a36Sopenharmony_ci';
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_cifor (@menu) {
3762306a36Sopenharmony_ci	print "* ${_}::\n";
3862306a36Sopenharmony_ci}
3962306a36Sopenharmony_ciprint "\@end menu\n";
4062306a36Sopenharmony_ciopen $tmp, '<', "$output.tmp";
4162306a36Sopenharmony_ciwhile (<$tmp>) {
4262306a36Sopenharmony_ci	print;
4362306a36Sopenharmony_ci}
4462306a36Sopenharmony_ciclose $tmp;
4562306a36Sopenharmony_ciprint "\@bye\n";
4662306a36Sopenharmony_ciunlink "$output.tmp";
47