X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=onis;h=a61dd888deeb8e0023858a6804c2f6d6472172e7;hb=c1c52157534a513ad02391b57d4bf11738afe6cb;hp=5c2bb2ef93d2b30cebe8bdbbe8fc122df99d9872;hpb=edf9ee67a60fc5bc542ce36090effec420971d41;p=onis.git diff --git a/onis b/onis index 5c2bb2e..a61dd88 100755 --- a/onis +++ b/onis @@ -1,12 +1,12 @@ #!/usr/bin/perl ########################################################################## -# onis 0.8.0 2005-04-17 # +# onis 0.8.1 2005-04-23 # #---=============--------------------------------------------------------# # Language: Perl # # Purpose: Generating statistics # # Input: IRC-Logfiles # # Output: One HTML file # -# Version: 0.8.0 (unstable) # +# Version: 0.8.1 (unstable) # # License: GPL # # Homepage: http://verplant.org/onis/ # # Authors: Florian octo Forster # @@ -32,14 +32,32 @@ BEGIN use strict; use warnings; +use vars qw/$VERSION $REVISION/; use Onis::Config qw/get_config parse_argv read_config/; use File::Basename qw/dirname/; use Fcntl qw/:flock/; -use vars qw/$VERSION $REVISION/; +=head1 NAME + +onis - onis not irs stats + +=head1 SYNOPSIS + +B [I] I... + +=head1 DESCRIPTION + +onis is a script that converts IRC logfiles into an HTML statistics page. It +provides information about daily channel usage, user activity, and channel +trivia. It provides a configurable customization and supports Dancer, +dircproxy, eggdrop, irssi, mIRC, and XChat logs. Persistent data (history +files) and automatic log purging make onis applicable for a large number of +logfiles. It also features a powerful translation infrastructure. -$VERSION = ''; +=cut + +$VERSION = '0.8.1'; $REVISION = '$LastChangedRevision$'; if (!$VERSION) @@ -48,11 +66,11 @@ if (!$VERSION) $VERSION =~ s/^\D*(\d+).*/r$1/; } +print STDERR $/, __FILE__, ': $Id$' if ($::DEBUG); + our $FileInfo; our $PurgeLogs = 0; -print STDERR $/, __FILE__, ': $Id$' if ($::DEBUG); - parse_argv (@ARGV); read_config (get_config ('config') ? get_config ('config') : 'onis.conf'); read_config (scalar get_config ('theme')) if (get_config ('theme')); @@ -71,7 +89,6 @@ foreach ('Core', get_config ('plugin')) if (!get_config ('input')) { - # TODO: Make a complete (!) lsit.. print STDERR < [logfile logfile ..] @@ -85,7 +102,7 @@ Options: See 'config' for a complete list. --user Define's the generator's name. -For a full list of all options please read the ``config'' file. +For a full list of all options please read the onis(1) manpage. EOF exit (1); } @@ -342,3 +359,211 @@ END { print $/ if ($::DEBUG); } + +=head1 OPTIONS + +=head2 Core options + +=over 4 + +=item B: I; + +Load the config from this file. B<(command line only)> + +=item B: I; + +Sets the file from which to read the user configuration. + +=item B: I; + +Sets the language file/translation to use. + +=item B: I; + +Sets the plugins to load. The plugin B will always be loaded. + +=item B: I; + +Read and parse this file(s). B<(config file only)> + +=item B: I; + +Sets the parser to use for parsing the input file. + +=item B: I; + +Write the generated output to this file. + +=item B: I; + +Sets wether or not to overwrite the output-file if it exists. + +=item B: "I" | "I" | "I"; + +Sets wether logs should be truncated or even removes after they have been +parsed. + +=item B: I; + +Sets the user that created the page. Defaults to the environment variable +B or "onis", if it is not set. + +=item B: I; + +Sets the name of the channel being parsed. Normally this is auto-detected. + +=item B: "I" | "I" | "I" | "I"; + +Sets how to do unsharping. What each setting actually does is described in the +readme and in L. + +=back + +=head2 Appearance + +=over 4 + +=item B: I; + +Theme file to load. + +=item B: I; + +Sets the stylesheet to use. This is included in the HTML-file as-is, so you +have to take care of absolute/relative paths yourself.. + +=item B: I; + +Wether or not to print the color codes (introduced by mIRC, used by idiots and +ignored by the rest) in the generated HTML-file. Of course this defaults to not +print the codes.. + +=item B: I; + +Sets if user-images should be displayed. + +=item B: I; + +Sets the default image to use if no user-defined image is available. + +=item B: "I" | "I" | "I" | "I"; + +=item B: "I" | "I" | "I" | "I"; + +=item B: "I" | "I" | "I" | "I"; + +Sets if and how lines, words and/or characters should be displayed. + +=item B: "I" | "I" | "I"; + +Sets wether to sort by lines, words or characters written. + +=item B: I; + +Wether or not to display a fixed width bar that shows when a user is most +active. + +=item B: I, I, I, I; + +=item B: I, I, I, I; + +Sets the images to use for horizontal and vertical bars. This should be used in +the theme-file. + +=item B: I; + +Sets the encoding to include in the HTML-file. If you don't know what this is, +don't change it.. + +=item B: I; + +Wether or not this is a public page. Public pages may be linked on the onis +homepage at some point in the fututre.. + +=back + +=head2 Storage / Persistency + +=over 4 + +=item B: I; + +Sets the storage-module to use. + +=item B: I; + +Sets the directory to store persistency information under. + +=item B: I; + +Sets the file to write persistency data to, if applicable by the +storage-module. + +=back + +=head2 Plugins + +=over 4 + +=item B: I; + +Substring containing only word-characters needs to be this long to be +considered a word. + +=item B: I; + +Sets the number of "most referenced nicks", "most used words" and the like to +be displayed. This option will be removed in the future. + +=item B: I; + +=item B: I; + +The number of lines in the big and the small table. While in the big table one +line is dedicated for one person the small table displays six persons per line. + +=item B: I; + +Sets how many quotes are to be cached for each nick. At the end of the run one +of the quotes in the cache will be chosen at random and displayed. + +=item B: I; + +=item B: I; + +Sets the minimum and maximum length of a quote. Too short quotes may be not +very typical for a person, too long quotes may clutter the layout. + +=item B: I; + +=item B: I; + +Number of conversations partners to include in the output (or in the +conversations section of the userdetails plugin). + +=item B: I; + +Sets how many lines without interruption are considered a soliloquy. + +=item B: I; + +=item B: I; + +Sets the number of days shown in the longterm-plugin (or the longter-section of +the userdetails-plugin). + +=item B: I; + +The Words-Plugin will ignore words with less than this characters. + +=item B: I; + +The number of nicks to print userdetails for. + +=back + +=head1 AUTHOR + +Florian Forster Eocto at verplant.orgE + +=cut