logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SVN::Notify::HTML::ColorDiff - Subversion activity HTML notification with colorized diff

Author

       David E. Wheeler <david@justatheory.com>

Description

       This subclass of SVN::Notify::HTML sends HTML formatted email messages for Subversion activity, and if
       the "with_diff" parameter is specified (but not "attach_diff"), then a pretty colorized version of the
       diff will be included, rather than the plain text diff output by SVN::Notify::HTML.

Instance Interface

InstanceMethodsoutput_css

         $notifier->output_css($file_handle);

       This method starts outputs the CSS for the HTML message.  SVN::Notify::HTML::ColorDiff adds extra CSS to
       its output so that it can nicely style the diff.

       output_diff

         $notifier->output_diff($out_file_handle, $diff_file_handle);

       Reads the diff data from $diff_file_handle and prints it to $out_file_handle for inclusion in the
       notification message. The diff is output with nice colorized HTML markup. Each line of the diff file is
       escaped by "HTML::Entities::encode_entities()".

       If there are any "diff" filters, this method will do no HTML formatting, but redispatch to
       SVN::Notify::output_diff. See Writing Output Filters for details on filters.

Name

       SVN::Notify::HTML::ColorDiff - Subversion activity HTML notification with colorized diff

See Also

       SVN::Notify
       SVN::Notify::HTML
       CVSspam <http://www.badgers-in-foil.co.uk/projects/cvsspam/>

Synopsis

       Use svnnotify in post-commit:

         svnnotify --repos-path "$1" --revision "$2" \
           --to developers@example.com --handler HTML::ColorDiff [options]

       Use the class in a custom script:

         use SVN::Notify::HTML::ColorDiff;

         my $notifier = SVN::Notify::HTML::ColorDiff->new(%params);
         $notifier->prepare;
         $notifier->execute;

To Do

       •   Add   inline   emphasis   just   on   the   text   that   changed   between  two  lines,  like  this:
           <http://www.badgers-in-foil.co.uk/projects/cvsspam/example.html>.

       •   Add links to To Do stuff to the top of the email, as pulled in from the diff.  This might be  tricky,
           since the diff is currently output after the message body. Maybe use absolute positioning CSS?

Usage

       To use SVN::Notify::HTML::ColorDiff, simply follow the instructions in SVN::Notify, but when using
       svnnotify, specify "--handler HTML::ColorDiff".

See Also