<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">I just created a simple trait for the Catalyst::Log that uses OS X's 'say' utility to log error messages to audio, such that the computer will say them to you. &nbsp;My eyes tire of reading through 100s of lines of debug output, so now sometimes I will have the computer simply talk to me.<br><br>Its not in CPAN yet, but its simple enough:<br><br>-------<br><br>package Catalyst::TraitFor::Log::Audio;<br><br>use Moose::Role;<br><br>sub speak<br>{<br>&nbsp;&nbsp;&nbsp;my ($self, $txt) = @_;<br><br>&nbsp;&nbsp;&nbsp;return unless $txt;<br><br>&nbsp;&nbsp;&nbsp;system("say $txt &amp;") if $ENV{'SPEAK'};<br>}<br><br>1;<br><br>-----<br><br>In MyApp.pm, after setup():<br><br>Moose::Util::apply_all_roles(MyApp-&gt;log, 'Catalyst::TraitFor::Log::Audio');<br><br>----<br><br>In a controller: $foo='bar'; $c-&gt;log-&gt;speak('Hello world, the value of foo is $foo');<br><br>---<br><br>If ENV 'SPEAK' is set, it will talk to you. &nbsp;Works like a charm. &nbsp;mst/t0m told me how to do it. &nbsp;Will get around to CPAN'ing it this week. Anyone aware of a cross platform library that will do this kind of speech stuff? &nbsp;There is no reason to stop here if this is useful to people - could play tones depending on state, warnings, etc.<br><br>Russell Jurney<br><a href="mailto:russell.jurney@gmail.com">russell.jurney@gmail.com</a><br></body></html>