Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

unbleach.pl

by tachyon (Chancellor)
on Jun 05, 2001 at 22:06 UTC ( [id://85918] : CUFP . print w/replies, xml ) Need Help??

This script will replace all the unsighted unprintable characters bleached out of your source file by a:

use Acme::Bleach;

directive with elegant (perhaps) ASCII perl code.

#!/usr/bin/perl # unbleach.pl - for really dirty programs use strict; my $washing = pop or carp("Usage: unbleach.pl [file]"); open white,"<$washing" or carp("Can't get $washing"); local $/; $_=<white>; s/(.*)^\s*use\s+Acme::Bleach\s*;\n(?: \t){8}/$1/ or carp("$washing is not bleached!"); open line,">$washing" or carp("Can't dry $washing"); print line out($_); sub out {s/\n//g;tr/ \t/01/;pack "b*",$_;} sub carp {print shift and exit} =head1 NAME unbleach.pl - For I<really> unclean programs =head1 SYNOPSIS unbleach.pl [file] =head1 DESCRIPTION This script will replace all the unsighted unprintable characters bleached out of your source file by a: use Acme::Bleach; directive with elegant (perhaps) ASCII perl code. It also removes the use bleach line when it rewrites the source code. The code continues to work exactly as it did before, but now looks like normal! =head1 DIAGNOSTICS =item C<Can't get '%s'> unbleach.pl could not read the source file. =item C<'%s' is not bleached!> unbleach.pl will only process files that have been previously bleached and have the expected format. =item C<Can't dry '%s'> unbleach.pl could not open the source file to modify it. =head1 SEE ALSO http://www.cpan.org/authors/id/DCONWAY/Acme-Bleach-1.12.tar.gz http://www.perlmonks.com =head1 AUTHOR not Damian Conway (as if you couldn't guess) =head1 COPYRIGHT Copyright (c) 2001, tachyon. All Rights Reserved. This script is free software. It may be used, redistributed and/or modified under the terms of the Perl Artistic License (see http://www.perl.com/perl/misc/Artistic.html)

Replies are listed 'Best First'.
Re: unbleach.pl
by boo_radley (Parson) on Jun 06, 2001 at 22:44 UTC
    how about calling it Acme::Dye?
Re: unbleach.pl
by Anonymous Monk on Feb 20, 2013 at 10:14 UTC
    Hi I have one pearl script including unsightable characters,but I could not unbleach my script file using this script ,Can any one help me
      How was the script created? Can you post a hexdump of (a part of) the script?
      لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ