#!/usr/athena/bin/perl -lw use strict; use English; use IO::File; my $package = shift or die; my $prefix = shift or die; my $listfile = shift or die; my $list = join '', (new IO::File $listfile or die "can't read $listfile")->getlines(); $list =~ s/(^|[^\\])(%.*?)(\n|\Z)/$1/gm; for my $match ($list =~ /\\newdef\s*\\(${prefix}[A-Za-z]+)\s*\{/g) { (new IO::File "$match.tex", "w" or die "can't write $match.tex") ->print(join "\n", "\\documentclass{game}", "\\usepackage{$package}", "\\begin{document}", "\\pageof{\\$match}", "\\end{document}"); `latex $match`; `dvips $match -o`; }