NerdList is an xchat script written in python that manages a top N list of nerdy utterances and actions by the users of an irc channel.
The name comes from its birth on an italian channel, where the term "nerd" is used to mean both "nerd" as well as "geek". It can be easily changed to keep track of various other pieces of channel lore.
Points are added when someone decides to add a reason why someone else (or him/herself) is a nerd; there is currently no control on who adds who and why, except for a timeout to prevent spamming.
Download
Current version is 0.6, mostly finished except for some testing and small details.
- NerdList 0.6 (2.9K)
- gzipped python script - current version (added check and creation of the nerdlogs directory)
- NerdList 0.5 (2.9K)
- gzipped python script (first released version)
Installation
After you've downloaded NerdList and gunzipped it you can follow the instructions to auto-load it at startup on the xchat site.
You can then change some of the settings by editing the
variables in the CONFIGURATION section of the file.
freechans- this is a list of channels where you don't want the script to work.
script_own- your nickname.
datadir- this is where the logs are kept: use either an absolute path or one starting with ~ for your home directory.
mintimenerdmintimehelpmintimelist- spam protection: minimum time in seconds between answers
to the
nerd,nerdhelpandnerdlisttriggers or commands (in the same channel). scriptname- this is what the script prints at the beginning of help and list.
reasonchance- this is used to control the way reasons are chosen for each user when generating the list: it should be a number between 0 and 1 (not included) and higher numbers should give higher chances that newer reasons will be shown.
Usage
NerdList listens on the channels for the following triggers.
!nerd name reason- adds
nameto the nerdlog of the current channel, with reasonreason; if there are not enough parameters prints the help. !nerdlist [n]- prints the top
nlist of nerds for the current channel; default is top 5. The output is:
(position) name (points) reason (nick that suggested this reason) !nerdhelp- prints the help.
Text sent from the same xchat where the script is running
is not parsed; instead one can use commands with the same name and sintax
as the triggers above: /nerd name reason,
/nerdlist [n] and /nerdhelp.
Known Bugs
When someone sends an empty line (or a line that contains only spaces) an IndexError occours and the script prints some debug informations. This does not interfere with the script functions and is only an occasional nuisance for the person that keeps the script, as nothing is sent to the channel (unless they happen to be on a channel where lines with only spaces are common, then it becomes a not-so-occasional nuisance).
Copyright and license
NerdList is Copyright © 2007 Elena Grandi.
NerdList is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
NerdList is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
