aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/README.getmail
blob: 237889cd86d5ffda44646eaa36e5dbbc34464ac1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
-------------------------------------------------------------------------------

                         - GetMail - GotMail -

             1999 by Thomas Nesges <ThomaNesges@TNT-Computer.de>

-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
Installation:
-------------------------------------------------------------------------------
The Installation is as simple as it could be.  Just create the directory
/usr/local/gotmail and copy all files to it. Ready.

If you decide to choose an other directory to copy the files to, don't forget
to change the path in the scripts.

-------------------------------------------------------------------------------
Usage:
-------------------------------------------------------------------------------
GetMail starts with: getmail <option>

options:
 clear  - stops fetchmail and kills the logfile
 fetch  - starts fetchmail
 got    - starts gotmail
 goth   - starts gotmail html
 send   - sends all mail from the mailqueue
 status - tails the logfile
 start  - starts fetchmail and tails the logfile
 stop   - stops fetchmail
 -v     - prints GetMails version number

GotMail can be startet without any parameters. It then prints a statistic
on the console. The only parameters so far are:

 html   - prints the output to an html file specified in gotmail.conf
 -v     - prints GotMails version number

-------------------------------------------------------------------------------
Configuration
-------------------------------------------------------------------------------
GotMail is configured by a file named gotmail.conf either in the user's home
dir, in /etc or in /usr/local/gotmail. gotmail.conf itself is a shell script.
It just exports some variables to the environment. So it's syntax is like this:

 export <OPTION>=<VALUE>

Remember not to put spaces between <OPTION>=<VALUE> !!
You have the folllowing options:
 
  GOTM_ERR	yes|no		print error messages?
  GOTM_MSG	yes|no		print mail stats?
  GOTM_TIM	yes|no		print start/stop stats?
  GOTM_HED	yes|no		print a header?

 Special HTML options:
  GOTM_BGCOL	hex color	backgroundcolor
  GOTM_TXCOL	hex color	textcolor
  GOTM_ERRCOL	hex color	color of error messages
  GOTM_TIMCOL	hex color	color of start/stop stats
  GOTM_MSGCOL	hex color	color of mail stats
  GOTM_HTMLFILE	filename	filename for html output
-------------------------------------------------------------------------------
pan class="o">="modules.html">Modules</a> &nbsp; </center> <hr><h1>TRIO Documentation</h1> <p> <dl compact><dt><b> Author: </b><dd> Bj�rn Reese , Daniel Stenberg</dl><a name="intro"><h2>Introduction</h2></a> <p> Trio is a fully matured and stable set of printf and string functions designed be used by applications with focus on portability or with the need for additional features that are not supported by standard stdio implementation. <p> There are several cases where you may want to consider using trio: <p> <ul> <li> Portability across heterogeneous platforms. <li> Embedded systems without stdio support. <li> Extendability of unsupported features. <li> Your native version does not do everything you need.</ul> When you write applications that must be portable to a wide range of platforms you often have to deal with inadequate implementations of the stdio library functions. Most notably is the lack of secure formatting functions, such as snprintf, or the lack of parameter reordering commonly used for the internationalization of applications, such as the &lt;num&gt;$ modifier. Sometimes the feature you need is simply not present in stdio. So you end up spending much effort on determining which platforms supports what, and to write your own versions of various features. This is where trio can help you. Trio is a platform-independent implementation of the stdio printf and scanf functions and the string library functions. <p> The functionality described in the stdio standards is a compromise, and does unfortunately not include a mechanism to extend the functionality for an individual application. Oftentimes an application has the need for an extra feature, and the application code can become much more clear and readable by using an extension mechanism. Trio supports a range of useful extensions such as user-defined specifiers, passing of arguments in arrays, localized string scanning, thousand-separators, and arbitrary integer bases. <p> Trio fully implements the C99 (ISO/IEC 9899:1999) and UNIX98 (the Single Unix Specification, Version 2) standards, as well as many features from other implemenations, e.g. the GNU libc and BSD4. <p> <a name="examples"><h2>Examples</h2></a> <p> <a name="ex1"><h3>Binary Numbers</h3></a> Output an integer as a binary number using a trio extension. <div class="fragment"><pre> trio_printf("%..2i\n", number); </pre></div> <p> <a name="ex2"><h3>Thousand-separator</h3></a> Output a number with thousand-separator using a trio extension. <div class="fragment"><pre> trio_printf("%'f\n", 12345.6); </pre></div> The thousand-separator described by the locale is used. <p> <a name="ex3"><h3>Fixed Length Array and Sticky Modifier</h3></a> Output an fixed length array of floating-point numbers. <div class="fragment"><pre> double array[] = {1.0, 2.0, 3.0}; printf("%.2f %.2f %.2f\n", array[0], array[1], array[2]); </pre></div> The same with two trio extensions (arguments are passed in an array, and the first formatting specifier sets the sticky option so we do not have to type all the formatting modifiers for the remaining formatting specifiers) <div class="fragment"><pre> trio_printfv("%!.2f %f %f\n", array); </pre></div> Another, and more powerful, application of being able to pass arguments in an array is the creation of the printf/scanf statement at run-time, where the formatting string, and thus the argument list, is based on an external configuration file. <p> <a name="ex4"><h3>Localized scanning</h3></a> Parse a string consisting of one or more upper-case alphabetic characters followed by one or more numeric characters. <div class="fragment"><pre> sscanf(buffer, "%[A-Z]%[0-9]", alphabetic, numeric); </pre></div> The same but with locale using a trio extension. <div class="fragment"><pre> trio_sscanf(buffer, "%[[:upper:]]%[[:digit:]]", alphabetic, numeric); </pre></div> <p> <a name="legal"><h2>Legal Issues</h2></a> Trio is distributed under the following license, which allows practically anybody to use it in almost any kind of software, including proprietary software, without difficulty. <p> "Copyright (C) 1998-2001 Bjorn Reese and Daniel Stenberg. <p> Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. <p> THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER." <p> <a name="contribution"><h2>Contribution</h2></a> <p> <a name="contribute"><h3>Contribute</h3></a> We appreciate any type of contribution, from ideas over improvements to error corrections. <p> The project space contains references to bug and feature tracking, mailing-list, and the CVS repository. We prefer communication via the mailing-list, but do not require you to be subscribed, because trio is a small project. <p> The project space is located at <a href="http://sourceforge.net/projects/ctrio/">http://sourceforge.net/projects/ctrio/</a> <p> <a name="contributors"><h3>Contributors</h3></a> We have received contributions from the following persons (in alphabetic order sorted by surname) <p> <ul> <li> Craig Berry <li> Stan Boehm <li> Robert Collins <li> Danny Dulai <li> John Fotheringham <li> Markus Henke <li> Ken Gibson <li> Paul Janzen <li> Richard Jinks <li> Tero J�nk� <li> Howard Kapustein <li> Mehdi Lavasani <li> Alexander Lukyanov <li> Emmanuel Mogenet <li> Jacob Navia <li> Jose Ortiz <li> Joe Orton <li> Gisli Ottarsson <li> Marc Werwerft <li> Igor Zlatkovic</ul> Please let us know, and accept our apology, if we have omitted anybody. <p> <HR> <center class="copyright">Copyright (C) 2001 Bj&oslash;rn Reese and Daniel Stenberg.</center> </body> </html>