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

Name

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

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;

Description

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

Usage

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

Instance Interface

Instance Methods

output_css

  $notifier->output_css($file_handle);

This method starts outputs the CSS for the HTML message. It overrides the same method on SVN::Notify::HTML to add CSS for the colorized diff.

output_diff

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

Reads the diff data from CW$diff_file_handle and prints it to CW$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 CWHTML::Entities::encode_entities().

See Also

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

To Do

•
Add inline bolding 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 ToDo 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?

Author

David Wheeler <david@kineticode.com>

Copyright and License

Copyright (c) 2004-2005 Kineticode, Inc. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.