Salut Nabil.
I already started working with lettre.cls, but never went deeply into the
fax part. In fact, I stopped when I got the very minimum I needed. lazzy
boy!
So I havent exactly your answer, but this file may help you anyway.
There is a lot of thing a layout can do, by putting LaTeX cod einto the
Preamble.
Here, the idea was to get rid of the imposed order of letter and so on
classes( I like to write a letter as I am used to see it). So each layout,
instead of using the Latex command, declared a variables. The appropriate
latex construction is done once a new "lettre" or "fax" is encountered
(with lettre.cls there may be more than one on a file), and when the "fin
de fichier" layout is encountered.
So, for the fax, you could declare a "numero du destinataire" and a
"destinataire" layouts, which set LaTeX variables destNumber and destId,
and then when buildind the correct LaTeX output use
\telefax{\destNumber}{\destId}
If you adopt this scheme, I will be glad to use your layout (I insist to
make LyX lettre layout "order insensitive"). And maybe I could find some
time to help you a little bit (but remember, I am lazzy).
Anyway, if my draft can help you, here it is.
Have fun
Alain
On Fri, 2 Feb 2001, Nabil Hathout wrote:
> Hello,
>
> I am trying to make a layout for the lettre.cls written by Denis Mégevaud. I
> have had no problem for the "lettre" TextClass but I am having one whith the
> "telefax" one, namely that they must start with \telefax{XXX}{YYY} where XXX is
> the fax number and YYY is the recepiender name and I have not found any "style"
> that could generate this kind of structure. Is this acheivable or is it
> necessary to use a dialog box (as for the citation insertions) ?
>
> There might be another solution, that is to modify the lettre class, but then
> the layout will be dependant of this modification.
>
> Thank you in advance,
>
> --Nabil Hathout
>
Veuillez noter ma nouvelle adresse "courriel". Merci
PLEASE NOTE my new email address.Thank's
*******************************************************************
* Alain Castera *
* LPNHE - Tour 33 RdC | e-mail : [EMAIL PROTECTED] *
* 4 Place Jussieu | or [EMAIL PROTECTED] *
* 75252 Paris Cedex 05 | Telephone : (+33) 144274187 *
* France | Fax : (+33) 144274638 *
*******************************************************************
#% Do not delete the line below; configure depends on this
# \DeclareLaTeXClass{lettre (Francais)}
# French Letter textclass definition file.
# Author : Alain Castera <[EMAIL PROTECTED]>
# Modifies only some things from letter.layout
# to use the lettre.cls class from Denis Megevand
# Input general definitions
Input letter.layout
# (Re)define some stuff
Preamble
%% to allow reorder commands when needed
\newif\ifneedsendletter
\newif\ifneedsendfax
%% Sometimes you don't want a closing
\def\Lyclose{}
%% automatic assignment of signatures (only one Signature Style
\long\def\lyxsig#1{
\@ifundefined{Lysigp}{\def\Lysigp{#1}}
{\@ifundefined{Lysigs}{\def\Lysigs{#1}}{\def\Lysigt{#1}}}
}
\long\def\lyxsigp#1{\def\Lysigp{#1}}
\long\def\lyxsigs#1{\def\Lysigs{#1}}
\long\def\lyxsigt#1{\def\Lysigt{#1}}
%%
\long\def\lyxclose#1{\def\Lyclose{#1}}
\long\def\lyxsubj#1{\def\Lysubj{#1}}
\long\def\lyxps#1{\def\Lyps{#1}}
\long\def\lyxenc#1{\def\Lyenc{#1}}
\long\def\lyxmenc{\def\Lymenc{\menc}}
\long\def\lyxcc#1{\def\Lycc{#1}}
\newcommand{\findemessage}
{
\ifneedsendletter
\@ifundefined{Lysigp}{\name{}}{\signature{\Lysigp}}
\@ifundefined{Lysigs}{}{\secondsignature{\Lysigs}}
\@ifundefined{Lysigt}{}{\thirdsignature{\Lysigt}}
\closing{\Lyclose}
\@ifundefined{Lyps}{}{\ps{P.S. : }{\Lyps}}
\@ifundefined{Lycc}{}{\cc{\Lycc}}
\@ifundefined{Lyenc}{}{\encl{\Lyenc}}
\end{letter}
\needsendletterfalse
\fi
\ifneedsendfax \end{telefax}
\needsendfaxfalse
\fi
}
EndPreamble
# My Address style
Style MonAdresse
Margin Static
LatexType Command
LatexName address
ParSkip 0.4
BottomSep 1.5
ParSep 1.5
Align Left
AlignPossible Left
End
# City name style
Style Lieu
Margin Static
LatexType Command
LatexName lieu
LeftMargin Ville::xx
LabelSep xx
TopSep 0.4
BottomSep 0.4
ParSep 0.4
Align Block
AlignPossible Block, Left
LabelType Static
LabelString Ville:
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
#suppress City indication
Style NoLieu
KeepEmpty 1
LatexType Command
LatexName nolieu
LabelType Static
LeftMargin NoLieuxx
LabelString NoLieu
# label font definition
LabelFont
Series Bold
Latex Latex
EndFont
End
# date Style
Style Date
Margin Static
LatexType Command
LatexName date
LeftMargin Date::xx
LabelSep xx
TopSep 0.4
BottomSep 0.4
ParSep 0.4
Align Block
AlignPossible Block, Left
LabelType Static
LabelString Date:
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
#suppress date indication
Style NoDate
KeepEmpty 1
LatexType Command
LatexName nodate
LabelType Static
LeftMargin NoDatexx
LabelString NoDate
# label font definition
LabelFont
Series Bold
Latex Latex
EndFont
End
# location (i.e. office, department ...)
Style Localisation
Margin Static
LatexType Command
LatexName location
LeftMargin Location::xx
LabelSep xx
TopSep 0.4
BottomSep 0.4
ParSep 0.4
Align Block
AlignPossible Block, Left
LabelType Static
LabelString Location:
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
# telephone Style
Style Telephone
Margin Static
LatexType Command
LatexName telephone
LeftMargin Tel::xx
LabelSep xx
TopSep 0.4
BottomSep 0.4
ParSep 0.4
Align Block
AlignPossible Block, Left
LabelType Static
LabelString Tel:
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
#suppress telephone indication
Style NoTelephon
KeepEmpty 1
LatexType Command
LatexName notelephone
LabelType Static
LeftMargin NoTelxx
LabelString NoTel
# label font definition
LabelFont
Series Bold
Latex Latex
EndFont
End
# telefax Style
Style Fax
Margin Static
LatexType Command
LatexName fax
LeftMargin Fax::xx
LabelSep xx
TopSep 0.4
BottomSep 0.4
ParSep 0.4
Align Block
AlignPossible Block, Left
LabelType Static
LabelString Fax:
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
#suppress fax indication
Style NoFax
KeepEmpty 1
LatexType Command
LatexName nofax
LabelType Static
LeftMargin NoFaxxx
LabelString NoFax
# label font definition
LabelFont
Series Bold
Latex Latex
EndFont
End
# Email Style
Style Email
Margin Static
LatexType Command
LatexName email
LeftMargin Email::xx
LabelSep xx
TopSep 0.4
BottomSep 0.4
ParSep 0.4
Align Block
AlignPossible Block, Left
LabelType Static
LabelString Email:
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
Style Destinataire
Margin Right_Address_Box
LatexType Command
LatexName lettre
Preamble
\newcommand{\lettre}[1]
{ \findemessage
\begin{letter}{#1}
\needsendlettertrue
}
EndPreamble
End
#As a temporary(?) trick
Style FinDeFichier
KeepEmpty 1
LatexType Command
LatexName findemessage
LabelType Static
LabelString Fin_du_fichier.
LeftMargin Fin_du_fichier.
# label font definition
LabelFont
Series Bold
Shape Italic
Latex Latex
EndFont
End
# Opening style definition
Style Accroche
CopyStyle Opening
LeftMargin Accroche::xx
LabelString Accroche:
End
# Signature style definition
Style Signature
LeftMargin Signature::xx
LabelString Signature:
LatexName lyxsig
End
# Closing style definition
Style FormuleDePolitesse
CopyStyle Closing
LeftMargin Salutations::xx
LabelString Salutations:
LatexType Command
LatexName lyxclose
End
# encl style definition
Style incl
CopyStyle encl
LeftMargin Ci-joint::xx
LabelString Ci-joint:
LatexName lyxenc
End
#Carbon Copy
Style cc
LatexName lyxcc
End
#Post Scriptum
Style Post_Scriptum
Margin Static
LatexType Command
LatexName lyxps
LabelSep xx
LabelType Static
LeftMargin P.S.::xx
LabelString P.S.:
LatexName lyxps
End
# now suppress unwanted styles
NoStyle My_Address
NoStyle Send_To_Address
NoStyle Opening
NoStyle Closing
NoStyle encl