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