<h2>Introduction</h2>
<p>Servus is one of the IRC bots on <span
class="code">#chiark</span>. This page documents the available
-commands. You can get a copy of the source code by running <span
+commands.<br /> You can get a copy of the source code by running <span
class="code">git-clone <a
-href="http://www.chiark.greenend.org.uk/~matthewv/irc/.git">http://www.chiark.greenend.org.uk/~matthewv/irc/.git</a></span></p>
+href="http://www.chiark.greenend.org.uk/~matthewv/irc/.git">http://www.chiark.greenend.org.uk/~matthewv/irc/.git</a></span>,
+or via <span class="code">gitweb</span> at <a href="http://www.chiark.greenend.org.uk/ucgi/~matthewv/git/irc.git/">http://www.chiark.greenend.org.uk/ucgi/~matthewv/git/irc.git/</a>.</p>
<h2>Invocation</h2>
<p>Servus may be invoked in-channel using either <span
<h2>Commands</h2>
<ul>
+<li><a href="#blame">blame</a></li>
+<li><a href="#currency">currency</a></li>
<li><a href="#define">define</a></li>
<li><a href="#die">die</a></li>
<li><a href="#do">do</a></li>
<hr />
+<h3><a name="blame">blame</a></h3>
+<p>The syntax is:<br />
+<span class="code">blame text</span><br />or:<br />
+<span class="code">blame #trouts text</span><br />or:<br />
+<span class="code">blame #flirts text</span><br />or:<br />
+<span class="code">blame #slashes text</span><br />or:<br />
+<span class="code">blame #last</span><br />
+The first form will search for <span class="code">text</span> in the
+ trouts, flirts, and slashes lists, and return information on
+ when the relevant item was added, and by whom. The next three
+ forms restrict the search to the specified list. The last form
+ is a special case that searches for the last trout, flirt, or
+ slash that Servus emitted.</p>
+
+<h3><a name="currency">currency</a></h3>
+<p>The syntax is:<br />
+<span class="code">currency curr1 as curr2</span><br />
+This will give the first currency in terms of the second
+ currency. Currencies must be specified using their standard <a
+ href="http://en.wikipedia.org/wiki/ISO_4217">currency
+ code</a>. The currency conversion is performed using xe.com's
+ currency converter.</p>
+
<h3><a name="define">define</a></h3>
-<p>This command returns (either on-channel or by <span
-class="code">/msg</span>) a definition of the argument(s) of the
-"define" command. This is done by using a "define:" query on
-google, so the results may be a little unusual at times...</p>
+<p>This command no longer works, as google have broken 'define'-style
+ searches; it will return an error message if invoked.</p>
<h3><a name="die">die</a></h3>
<p>This command must be invoked by <span class="code">/msg</span> only,
<p>The syntax is:<br /> <span
class="code">flirt target</span><br /> Servus picks a flirt at random
from the flirts list (<span
-class="code">/home/matthew/programming/irc/bot/flirts</span> on rapun),
+class="code">/u2/matthewv/programming/irc/flirts</span> on chiark),
and substitutes "target" for "%s" in the flirt line. If this command
is invoked by <span class="code">/msg</span>, there is a 10% chance
of Servus stating who invoked it by adding "(but nick is their secret
<p>The syntax is:<br /> <span
class="code">slash target1 / target2 </span><br /> Servus picks a slash at random
from the slashes list (<span
-class="code">/home/matthew/programming/irc/bot/slashes</span> on rapun),
+class="code">/u2/matthewv/programming/irc/slashes</span> on chiark),
and substitutes "target1" for the first "%s" and "target2" for the
second "%s" in the slash line. If this command
is invoked by <span class="code">/msg</span>, there is a 10% chance
<p>The syntax is:<br /> <span
class="code">trout target</span><br /> Servus picks a trout at random
from the trouts list (<span
-class="code">/home/matthew/programming/irc/bot/trouts</span> on rapun),
+class="code">/u2/matthewv/programming/irc/trouts</span> on chiark),
and substitutes "target" for "%s" in the trout line. If this command
is invoked by <span class="code">/msg</span>, there is a 10% chance
of Servus stating who invoked it by adding "(at the instigation of
your behalf). The syntax is:<br /> <span class="code">/msg Servus url
http://some.url</span><br /> Servus will either paste the URL into
channel, or <span class="code">/msg</span> you to tell you it was a
-duplicate; in the latter case, the URL will still be sent to <span
+duplicate; in the latter case, the URL will be sent to <span
class="code">#urls</span>. Although you can use this command
in-channel (and get a response by <span class="code">/msg </span>),
this is discouraged. Servus also understands <span
<hr />
<address>
<a href="mailto:matthewv@chiark.greenend.org.uk">Matthew Vernon</a><br />
- Coventry, England
+ Cambridge, England
</address>
<p>
<a href="http://validator.w3.org/check/referer"><img