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 "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.
Usage¶
To use SVN::Notify::HTML::ColorDiff, simply follow the instructions in
SVN::Notify, but when using
svnnotify, specify "--handler
HTML::ColorDiff".
Instance Interface¶
Instance Methods¶
output_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.
See Also¶
- SVN::Notify
- SVN::Notify::HTML
- <CVSspam>
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?
Author¶
David E. Wheeler <david@kineticode.com>
Copyright and License¶
Copyright (c) 2004-2009 Kineticode, Inc. Some Rights Reserved.
This module is free software; you can redistribute it and/or modify it under the
same terms as Perl itself.