Patch(3pm) | User Contributed Perl Documentation | Patch(3pm) |
NAME¶
Text::Patch - Patches text with given patch
SYNOPSIS¶
use Text::Patch; $output = patch( $source, $diff, STYLE => "Unified" ); use Text::Diff; $src = ... $dst = ... $diff = diff( \$src, \$dst, { STYLE => 'Unified' } ); $out = patch( $src, $diff, { STYLE => 'Unified' } ); print "Patch successful" if $out eq $dst;
DESCRIPTION¶
Text::Patch combines source text with given diff (difference) data. Diff data is produced by Text::Diff module or by the standard diff utility (man diff, see -u option).
- patch( $source, $diff, options... )
- First argument is source (original) text. Second is the diff data. Third
argument can be either hash reference with options or all the rest
arguments will be considered patch options:
$output = patch( $source, $diff, STYLE => "Unified", ... ); $output = patch( $source, $diff, { STYLE => "Unified", ... } );
Options are:
STYLE => 'Unified'
STYLE can be "Unified", "Context" or "OldStyle".
The 'Unified' diff format looks like this:
@@ -1,7 +1,6 @@ -The Way that can be told of is not the eternal Way; -The name that can be named is not the eternal name. The Nameless is the origin of Heaven and Earth; -The Named is the mother of all things. +The named is the mother of all things. + Therefore let there always be non-being, so we may see their subtlety, And let there always be being, @@ -9,3 +8,6 @@ The two are the same, But after they are produced, they have different names. +They both may be called deep and profound. +Deeper and more profound, +The door of all subtleties!
TODO¶
Interfaces with files, arrays, etc.
AUTHOR¶
Vladi Belperchinov-Shabanski "Cade" <cade@biscom.net> <cade@datamax.bg> <cade@cpan.org> http://cade.datamax.bg
VERSION¶
$Id: Patch.pm,v 1.6 2007/04/07 19:57:41 cade Exp $
2022-12-12 | perl v5.36.0 |