pisg is an IRC statistics generator. It takes IRC logfiles and turns them into nice looking stats.
In general, you would do something like this to get it running:
Enable logging in an IRC bot, or in your IRC client. The log will be outputted into a file.
You set up pisg, you define the channel name, and the path to the logfile you created.
You run pisg, pisg runs the log through and create statistics, it then creates an HTML page which you can upload to a webserver.
An IRC client or bot where pisg supports the output logfile.
Any operating system which Perl runs on, this includes popular OSes such as Linux, FreeBSD, Windows and Mac. You will have a hard time finding an OS where Perl isn't supported. For Windows this means that you need to download ActivePerl.
Optional - a system to host the statistics page 24 hours a day, 7 days a week.
Optional - a system to log the channel, 24 hours a day, 7 days a week.
Most configuration happens through the pisg.cfg file, the file format is made to be easy to read, and easy to extend for further use. It uses an XML-like format, with elements and attributes.
An element called channel is made for defining channels, a quick example of a channel is here:
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" Maintainer = "John" OutputFile = "mychan.html" </channel>The above will define a channel called #channel, the logfile pisg will look for is called channel.log and the format of the logfile will be mIRC. The maintainer (which will be stated on the output page) is John.
That is basically it! Now, there are a lot more options that you can use for your channels, for this please refer to the reference documentation.
Also be-aware of the fact that pisg uses various images to show the time-related bars. These images are placed in the gfx/ folder and should be placed into the same directory as your outputted HTML file.
User options are set with a simple XML-like syntax in the form:
<user nick="NICK" option="VALUE">Remember, the nick is always required. For example to add aliases to a nick, then you could do this:
<user nick="Joe" alias="Joe^*">The asterisk (*) means that it will match all nicks starting with 'Joe^'. So it will add all Joe^'s to 'Joe' in the stats. Another thing you can do is to add a picture to a user:
<user nick="Ben" pic="ben_holiday.jpg">If you have a larger picture of the user as well, you can make the picture on the stats page link to it:
<user nick="Ben" pic="ben_holiday.jpg" bigpic="ben-big.jpg">You can include * or ? to enable filename globbing to randomly choose one from several pictures: (see documentation for the ImageGlobPath option)
<user nick="Ben" pic="ben_*.jpg">You can also set a user's sex:
<user nick="Ben" sex="m">Also you can add links to URLs and e-mails:
<user nick="Christine" link="http://www.christine.com">or
<user nick="Chris" link="chris@host.com">The last thing you can do is to ignore nicks (for example bots):
<user nick="nameofbot" ignore="y">You don't have to do all this in many lines, you could just as easily do:
<user nick="Joe" alias="Joe^away Joe^work" pic="joe.jpg" link="joe@joe.com" sex="m">(Here the aliases are a space separated list of nicks, that also works! But * as a wildcard is smarter, although it is slower).
Many times, it will be useful to set up global options, global options are set like this:
<set option="VALUE">Any global option will override anything defined within channel elements (see Section 2.1)
For example, to change the background color of the stats page, you could do:
<set bgcolor="black">You can set many options in a single set:
<set lang="DE" timeoffset="+1">The above will set the language on the statistics page to DE (Deutsch, German) and set the time offset to +1. All options available are mentioned in the reference documentation.
It's possible to ignore links in the "Most referenced URLs" section:
<link url="http://www.slashdot.org" ignore="y">
If you have, for example, more than one channel, where the users are the same, or you don't want to maintain more than one user file, you can use the "include" setting in the main config file:
<include="/home/vetinari/pisg/users.cfg">This will include the file /home/vetinari/pisg/users.cfg in the config at the place where the include statement is set.
Note, that you can NOT include a file from an included file!
The standard layout and colors in the outputted HTML page are made to be somewhat clean and neutral. But you have the chance to change the layout yourself.
There are a few predefined color schemes for you to use, use the ColorScheme option when using them. The available colorschemes are: 'default', 'darkgalaxy', 'ocean', 'darkred'.
When changing it, you need a fair knowledge of CSS (Cascading Style Sheets). CSS is what most of the web uses today to define styles and layout on HTML pages.
With the pisg distribution, look in the layout directory. In it resides default.css which is the file being included onto the HTML page. Open it in a text editor like vi or notepad. Then change it until you're happy with it. Be aware that you might want to look at the hicell and hicell2 options through pisg.cfg for changing the last two colors.
If you have created a nice stylesheet which other can take advantage of, you are encouraged to send it to the pisg mailing list so that it can be distributed with the next version of pisg.
When everything is set up in the pisg configuration file (pisg.cfg), then you simply run pisg on the command-line.
Using Linux, BSD or another UNIX-like system:
user@host:pisg-0.37$ ./pisg
Using Windows:
c:\pisg> perl pisg
The program will run and parse the logfiles you specified in the configuration file.
If you are using Linux, BSD or another UNIX-like system and want run pisg automatically several times a day, then see the crontab file in the scripts/ directory.
For Windows, see the windows-upload-ftp.txt file with the pisg distribution, this file is also placed in the scripts/ directory.
If your problem could not be resolved through here, then you should send an e-mail to the pisg mailing list. You can subscribe and see more info at http://lists.sourceforge.net/lists/listinfo/pisg-general.
If you believe that you have found a bug, you should use the SourceForge bug tracking system.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" Maintainer = "John" </channel>
Channel is used in two contexts, globally when using <set> and when defining new channels. It sets the name of the channel.
<channel="#channel"> Logfile = "channel.log" Format = "eggdrop" Maintainer = "John" </channel> <set Format="mIRC">
Format is used to define the format of the logfile, pisg supports a various number of different logfiles, see the FORMATS file included with the pisg distribution.
<channel="#channel"> Logfile = "channel.log" Format = "eggdrop" Network = "Undernet" </channel> <set Network="Quakenet">
Network is used to set the network which the channel resides on, this name is displayed on the stats page.
<channel="#channel"> Logfile = "channel.log" Format = "eggdrop" OutputFile = "mychan.html" </channel> <set OutputFile="mychan.html">
<channel="#channel"> LogDir = "logs/" Format = "eggdrop" OutputFile = "mychan%t.html" OutputTag = "-week" </channel> <set OutputTag="-week">
OutputTag specifies a string that will replace occurrences of "%t" in OutputFile. This option is most useful when used as a command line switch (-t) to pisg in conjunction with NFiles (-nf). Example:
$ pisg -co pisg.conf $ pisg -co pisg.conf -nf 8 -t -weekLeaving out the OutputTag settings from the above pisg.conf snippet, this writes both the full statistics (mychan.html) and statistics for the last week (mychan-week.html) using the same pisg config file. (Assuming that there are separate logfiles for each day.)
<channel="#channel"> Logfile="/home/foo/eggdrop/logs/mylog.txt" Format = "eggdrop" </channel> <set Logfile="foo.log">
This defines the filename of the logfile to parse for the channel. If you want to parse a directory full of logfiles, you should use the LogDir option instead. Providing this option multiple times will parse multiple files in the order the statements appear.
<channel="#channel"> LogDir="/home/foo/eggdrop/logs/" Format = "eggdrop" </channel> <set LogDir="dailylogs/">
When LogDir is defined to valid path to a directory, then pisg will run through that directory, parse all logfiles in it and create 1 HTML from it. Useful with for example eggdrop logs. Providing this option multiple times will parse all the files in multiple directories in the order the statements appear.
<channel="#channel"> LogDir="/home/foo/eggdrop/logs/" NFiles="8" Format="eggdrop" </channel> <set NFiles="8">
When NFiles is set to a positive integer, pisg will process at most that much files from LogDir. Useful to create statistics that cover the last week or month. Note that if multiple LogDir options are provided, NFiles refers to the number of files which will be processed from each LogDir
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" Maintainer = "Benny" </channel> <set Maintainer="Benny">
Maintainer is used to define the name of the maintainer of the statistics page, this can be either the person generating the stats or the bot/client doing the logging. The maintainer is displayed in the outputted stats page.
<channel="#channel"> Logfile = "channel.log" ColorScheme = "darkgalaxy" Maintainer = "John" </channel> <set ColorScheme="default">
ColorScheme is used to define the color scheme used for the statistics page. Actually it's the CSS file being included. Available options are: default, darkgalaxy, darkred, justgrey, ocean, softgreen, orange_grey.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" Lang = "DE" </channel> <set Lang="FR">
Lang defines the language to use for the stats. Currently, lang.txt includes: EN (English), BG (Bulgarian), CA (Catalan), CZ (Czech), DA (Danish), DE (German), EE (Estonian), ES (Spanish), FI (Finnish), FR (French), GR (Greek), HE (Hebrew), HU (Hungarian), IS (Icelandic), IT (Italian), NL (Dutch), NO (Norwegian), PL (Polish), PT (Portuguese), PT-BR (Portuguese/Brazil), RO (Romanian), RU (Russian), SE (Swedish), SI (Slovenian), SK (Slovak), SQ (Albanian), TR (Turkish), YU (Serbian). See also LangFile.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" OutputFile = "stats.html" PageHead = "myheader.txt" </channel> <set PageHead="someheader.txt">
PageHead is used to include a file in the stats page, for example an introduction text, a link to an image or a banner. The file can hold anything, it will be included raw in the stats page - so HTML should be preferred. The file will be included in the top of the page. This option is the opposite of PageFoot.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" outputfile = "stats.html" PageFoot = "myfooter.txt" </channel> <set PageFoot="somefooter.txt">
PageFoot is used to include a file in the stats page, for example an introduction text, a link to an image or a banner. The file can hold anything, it will be included raw in the stats page - so HTML should be preferred. The file will be included in the bottom of the page. This option is the opposite of PageHead.
<channel="#channel"> LogDir="/home/foo/eggdrop/logs/" Format = "eggdrop" LogPrefix = "logjun" </channel> <set LogPrefix="logjanuary">
When using the LogDir option and you only want to use a slew of the files in it, you can have pisg choose only files which are prefixed with a special string.
<set LogSuffix="\.\d\d([A-Za-z]+)\d\d\d\d||\.(\d\d)[A-Za-z]+\d\d\d\d||\.\d\d[A-Za-z]+(\d\d\d\d)">
LogSuffix is used to define the suffix of a logfile, it only works when LogDir is defined. The example in the synopsis is for the eggdrop bots default format.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowActiveTimes = "0" </channel> <set ShowActiveTimes="1">
With this option you can disable the "Most Active Times" section on the stats page. It will simply disappear when specifying 0.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowBigNumbers = "0" </channel> <set ShowBigNumbers="1">
With this option you can disable the "Big Numbers" and "Other Interesting numbers" sections on the stats page. They will simply disappear when specifying 0.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowTopics = "0" </channel> <set ShowTopics="1">
With this option you can disable the "Latest topics" section on the stats page. It will simply disappear when specifying 0.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowWpl = "0" </channel> <set ShowWpl="1">
With this option you can enable the "words per line" column in the "Most Active Nicks" section. It will add a column describing the average words per line for a person.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowCpl = "0" </channel> <set ShowCpl="1">
With this option you can enable the "characters per line" column in the "Most Active Nicks" section. It will add a column describing the average number of characters per line for a person.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowWords = "0" </channel> <set ShowWords="1">
The ShowWords option adds a column to the "Most Active Nicks" list which list the total number of words a user has typed.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowLastSeen = "0" </channel> <set ShowLastSeen="1">
With this option enabled, a column will be added to the "Most Active Nicks" section to display when a user was last seen. E.g. "2 days ago".
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowTime = "0" </channel> <set ShowTime="1">
The default behaviour is to add a column to the "Most Active Nicks" section displaying a fancy time bar to show when a user was active. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowLineTime = "0" </channel> <set ShowLineTime="1">
The default behaviour is to add a column to the "Most Active Nicks" section displaying a fancy time bar to show when a user was active. With this option it can be done the same way as mIRCStats does it; that is, by putting that time bar next to the number of lines, in the same column.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowWordTime = "0" </channel> <set ShowWordTime="1">
The default behaviour is to add a column to the "Most Active Nicks" section displaying a fancy time bar to show when a user was active. With this option it can be done similarly to mIRCStats does it and like the ShowLineTime option, but using words instead of lines; that is, by putting that time bar next to the number of words, in the same column.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowRandQuote = "0" </channel> <set ShowRandQuote="1">
The default behaviour is to add a column to the "Most Active Nicks" section displaying a users random quote. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowLegend = "0" </channel> <set ShowLegend="1">
By default, pisg shows a legend below the "Most Active Times" displaying what the different colors means. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowKickLine = "0" </channel> <set ShowKickLine="1">
By default, pisg shows an example kick line in the "Most kicked"-stats. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowActionLine = "0" </channel> <set ShowActionLine="1">
By default, pisg shows an example action line in the "Most actions"-stats. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowShoutLine = "0" </channel> <set ShowShoutLine="1">
By default, pisg shows an example shout line in the "Most shouting people"-stats. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowFoulDecimals = "2" </channel> <set ShowFoulDecimals="1">
By default, pisg uses 1 decimal. With this option you could change it to whatever you like. Negative is treated as the default value.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowFoulLine = "0" </channel> <set ShowFoulLine="1">
By default, pisg doesn't show an example foul line in the "Most fouls"-stats. With this option it can be enabled.
<channel="#channel"> Logfile = "channel.log" Format = "bobot" ShowViolentLines = "0" </channel> <set ShowViolentLines="1">
By default, pisg shows example violent lines in the "Most aggressive" and "Most attacked"-stats. With this option it can be disabled.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowMuw = "0" </channel> <set ShowMuw="1">
By default, pisg adds an "Most used words" section to the stats page. With this option you can disable it from being shown.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowMrn = "0" </channel> <set ShowMrn="1">
By default, pisg adds an "Most referenced nicks" section to the stats page. With this option you can disable it from being shown.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowMru = "0" </channel> <set ShowMru="1">
By default, pisg adds an "Most referenced URLs" section to the stats page. With this option you can disable it from being shown.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowOps = "0" </channel> <set ShowOps="0">
By default, pisg has op statistics in the "Most interesting numbers" section. Here you can disable the feature, it's useful if you don't feel that the information is of any value, or your log format doesn't support ops/deops.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowVoices = "0" </channel> <set ShowVoices="1">
By default, pisg doesn't have voice statistics like it has op statistics. Enabling this option will add a section to the "Most interesting numbers" displaying who got most voices.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowHalfops = "0" </channel> <set ShowHalfops="1">
By default, pisg doesn't have halfop statistics (+h on some servers) like it has op statistics. Enabling this option will add a section to the "Most interesting numbers" displaying who gave most half-ops.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowMostNicks = "0" </channel> <set ShowMostNicks="1">
By enabling this option, pisg will add a section to the stats showing who had the most nicks, and what the nicks were. This option only works properly when NickTracking is enabled.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowMostActiveByHour = "0" </channel> <set ShowMostActiveByHour="1">
By enabling this option, pisg will add a section to the stats showing "Most Active Nicks By Hour" - also look at the ShowMostActiveByHourGraph and ActiveNicksByHour settings.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowOnlyTop = "1" </channel> <set ShowOnlyTop="1">
By enabling this option, stats in the "Big Numbers" and "Interesting Numbers" section will only be counted for users who were the most active. E.g. users who appear in the "Most Active Nicks" section, as respected by the ActiveNicks and ActiveNicks2 options. See also BigNumbersThreshold.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" ShowMostActiveByHourGraph = "0" </channel> <set ShowMostActiveByHour="1"> <set ShowMostActiveByHourGraph="1">
By enabling this option and the ShowMostActiveByHour option, pisg will show graphs in the "Most Active Nicks By Hour" section.
Sometimes words in the "most used words" appears which you don't want to see, with this option you can ignore these words. It also applies to the "most referenced nicks" section. It's a space separated list of words. You can use * like in nick aliases. Can not be used in a channel-only context.
When set to "1", pisg will not output quotes containing ignored words. Pisg will output a blank line after trying 20 random quotes if all 20 random quotes were ignored.
There is a section in the "Most interesting numbers" which tells who had a "dirty mouth" - here you can define which words are considered being bad/foul. It is a space separated list of words. You can use * like in nick aliases. Can not be used in a channel-only context.
There is a section in the "Most interesting numbers" which tells who is most "aggressive" - here you can define which words are considered being "violent". It is a space separated list of words. You can use * like in nick aliases. Can not be used in a channel-only context.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" MinQuote = "10" </channel> <set MinQuote="5">
The random quotes displayed in the "Most Active Nicks" section has a certain range specified. With this option you can change the minimum number of letters required for a random quote. Also see the MaxQuote option.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" MaxQuote = "70" </channel> <set MaxQuote="100">
The random quotes displayed in the "Most Active Nicks" section has a certain range specified. With this option you can change the maximum number of letters required for a random quote. Also see the MinQuote option.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" WordLength = "10" </channel> <set WordLength="2">
The "Most Used Words" section on the stats page display the most used words. The default is that a word only appears if it is longer than 5 characters. With this option you can change that minimum.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" QuoteWidth = "48" </channel> <set QuoteWidth="48">
Pisg will automatically insert a space in words that have a length over the amount QuoteWidth is set to. When used in breaking up URLs it will insert a space in the displayed URL, but not in the actual URL referenced by the HREF.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" BigNumbersThreshold = "10" </channel> <set BigNumbersThreshold="sqrt">
Pisg will ignore users with less than this setting lines in the "questions asked", "shouts loudest", "CAPSLOCK", "longest line", "most sad", and "most happy" sections. If the setting is "sqrt" (the default), it will be dynamically replaced with the square root of the number of lines of the most active nick. See also ShowOnlyTop.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" ActiveNicks = "50" </channel> <set ActiveNicks="10">
With this option you can define how many nicks you want to appear in the "Most Active Nicks" section on the stats page.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" ActiveNicks2 = "25" </channel> <set ActiveNicks2="10">
With this option you can define how many nicks you want to appear in the "These didn't make it" section on the stats page.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" ActiveNicksByHour = "25" </channel> <set ActiveNicksByHour="10">
With this option you can define how many nicks you want to appear in the "Most Active Nicks By Hour" section on the stats page.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" MostNicksHistory = "2" </channel> <set MostNicksHistory="10">
With this option you can define how many nicks you want to appear in the "Most used nicks" section.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" MostNicksVerbose = "0" </channel> <set MostNicksVerbose="1">
By disabling this option you can stop pisg from displaying all the nicks a user has had in the "Most used nicks" section.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" TopicHistory = "2" </channel> <set TopicHistory="10">
With this option you can define how many topics you want to appear in the "Latest topics" section.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" UrlHistory = "2" </channel> <set UrlHistory="10">
With this option you can define how many URLs you want to appear in the "Most referenced URLs" section.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" WordHistory = "5" </channel> <set WordHistory="15">
With this option you can define how many words you want to appear in the "Most used words" section.
<channel="#channel"> logfile = "channel.log" format = "mIRC" NickHistory = "3" </channel> <set NickHistory="15">
With this option you can define how many nicks you want to appear in the "Most referenced nicks" section.
Enabling this option will track nick changes as well as it can. It will then automatically create aliases for these nicks.
<channel="#channel"> logfile = "channel.log" format = "xchat" SortByWords = "0" </channel> <set SortByWords="1">
The location to the pictures used on the stats page - not the user pictures but the different bars in "Most Active Times".
UserPics allows you to configure the number of user pictures per row. Per default, one picture will be shown. Since pictures are usually higher than one line of text, this lets the table grow. With settings greater than 1, several pictures will be placed next to each other. A good setting would be UserPics=3 and pictures of size 60x60. Set UserPics to no or 0 to disable user pictures. The latter is useful if you share a user config file between channels and want to disable user pictures for some channels.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" ImagePath = "userpics/" </channel> <set ImagePath="users/">
ImagePath defines the path to where user pictures are located, relative to the HTML page generated. The default is that user pictures is located in the same directory as the HTML page.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" DefaultPic = "not_available.jpg" </channel> <set DefaultPic="unknown.gif">
DefaultPic defines a picture to be displayed for all users which have no other picture defined in the user element. This is good for showing "No picture available" or something. May contain globbing patterns, see ImageGlobPath below.
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" ImageGlobPath = "users/" </channel> <set ImageGlobPath="/var/www/pisg/"> <set DefaultPic="default-??.gif">
ImageGlobPath defines the path to the directory where user pictures are located, relative to the current directory. This setting is used to choose random pictures if ? or * (globbing characters) are used in the picture name. ? matches a single character, * matches a (possibly empty) string. The default is the ImagePath setting. (NB: This setting will be different from ImagePath if the latter is not relative to the current directory, e.g. if you are writing the HTML file outside of the current directory.)
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" PicWidth = "500" </channel> <set PicWidth="500">
PicWidth defines the standard width for user pictures. Setting the 'width' attribute of image-elements on the outputted stats page. See also PicHeight
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" PicHeight = "500" </channel> <set PicHeight="500">
PicHeight defines the standard height for user pictures. Setting the 'height' attribute of image-elements on the outputted stats page. See also PicWidth
<channel="#channel"> Logfile = "channel.log" Format = "xchat" Charset = "utf-8" </channel> <set Charset="iso-8859-15">
The pisg stats page defines a character set in a meta tag, this can be used if your country is using a different one than the default. Pisg will also use this setting to convert the language templates from LangFile if the language defines a source charset. Note: you also have to tell your webserver to transmit the charset to the browser. With Apache, use "AddDefaultCharset off" in the server config.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" Charset = "iso-8859-1" LogCharset = "utf-8" </channel> <set Charset="iso-8859-15"> <set LogCharset="iso-8859-15">
If LogCharset is set and different from Charset, pisg will convert the charset using Text::Iconv. Using this option slows down log processing.
<channel="#channel"> Logfile = "channel.log" Format = "xchat" Charset = "utf-8" LogCharset = "utf-8" LogCharsetFallback = "iso-8859-1" </channel> <set Charset="utf-8"> <set LogCharset="utf-8"> <set LogCharsetFallback="iso-8859-15">
LogCharsetFallback defines a fallback charset for the LogCharset conversion. This is useful if you have mixed unicode/iso-8859-* logs. Pisg will first try the conversion from LogCharset. If that fails, LogCharsetFallback is used. Note that this only works for charsets where certain byte sequences are illegal, like UTF-8. (In short: LogCharset = utf-8, LogCharsetFallback = iso-8859-15 works, the other way round does not.)
<channel="#channel"> Logfile = "channel.log" Format = "mIRC" Maintainer = "John" TimeOffset = "+5" </channel> <set TimeOffset="+2">
By default, pisg uses the time of the local machine to display the time of the generated stats. Sometimes when you have a shell on an external box, and it's in another country, you want to use another time. This is accomplished by the TimeOffset command.
Enabling this option will make all aliases in <user> lines be parsed as regular expressions; this setting also applies to the IgnoreWords, FoulWords, and ViolentWords settings.
With this option you have an alternative way to define the name and/or path to the language file. Usually you don't have to touch this option.
CssDir is used to define the paths to the CSS files (the color schemes). Usually you don't need to change this.