On Wed, Jan 07, 2004 at 03:53:51AM +0100, Sven Luther wrote: > Well, mostly bug reports, especially the state of the examples and such. > There is also the idea Stefano suggested for gzipped .dvi support, or > the camlzip solution to the same problem. I don't remember if it's on the BTS or not, but I successfully use the attached perl script to run advi on gzipped dvi. I think is suitable for distribution, maybe just adding a signal handler which trigger deletion of tempfiles at exit ... Cheers. PS really funny: this is the second time I sent this mail, the first one carried an advi.pl attachment which was rejected as dangerous by the mailing list manager -- ^Stefano Zacchiroli -- Master in Computer Science @ Uni. Bologna, Italy$ ^zack@{cs.unibo.it,debian.org,bononia.it} -- http://www.bononia.it/zack$ ^Frequentando il mio maestro mi ero reso conto [.] che la logica poteva$ ^servire a molto a condizione di entrarci dentro e poi di uscirne -Adso$
#!/usr/bin/perl -w use strict; # Launcher script for advi with support for .gz and .bz2 files # Copyright (C) 2003 Stefano Zacchiroli <zack@debian.org> # # This program is free software; you can redistribute it and/or modify it under # the terms of the GNU General Public License as published by the Free Software # Foundation; either version 2 of the License, or (at your option) any later # version. # # See /usr/share/common-licenses/GPL on a Debian GNU/Linux system. my $advi = "/usr/bin/advi"; my $gunzip = "/bin/gunzip"; my $bunzip2 = "/usr/bin/bunzip2"; my @tempfiles = (); for (my $i=0; $i<=$#ARGV; $i++) { if (-f $ARGV[$i] && $ARGV[$i] =~ /\.(gz|bz2)$/) { my $tmp = `tempfile -p advi_ -s .dvi`; chomp $tmp; push @tempfiles, $tmp; if ($ARGV[$i] =~ /\.gz$/) { if (-x $gunzip) { system "$gunzip -c $ARGV[$i] > $tmp"; } else { print STDERR "Warning: can't find gunzip ($gunzip)\n"; } } else { # ($ARGV[$i] =~ /\.bz2$/) if (-x $bunzip2) { system "$bunzip2 -c $ARGV[$i] > $tmp"; } else { print STDERR "Warning: can't find bunzip2 ($bunzip2)\n"; } } $ARGV[$i] = $tmp; } } my $retval = system $advi, @ARGV; foreach my $tmp (@tempfiles) { unlink $tmp; } exit $retval;
Attachment:
signature.asc
Description: Digital signature