
NAME
	sylprint.pl - process a Sylpheed mail and print it using 
	enscript if available (or lpr if not)

SYNTAX
	sylprint.pl '%s' [-r] [options]

DESCRIPTION
	Sylprint is a perl script for printing mails from Sylpheed
	mailer. Syntax given is appropiate (and designed) for usage 
	in the "Printing" box of Sylpheed that appears when going
	Configuration->Common Preferences menu, Other tab.

	Sylprint translates the english header names given by 
	Sylpheed into the local language if available. Also wraps
	long lines without breaking words, and indents headers, all
	in order to make a nicer and easier to read hardcopy.

	There are other programs that produce a nicer hardcopy,
	for example muttprint, but you pay the price of requiring
	LaTeX installed for the job. Sylprint tries to do it nice,
	but no so nice and also lowering resources required.

	It also has a GTK interface (in development) if you don't
	want to remember all those flags. The interface is only that,
	an interface, thus isn't required at all for running
	sylprint script, but while an experienced user may prefer
	to use the script straightforward, a beginner may feel more
	comfortable with a "printing panel"-like window.

OPTIONS
	Options may be specfied in any order, but separated (i.e.: a
	valid specification is "-e -h" while "-eh" is not). 

	All the options except -p and -v have the purpose of changing
	or disabling something that is done by default, so if you like
	the default output all may be totally useless. But not always.

	Options are:

	-e      Do not use enscript at all (even if available).

	-f font
		Use font for printing mail. Font specification style
		is name[@{size|width/height}] (examples: 'Times',
		'Times@12', 'Times@8/10'). 
		Font syntax correctness is checked, but availability
		of the font on the system is not checked.
		Default font is 'Courier@9/13'.

	-h      Do not print page header. Page header includes date
		and page numbering and is generated by enscript.

	-p printer
		Use printer for printing (default is 'lp'). Printer
		is not checked at all, so must be a valid printer
		name within your system.

	-r	Do not parse user configuration file (sylprint.rc).
		This must be the first option after filename if used.

	-s [char] 
		Do not print separator line between headers and body
		unless char is specified, then set char as separator
		character in place of default one (underscore).

	-t      Do not translate mail headers.

	-v	Preview mail before printing. Preview is done using
		gv for enscript processed mails and gless for non
		processed ones.
		You can specify this option twice to avoid printing
		at all, in case you only want a preview.

	-w [number]
		If no number is given, disables line wrapping in
		mail text, else sets the column for wrapping to
		number instead of 79, which is the default value.

	-H	Do not print mail headers (From, To, etc.). This also
		disables separator line printing.

	-Q [quote chars]	
		Do not print quoted text (usually introduced by '>'). 
		You may supply the character or characters that lead 
		the quoted text. These character(s) must be the first
		on a line to be interpreted as quoted. 
		Remember to escape them from shell enclosed in single
		quotes ('|' for example) if required.

	-S	Do not print mail signature (mail signatures started
		with -- and carriage return).

	--	Finish option parsing. All the options specified after
		this are passed unmodified to enscript or lpr.

DIAGNOSTICS
	"required filename missing"
		No arguments were provided to the script, at least
		one, the filename with the mail to be printed, is
		required. See SYNTAX.

	"invalid font"
		The parameter of -f option does not match a valid
		font specification. See OPTIONS or enscript manpage.

	"invalid number"
		The parameter of -w option must be a decimal number
		without sign. See SYNTAX.

	"/usr/bin/lpr not found"
		The line printer command couldn't be stated. Be sure
		you have it installed where you configured, and if
		file permissions allow you to execute it. 
		In some systems access to printer(s) is restricted.
	
	"trying lpr: error message"
		The lpr command failed by some reason, luckily by the
		stated in error message.
	
	"/usr/bin/enscript not found, using lpr"
		Enscript can't be found there, be sure it's installed
		and you set the right path in the config.
		As fallback, mail is printed using (ugly) lpr.
	
	"charset not supported by enscript: using lpr"
		Enscript doesn't (actually) support:
			* euc-jp       (Japanese)
			* euc-kr       (Korean)
			* iso-8859-9   (Turkish)
			* gb2312, big5 (Chinese)
		charset encodings, so only lpr can be used with them.
	
ENVIRONMENT	
	LANG	If defined is used to guess the language that should
		be tried for translating and the charset encoding.
	
	HOME	For getting Sylpheed user's config directory.

	USER	For building temp files.

FILES
	sylprint.pl
		The script itself.

	sylprint.rc
		Stores user default preferred configuration for the
		script. Settings in this file may be overriden by
		command line options. Must be stored in the same
		directory of the script and/or in the ~/.sylpheed
		one (Sylpheed user's configuration directory).
	
	/tmp/sylprint.username.number
		Temporary files created to store a processed mail.
		Username is the login name of the user invoking the
		sylprint script and number is the PID of the script
		process itself.
		These files are actually deleted unless something went
		really wrong.

	/tmp/sylprint.username.number.ps
		Same as the former, used to store PostScript preview
		of mail if preview is enabled.

SEE ALSO
	Sylpheed: http://sylpheed.good-day.net
	Sylpheed Claws: http://sylpheed-claws.sourceforge.net
	Enscript: http://www.iki.fi/~mtr/genscript/
	Muttprint: http://bwalle.exit.mytoday.de/muttprint/
	Sylprint: http://www.aic.uniovi.es/mones/sylprint/

	enscript(1), lpr(1), gv(1)

LIMITATIONS
	Supported languages are only those supported by Sylpheed.
	 
	Supported encodings are only those supported by enscript.
	Charset encodings not supported by enscript are printed via
	lpr.

	There are languages partially translated, mainly because
	the strings lack of translation in the po files or I was 
	unable to guess a correct one from them. 
	Currently Greek is the only language in this category.

BUGS
	There is no enough command line options to set all config
	variables. This is not really a bug, because is intentional,
	only most common/useful features have an option. The rest
	can be set on the rc file.

	Diagnostic messages should be nicer and more informative.

	If you use a proportional font for printing mail with 
	enscript, all the header's alignment and long line wrapping
	may be (and almost surely be) lost.

AUTHOR
	The original author is Ricardo Mones Lastra, but much more
	people have, indirectly, contributed to this by providing
	Sylpheed translations, here used again:
	
        	Alfons Hoogervorst; Andreas Hinz; Ante Karamatić;
        	Danilo Bodei; Dmitry S. Sivachenko; Fabio Junior 
		Beneditto; Frank J. J. Weng; Görkem Çetin; Gustavo
		Noronha Silva; Hiroyuki Yamamoto; Jens Oberender;
		Joakim Andreasson; Martin Schaaf; Melvin Hadasht;
		Michalis Kabrianis; Paul Rolland; Peeter Vois;
		Przemyslaw Sulek; Sergey Vlasov; Székely Krisztián;
		Vincent van Adrighem; Vladimír Marek; Xiangxin Luo.
		
	(Obtained from "Last-Translator" field on current po files)

LICENSE
	Sylprint script, config files and documentation.
	(c) 2001 by Ricardo Mones Lastra <mones@aic.uniovi.es>.

	This program 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.
	
	This program 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.
	
	You should have received a copy of the GNU General Public 
	License	along with this program; if not, write to the Free 
	Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
	MA 02111-1307, USA.
	                         
