summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/engpron
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/engpron
Initial commit
Diffstat (limited to 'macros/latex/contrib/engpron')
-rw-r--r--macros/latex/contrib/engpron/LISEZMOI87
-rw-r--r--macros/latex/contrib/engpron/Makefile155
-rw-r--r--macros/latex/contrib/engpron/README86
-rw-r--r--macros/latex/contrib/engpron/engpron-en.pdfbin0 -> 499153 bytes
-rw-r--r--macros/latex/contrib/engpron/engpron-ex-en.pdfbin0 -> 412817 bytes
-rw-r--r--macros/latex/contrib/engpron/engpron-ex-fr.pdfbin0 -> 414243 bytes
-rw-r--r--macros/latex/contrib/engpron/engpron-fr.pdfbin0 -> 573117 bytes
-rw-r--r--macros/latex/contrib/engpron/engpron.dtx2152
-rw-r--r--macros/latex/contrib/engpron/engpron.ins75
-rw-r--r--macros/latex/contrib/engpron/engpron.pdfbin0 -> 503791 bytes
10 files changed, 2555 insertions, 0 deletions
diff --git a/macros/latex/contrib/engpron/LISEZMOI b/macros/latex/contrib/engpron/LISEZMOI
new file mode 100644
index 0000000000..a348466788
--- /dev/null
+++ b/macros/latex/contrib/engpron/LISEZMOI
@@ -0,0 +1,87 @@
+% -*- coding: utf-8 -*-
+% Time-stamp: <2008-08-15T09:31:17 (cest) [yvon sur hypatie]>
+
+ENGPRON 2 2008-08-15
+Édition du cinquantenaire
+
+------------------------------------------------------------
+ DESCRIPTION :
+------------------------------------------------------------
+
+Ce lot comprend
+------------------------------------------------------------
+% le module lui-même
+engpron.sty
+% documentation bilingue OnlyDescription
+engpron.pdf
+% documentation pour l'utilisateur final
+engpron-fr.pdf % en français
+engpron-en.pdf % en anglais
+% fichiers d’exemples
+engpron-ex-fr.pdf % en français
+engpron-ex-en.pdf % en anglais
+% pour *nix make
+Makefile
+% sources
+engpron.dtx engpron.ins
+% partie anglaise
+README
+% partie française
+LISEZMOI % ce fichier
+% archive conforme à la TDS
+engpron.tds.zip
+
+------------------------------------------------------------
+ COMPILATION :
+------------------------------------------------------------
+Pour utilisateur *nix :
+make
+ou
+make all
+pour produire les fichiers de style et la documentation
+
+make clean
+pour supprimer les fichiers auxiliaires
+
+make distclean
+pour revenir à l'état pour la publication sur CTAN
+------------------------------------------------------------
+Sans utilisation du Makefile
+1) compiler engpron.ins avec LATEX
+cela produit les fichiers suivants :
+engpron-en.ltx % documentation en anglais
+engpron-ex-en.tex % exemple en anglais
+engpron-fr.ltx % documentation en français
+engpron-ex-fr.tex % exemple en français
+engpron-tools.sty % pour produire la documentation
+engpron.sty % le fichier de style
+2) pour produire la documentation
+ 1) lancer pdflatex sur engpron-fr.ltx deux fois ;
+ 2) lancer « makeindex engpron-fr » ;
+ 3) lancer pdflatex sur engpron-fr.ltx une fois ;
+ 4) lire !
+
+============================================================
+ CHANGEMENTS.
+============================================================
+ENGPRON 2 2008-08-15
+Le caractère actif £ est rendu robuste au sens des arguments
+mobiles de LaTeX. Utilise drac.sty si l'option « drac » est
+choisie comme c'est le cas par défaut.
+Option contraire : nodrac.
+
+Macro pour syllabisation. Elle produit un glyphe si l'option
+« visible » est en vigueur. Option contraire : invisible.
+
+Les macros d'accents toniques permettent la césure si
+l'option « hyphenable » est en vigueur. Option contraire :
+unhyphenable.
+
+------------------------------------------------------------
+
+ENGPRON 1 2004-05-20
+1re version publique.
+
+--
+Yvon Henel, le TeXnicien de surface
+le.texnicien.de.surface@wanadoo.fr
diff --git a/macros/latex/contrib/engpron/Makefile b/macros/latex/contrib/engpron/Makefile
new file mode 100644
index 0000000000..95abe8c29a
--- /dev/null
+++ b/macros/latex/contrib/engpron/Makefile
@@ -0,0 +1,155 @@
+# ---------------------------------------------------------------
+# Makefile for the engpron package by Y. Henel
+# modified version of the Makefile of the kerntest package
+# many thanks to Harald Harders
+# ---------------------------------------------------------------
+PKGNAME= engpron
+VERSION= 2 # Edition du cinquantenaire
+
+TEX= \
+ $(PKGNAME).sty
+
+DOC= \
+ $(PKGNAME).pdf \
+ $(PKGNAME)-en.pdf \
+ $(PKGNAME)-fr.pdf \
+ $(PKGNAME)-ex-fr.pdf \
+ $(PKGNAME)-ex-en.pdf \
+ LISEZMOI \
+ README
+
+SOURCE= \
+ Makefile \
+ $(PKGNAME).dtx \
+ $(PKGNAME).ins \
+
+PRODUITS= \
+ $(PKGNAME).sty \
+ $(PKGNAME)-tools.sty \
+ $(PKGNAME).pdf \
+ $(PKGNAME)-en.pdf \
+ $(PKGNAME)-fr.pdf \
+ $(PKGNAME)-en.ltx \
+ $(PKGNAME)-fr.ltx \
+ $(PKGNAME)-ex-fr.pdf \
+ $(PKGNAME)-ex-en.pdf \
+ $(PKGNAME)-ex-fr.tex \
+ $(PKGNAME)-ex-en.tex
+
+
+REPERTS= \
+ doc \
+ tex \
+ source
+
+# ---------------------------------------------------------------
+
+.SUFFIXES: .sty .ins .dtx .dvi .ps .pdf .ltx
+
+# ---------------------------------------------------------------
+.ins.sty:
+ latex $<
+### MUST BE latex DOES *NOT* WORK WITH ``simple'' TEX
+
+.dtx.pdf:
+ pdflatex $<
+ pdflatex $<
+ makeindex -s gind.ist $(*D)/$(*F)
+ makeindex -s gglo.ist -o $(*D)/$(*F).gls $(*D)/$(*F).glo
+ pdflatex $<
+
+.ltx.pdf:
+ pdflatex $<
+ pdflatex $<
+ makeindex $(*D)/$(*F)
+ pdflatex $<
+
+.tex.pdf:
+ pdflatex $<
+ pdflatex $<
+
+# ---------------------------------------------------------------
+
+all: $(PKGNAME).sty $(PKGNAME).pdf\
+ $(PKGNAME)-tools.sty\
+ $(PKGNAME)-ex-fr.pdf $(PKGNAME)-ex-fr.tex\
+ $(PKGNAME)-ex-en.pdf $(PKGNAME)-ex-en.tex\
+ $(PKGNAME)-en.pdf $(PKGNAME)-en.ltx\
+ $(PKGNAME)-fr.pdf $(PKGNAME)-fr.ltx
+# ---------------------------------------------------------------
+
+help:
+ @-echo "************************************************************"
+ @-echo "* *"
+ @-echo "* Choisir une des options : *"
+ @-echo "* 'all' -> engpron.sty *"
+ @-echo "* 'doc' pour la documentation *"
+ @-echo "* 'doc' for the documentation *"
+ @-echo "* 'sty' -> engpron.sty *"
+ @-echo "* 'dist'-> engpron.sty & doc *"
+ @-echo "* 'clean' petit nettoyage *"
+ @-echo "* 'distclean' (encore plus propre) *"
+ @-echo "* *"
+ @-echo "************************************************************"
+# ---------------------------------------------------------------
+
+dist: all clean
+
+# ---------------------------------------------------------------
+
+clean:
+ @-rm -f *.{aux,log,toc,out,glo,gls,ilg,ind,idx,hd}
+ @-rm -f *~
+
+# ---------------------------------------------------------------
+
+distclean: clean
+ @-rm -f $(PRODUITS)
+
+# ---------------------------------------------------------------
+
+texlive: all clean
+ @-rm -rf $(REPERTS)
+ @-mkdir -p tex/latex/$(PKGNAME)
+ @-mkdir -p doc/latex/$(PKGNAME)
+ @-mkdir -p source/latex/$(PKGNAME)
+ @-cp $(TEX) tex/latex/$(PKGNAME)
+ @-cp $(DOC) doc/latex/$(PKGNAME)
+ @-cp $(SOURCE) source/latex/$(PKGNAME)
+ @-mkdir -p $(PKGNAME)
+ @-cp $(DOC) ./$(PKGNAME)
+ @-cp $(SOURCE) ./$(PKGNAME)
+ @-cp $(TEX) ./$(PKGNAME)
+
+# ---------------------------------------------------------------
+
+zip: texlive
+ @-rm -f $(PKGNAME).zip
+ @-zip -r $(PKGNAME) $(REPERTS)
+ @-rm -rf $(REPERTS)
+ @mv $(PKGNAME).zip $(PKGNAME).tds.zip
+ @zip -r $(PKGNAME) $(PKGNAME)
+ @zip -r $(PKGNAME) $(PKGNAME).tds.zip
+ @-rm -rf $(PKGNAME)
+ @-rm -f $(PKGNAME).tds.zip
+
+# ---------------------------------------------------------------
+ctan: zip distclean
+
+# ---------------------------------------------------------------
+
+$(PKGNAME).sty: $(PKGNAME).ins $(PKGNAME).dtx
+
+$(PKGNAME)-tools.sty: $(PKGNAME).ins $(PKGNAME).dtx
+$(PKGNAME)-en.ltx: $(PKGNAME).ins $(PKGNAME).dtx
+$(PKGNAME)-fr.ltx: $(PKGNAME).ins $(PKGNAME).dtx
+$(PKGNAME)-ex-en.tex: $(PKGNAME).ins $(PKGNAME).dtx
+$(PKGNAME)-ex-fr.tex: $(PKGNAME).ins $(PKGNAME).dtx
+
+sty: $(PKGNAME).sty $(PKGNAME)-tools.sty
+
+doc: $(PKGNAME).ins $(PKGNAME).pdf
+
+# ---------------------------------------------------------------
+# echu e an abaden
+# Le \TeX nicien de surface 2008-05-10
diff --git a/macros/latex/contrib/engpron/README b/macros/latex/contrib/engpron/README
new file mode 100644
index 0000000000..40f4417973
--- /dev/null
+++ b/macros/latex/contrib/engpron/README
@@ -0,0 +1,86 @@
+% Time-stamp: <2008-08-15T10:09:30 (cest) [yvon sur hypatie]>
+
+ENGPRON 2 2008-08-15
+50th anniversary edition
+
+------------------------------------------------------------
+ DESCRIPTION :
+------------------------------------------------------------
+
+This bundle contains
+------------------------------------------------------------
+% the package itself
+engpron.sty
+% bilingual OnlyDescription documentation
+engpron.pdf
+% documentation for the final user
+engpron-fr.pdf % in French
+engpron-en.pdf % in English
+% examples
+engpron-ex-fr.pdf % in French
+engpron-ex-en.pdf % in English
+% for *nix make
+Makefile
+% sources
+engpron.dtx engpron.ins
+% English part
+README % this file
+% French part
+LISEZMOI
+% TDS-compliant archive
+engpron.tds.zip
+
+------------------------------------------------------------
+ COMPILATION :
+------------------------------------------------------------
+For *nix user:
+make
+or
+make all
+to produce all the files and documentation
+
+make clean
+to erase auxiliary files
+
+make distclean
+to come back to prepublication state
+------------------------------------------------------------
+Without Makefile
+1. run engpron.ins through LATEX (not TeX)
+that produces the following files
+engpron-en.ltx % English documentation
+engpron-ex-en.tex % English example
+engpron-fr.ltx % French documentation
+engpron-ex-fr.tex % French example
+engpron-tools.sty % a package to produce the documentation
+engpron.sty % the package
+2. to produce English documentation
+ 1/ run engpron-en.ltx through pdflatex twice
+ 2/ run ``makeindex engpron-en''
+ 3/ run engpron-en.ltx through pdflatex once
+ 4/ read!
+
+============================================================
+ CHANGES.
+============================================================
+ENGPRON 2 2008-08-15
+The active character £ is made `robust' with the meaning
+this word has in LaTeX parlance (moving argument) with the
+package drac if option `drac' is choosen as it is the case
+by default. Opposite option `nodrac'.
+
+Macros for syllable divisions and hyphenation.
+
+The macros for stress marking enable hyphenation if option
+`hyphenable' is enforced. Opposite option `unhyphenable'
+
+The macros for syllable divisions produce a glyph if option
+`visible' is enforced. Opposite option `invisible'.
+------------------------------------------------------------
+
+ENGPRON 1 2004-05-20
+1re version publique.
+
+--
+Yvon Henel, le TeXnicien de surface
+le.texnicien.de.surface@wanadoo.fr
diff --git a/macros/latex/contrib/engpron/engpron-en.pdf b/macros/latex/contrib/engpron/engpron-en.pdf
new file mode 100644
index 0000000000..a9029ba304
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/engpron/engpron-ex-en.pdf b/macros/latex/contrib/engpron/engpron-ex-en.pdf
new file mode 100644
index 0000000000..bf9bc503bf
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron-ex-en.pdf
Binary files differ
diff --git a/macros/latex/contrib/engpron/engpron-ex-fr.pdf b/macros/latex/contrib/engpron/engpron-ex-fr.pdf
new file mode 100644
index 0000000000..abfb62fe2b
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron-ex-fr.pdf
Binary files differ
diff --git a/macros/latex/contrib/engpron/engpron-fr.pdf b/macros/latex/contrib/engpron/engpron-fr.pdf
new file mode 100644
index 0000000000..13f35b8675
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron-fr.pdf
Binary files differ
diff --git a/macros/latex/contrib/engpron/engpron.dtx b/macros/latex/contrib/engpron/engpron.dtx
new file mode 100644
index 0000000000..40defbbfbd
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron.dtx
@@ -0,0 +1,2152 @@
+% \iffalse meta-comment
+%-*- coding: iso-8859-15 -*-
+% Time-stamp: <2008-08-15T10:03:33 (cest) [yvon sur hypatie]>
+% --------------------------------------------------------------------
+%
+% Copyright (C) 2003, 2004, 2008 by Yvon Henel
+% dit « le TeXnicien de surface » <le.texnicien.de.surface@wanadoo.fr>
+%
+% --------------------------------------------------------------------
+%
+% --------------------------------------------------------------------
+% This file may be distributed and/or modified under the conditions of
+% the LaTeX Project Public License, either version 1.2 of this license
+% or (at your option) any later version. The latest version of this
+% license is in:
+%
+% http://www.latex-project.org/lppl.txt
+%
+% and version 1.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+% --------------------------------------------------------------------
+% \fi
+%
+% \iffalse
+%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<package>\def\fileversion{v2}
+%<package>\def\filedate{2008/08/15}
+%<doc-sty>\def\docdate{2008/08/15}
+%<package>\def\fileinfo{fichier engpron.dtx par Le TeXnicien de surface}
+%<package>\ProvidesPackage{engpron}
+%<package> [\filedate\space\fileversion\space\fileinfo]
+%
+%<*driver>
+\documentclass[a4paper]{ltxdoc}
+\usepackage{xspace,array, fixltx2e}
+\usepackage[latin9]{inputenc}
+\usepackage[tame]{engpron}
+\usepackage[T1]{fontenc}
+\IfFileExists{lmodern.sty}{\usepackage{lmodern}}{}
+\usepackage[english,frenchb]{babel}
+% comment out \OnlyDescription to obtain a document with the code
+% commentez la ligne suivante pour avoir un document avec le code
+% \OnlyDescription
+% puis cherchez \StopEventually pour d'éventuels réglages
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+%%% <francisation>
+\makeatletter
+\GlossaryPrologue{%
+ \section*{{Changements}}
+ \markboth{{Changements}}{{Changements}}}
+\IndexPrologue{%
+ \section*{Index}\markboth{Index}{Index}%
+ Les nombres en italique renvoient à la page où l'entrée est décrite;
+ les nombres soulignés renvoient à la ligne de code de la définition;
+ les nombres en caractères romains renvoient à la ligne de code où
+ l'entrée est utilisée.}
+\def\generalname{Général}
+\def\SpecialMainEnvIndex#1{\@bsphack\special@index{%
+ #1\actualchar
+ {\string\ttfamily\space#1}
+ (environnement)%
+ \encapchar main}%
+ \special@index{environnements:\levelchar#1\actualchar{%
+ \string\ttfamily\space#1}\encapchar
+ main}\@esphack}
+\makeatother
+%%% </francisation>
+\newcommand{\TO}{\textemdash\ \ignorespaces}
+\newcommand{\TF}{\unskip\ \textemdash\xspace}
+\newcommand{\CAD}{c.-à-d.\xspace}
+\newcommand\BOP{\discretionary{}{}{}}
+\newcommand\NOUVEAU[1]{{\slshape #1}}
+\newcommand\Option[1]{\textsc{#1}}
+\newcommand\Pkg[1]{\textsf{#1}}
+
+\begin{document}
+\newcommand{\GBP}{\texttt{£}\xspace}
+ \DocInput{engpron.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{664}
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \changes{v0.0}{2000/10/12}
+% {Première version pour usage personnel sous le nom de
+% tipa1.sty, sans documentation}
+% \changes{v0.1}{2003/04/21}
+% {Changement de nom et quelques nouvelles macros}
+% \changes{v0.1a}{2003/04/24}
+% {Divers nettoyages de la documentation.}
+% \changes{v0.1a}{2003/04/24}
+% {Changement de la fin quand tame est choisi, suppression du
+% \texttt{AtBeginDocument} et \texttt{global}-isation du
+% \texttt{let} redonnant à la livre sa valeur initiale.}
+% \changes{v0.1a}{2003/04/24}
+% {Suppression d'informations redondantes en début de code.}
+% \changes{v1}{2004/04/17}
+% {Nouvelle organisation de la documentation.}
+% \changes{v2}{2008/05/08}
+% {Exige drac.sty pour définir des macros robustes.}
+% \changes{v2}{2008/05/08}
+% {Création et utilisation de \cs{GBP} pour la documentation.}
+% \changes{v2}{2008/05/08}
+% {Utilisation de \cs{textsci} pour obtenir le i court.}
+% \changes{v2}{2008-05-08}
+% {Les macros d'accent tonique autorise la césure.}
+% \changes{v2}{2008-05-08}
+% {Création de la macro de séparation des syllabes.}
+% \changes{v2}{2008-05-08}
+% {Options gérant la syllabisation.}
+% \changes{v2}{2008-05-08}
+% {Options déterminant le comportement des macros |£K|, |£M|
+% et |£m| lorsqu'elle sont suivies d'une \emph{mauvaise}
+% lettre.}
+% \changes{v2}{2008-08-14}
+% {Ajout des options |drac| et |nodrac| et redéfinitions de la
+% livre}
+%
+% \GetFileInfo{engpron.sty}
+%
+% \DoNotIndex{\newcommand,\newenvironment,\i,\ae,\oe,\DeclareOption,^^A
+% \ifthenelse,\if,\else,\fi,\tr@@c,\ExecuteOptions,\ProcessOptions,^^A
+% \relax,\MessageBreak,\CurrentOption,\RequirePackage,\PackageError,^^A
+% \def,\endinput,\let,\boolean,\newboolean,\setboolean,\renewcommand,^^A
+% \afterassignment,\global,\aftergroup,\bgroup,\egroup,\csname,^^A
+% \endcsname,\emph,\catcode,\space,\string,\next,\active,\rmfamily,\rule,^^A
+% \,,\`,\discretionary,\PackageWarning,\ng,\textbeltl,^^A
+% \textepsilon,\textesh,\textlengthmark,\textopeno,\dh,^^A
+% \textrevepsilon,\textrhookschwa,\textschwa,\textsci,^^A
+% \texttt,\textscripta,\textsyllabic,\textyogh,^^A
+% \textperiodcentered,\textprimstress,\textsecstress,^^A
+% \textsubwedge,\textsuperscript,\texttheta,\textturnscripta,^^A
+% \textturnv,\textupsilon,\ttfamily,^^A
+% \textsl,\upshape,\pounds,\~}^^A
+%
+%
+% \title{ Le module \textsf{engpron}\thanks{%
+% Ce document correspond au fichier \textsf{engpron}~\fileversion,
+% du \filedate, édition du cinquantenaire.}\\
+% The \textsf{engpron} package\thanks{%
+% This corresponds to the file \textsf{engpron}~\fileversion,
+% dated \filedate, 50th anniversary edition.} }
+% \author{Le \TeX nicien de surface\\
+% \texttt{le.texnicien.de.surface@wanadoo.fr}} \date{\filedate}
+%
+% \maketitle
+% \thispagestyle{empty}
+% \begin{abstract}
+% Une extension pour saisir la prononciation anglaise à l'aide de
+% macros commençant par le caractère \GBP rendu actif.
+%
+% La documentation française pour l'utilisateur de l'extension
+% \Pkg{engpron} est désormais disponible sous le nom de
+% \texttt{engpron-fr}.
+%
+% La documentation du code est donnée en français. Comme d'habitude,
+% pour obtenir un document avec le code commenté, voir le
+% \texttt{.dtx} et chercher \cs{OnlyDescription}.
+% \end{abstract}
+%
+%
+% \noindent\hrulefill
+%
+%
+% \begin{otherlanguage}{english}
+% \begin{abstract}
+% A package to type the English pronunciation with macros beginning
+% with the character \GBP made active.
+%
+% The English documentation for the final user of the package
+% \Pkg{engpron} is available in the file \texttt{engpron-en}.
+%
+% The code documentation is in French only. Sorry. But nonetheless,
+% in case you really want it, look at the \texttt{.dtx} file and
+% find \cs{OnlyDescription} as usual.
+% \end{abstract}
+% \end{otherlanguage}
+% \StopEventually{}
+% \tableofcontents
+% \section{Le code}
+% On dit bonjour, on charge les modules |tipa| et |ifthen|. On définit
+% quelques variables booléennes et on fixe leur valeur par défaut. On
+% traite les options et on crie si l'une d'elles n'est pas connue.
+%
+% \changes{v2}{2008-05-08}
+% {Suppression du booléen |b@harraps|. L'option
+% \Option{harraps} est, désormais, simplement le contraire de
+% \Option{jones}.}
+% \iffalse
+%<*package>
+% \fi
+% \begin{macrocode}
+\RequirePackage{tipa}[1996/06/10]
+\RequirePackage{ifthen}
+\newboolean{tip@style}
+\newboolean{b@wild}
+\newboolean{b@jones}
+\newboolean{b@hyphenable}
+\newboolean{b@visible}
+\newboolean{b@final}
+\newboolean{b@nice}
+\newboolean{b@drac}
+\DeclareOption{tipastress}{\setboolean{tip@style}{true}}
+\DeclareOption{monstress}{\setboolean{tip@style}{false}}
+\DeclareOption{wild}{\setboolean{b@wild}{true}}
+\DeclareOption{tame}{\setboolean{b@wild}{false}}
+\DeclareOption{jones}{\setboolean{b@jones}{true}}
+\DeclareOption{harraps}{\setboolean{b@jones}{false}}
+\DeclareOption{hyphenable}{\setboolean{b@hyphenable}{true}}
+\DeclareOption{unhyphenable}{\setboolean{b@hyphenable}{false}}
+\DeclareOption{visible}{\setboolean{b@visible}{true}}
+\DeclareOption{invisible}{\setboolean{b@visible}{false}}
+\DeclareOption{final}{\setboolean{b@final}{true}}
+\DeclareOption{draft}{\setboolean{b@final}{false}}
+\DeclareOption{nice}{\setboolean{b@nice}{true}}
+\DeclareOption{tough}{\setboolean{b@nice}{false}}
+\DeclareOption{drac}{\setboolean{b@drac}{true}}
+\DeclareOption{nodrac}{\setboolean{b@drac}{false}}
+\DeclareOption*{\PackageError{engpron}{%
+The option \CurrentOption\space is not known!\MessageBreak
+}{%
+The possible options are (the first is the default):\MessageBreak
+<< monstress >> or << tipastress >>\MessageBreak
+<<wild>> or <<tame>>\MessageBreak
+<<jones>> or <<harraps>>\MessageBreak
+<<unhyphenable>> or <<hyphenable>>\MessageBreak
+<<visible>> or <<invisible>>.
+}}
+\ExecuteOptions{monstress,wild,jones,unhyphenable,visible,final,nice,drac}
+\ProcessOptions\relax
+% \end{macrocode}
+% \subsection{L'extension drac}
+% Si l'option |drac| est choisie, comme c'est le cas par défaut, on
+% charge l'extension \texttt{drac} et les définitions de la livre
+% utiliseront les macros \cs{DeclareRobustActChar} et
+% \cs{ReDeclareRobActChar}.
+% \begin{macrocode}
+\ifthenelse{\boolean{b@drac}}{\RequirePackage{drac}}{}
+% \end{macrocode}
+% \subsection{On sauve la livre}
+% On sauvegarde la définition courante de la macro \cs{pounds}, on crée
+% une macro \og cachée \fg qui active \GBP. La macro suivante l'utilise et
+% donne la nouvelle définition du caractère actif \GBP.
+% \begin{macrocode}
+\let\l@viellelivre=\pounds
+\newcommand{\EP@ActiveL@Livre}{\catcode `\£=\active}
+% \end{macrocode}
+% \begin{macro}{\ActiveLaLivre}
+% \changes{v2}{2008/05/08}{Redéfinition avec \cs{ReDeclareRobActChar}}
+% \changes{v2}{2008/08/14}{La définition tient compte de l'option drac/nodrac}
+% \begin{macrocode}
+\ifthenelse{\boolean{b@drac}}%
+ {\newcommand{\ActiveLaLivre}{\EP@ActiveL@Livre%
+ \ReDeclareRobActChar{£}[1]{\csname \string£##1\endcsname}}}
+ {\newcommand{\ActiveLaLivre}{\EP@ActiveL@Livre%
+ \def£##1{\csname\string£##1\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\makepoundletter}
+% Change la catégorie de \GBP en 11 qui est la catégorie des lettres de
+% \TeX{} ce qui permet de réécrire des macros \emph{débutant} par \GBP (si
+% on veut étendre ce que donne ce module).
+% \begin{macrocode}
+\newcommand{\makepoundletter}{\catcode`\£11\relax}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\makepoundother}
+% Change la catégorie de \GBP en 12 qui est la catégorie \og autres \fg
+% \TeX{} cela ne rend pas la livre active ! Cette macro n'a en fait
+% aucun autre intérêt que de préserver une sorte de symétrie |;)|.
+% \begin{macrocode}
+\newcommand{\makepoundother}{\catcode`\£12\relax}
+% \end{macrocode}
+% \end{macro}
+% \begin{environment}{LivreActive}
+% Le seul environnement de ce module. Il rend la livre active. Il
+% s'utilise avec l'option \Option{tame} sinon il n'aurait pas grand chose à
+% faire si ce n'est fatiguer \TeX.
+% \begin{macrocode}
+\newenvironment{LivreActive}{\ActiveLaLivre}{}
+% \end{macrocode}
+% \end{environment}
+% La macro suivante donne accès au glyphe de la livre sterling en
+% toutes circonstances, même quand la livre est active.
+% \begin{macrocode}
+\def\£{\pounds}
+% \end{macrocode}
+%
+% \subsection{Macros de présentation}
+% On définit ici les macros qui fixent les détails de la
+% présentation.
+%
+% \begin{macro}{\EPtextestyle}
+% Définit le style dans lequel sont présentés les
+% prononciations. Peut être redéfinie par l'utilisateur. On fera
+% toutefois attention que l'option \Option{jones} \TO pour les sons
+% optionnels\TF et l'option \Option{harraps} \TO pour le \og r \fg final\TF
+% utilise des caractères penchés (avec \cs{textsl}). À manier avec
+% précaution.
+% \begin{macrocode}
+\newcommand{\EPtextestyle}{\rmfamily\upshape}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EPouvrante}
+% Définit ce qui précède le texte de la prononciation. Utilisée par
+% \cs{pron} et \cs{PRON}, elle peut être redéfinie.
+% \begin{macrocode}
+\newcommand{\EPouvrante}{[}
+\def\EP@ouvr@nte{\bgroup\EPouvrante}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EPfermante}
+% Définit ce qui suit le texte de la prononciation. Utilisée par
+% \cs{pron} et \cs{PRON}, elle peut être redéfinie.
+% \begin{macrocode}
+\newcommand{\EPfermante}{]}
+\def\EP@ferm@nte{\EPfermante\egroup}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\pron}
+% Macro de présentation de la prononciation. S'utilise n'importe où
+% avec l'option \Option{wild} activée ou bien dans un environnement
+% |LivreActive| avec l'option \Option{tame} auquel cas elle est
+% avantageusement remplacée par \cs{PRON}. Utilise les trois macros
+% précédentes.
+% \begin{macrocode}
+\newcommand{\pron}[1]{{\EPouvrante\EPtextestyle #1\EPfermante}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\Pron}
+% Le style de définition de \cs{Pron}\footnote{Définition fournie
+% gracieusement par Josselin~\textsc{Noirel}.} force, à cause du
+% |#| la présence d'une |{| pour introduire l'argument. \cs{next}
+% avale cette accolade que le \cs{bgroup} remplace ce qui active la
+% livre localement. Le groupe se termine avec l'accolade fermante
+% de l'argument et tout va bien !
+% \begin{macrocode}
+\def\Pron#{\bgroup\ActiveLaLivre\let\next=}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\PRON}
+% Cette macro assure l'activation de la livre et une présentation
+% semblable à celle de \cs{pron}. Elle utilise une macro auxiliaire
+% pour placer \cs{EPfermante} après avoir traité l'argument. Elle
+% procède tout d'abord à la même man{\oe}uvre que \cs{pron}. Avec
+% \cs{EP@ouvr@nte} et \cs{EP@ferm@nte} on enferme le tout entre
+% \cs{bgroup} et \cs{egroup} ce qui assure que l'effet de
+% \cs{EPtextestyle} est local.
+% \begin{macrocode}
+\def\PRON#{\EP@ouvr@nte\EPtextestyle%
+ \bgroup\ActiveLaLivre\afterassignment\PRON@UX\let\next=}
+\def\PRON@UX{\aftergroup\EP@ferm@nte\relax}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EPaccentprincipal}
+% La définition du glyphe de l'accent tonique principal lorsque
+% l'option \Option{monstress} est activée.
+% \begin{macrocode}
+\newcommand{\EPaccentprincipal}{\,\rule[-0.5ex]{0.5pt}{0.8ex}\,}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EPaccentsecondaire}
+% La définition du glyphe de l'accent tonique secondaire avec
+% \Option{monstress}.
+% \begin{macrocode}
+\newcommand{\EPaccentsecondaire}{\,\rule[0.5ex]{0.5pt}{0.8ex}\,}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EPSyllabeMarque}
+% \changes{v2}{2008/05/08}{Création} C'est la macro qui définit le
+% symbole servant à indiquer la limite de syllabe.
+% \begin{macrocode}
+\newcommand{\EPSyllabeMarque}{.}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EPSyllabeCoupure}
+% \changes{v2}{2008/05/08}{Création} Avec cette macro, on marque la
+% limite de syllabe; \LaTeX\ peut couper le \og mot\fg à cet
+% endroit.
+% \begin{macrocode}
+\newcommand{\EPSyllabeCoupure}{%
+ \discretionary{\EPSyllabeMarque}{}{\EPSyllabeMarque}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Macros cachées}
+% Une floppée de macros cachées qui donne les définitions par défaut
+% puis leur redéfinition en fonction des options.
+%
+% \begin{macro}{\EP@haut}
+% Cette macro et sa petite camarade \cs{EP@bas} placent les accents
+% toniques, principal et secondaire respectivement. Elles sont
+% définies comme \cs{EP@basSans} et \cs{EP@hautSans} \TO qui ne
+% donnent pas de point de \DescribeMacro{\EP@bas} coupure\TF si
+% l'option \Option{unhyphenable} est choisie, comme c'est le cas par
+% défaut. Avec l'option \Option{hyphenable} elles sont définies comme
+% \cs{EP@hautAvec} et \cs{EP@basAvec} qui donnent un point de
+% coupure.
+% \begin{macrocode}
+\newcommand{\EP@basSans}{\EPaccentprincipal}
+\newcommand{\EP@hautSans}{\EPaccentsecondaire}
+\newcommand{\EP@basAvec}{%
+ \discretionary{}{\EPaccentprincipal}{\EPaccentprincipal}}
+\newcommand{\EP@hautAvec}{%
+ \discretionary{}{\EPaccentsecondaire}{\EPaccentsecondaire}}
+\ifthenelse{\boolean{b@hyphenable}}{
+ \newcommand{\EP@bas}{\EP@basAvec}
+ \newcommand{\EP@haut}{\EP@hautAvec}}{
+ \newcommand{\EP@bas}{\EP@basSans}
+ \newcommand{\EP@haut}{\EP@hautSans}}
+% \end{macrocode}
+% \end{macro}
+%
+% Viennent ensuite des macros qui code les abbréviations comme
+% \cs{EP@djeu} que l'on sollicitera avec |£d| pour obtenir \Pron{£d}.
+% \begin{macrocode}
+\newcommand{\EP@djeu}{d\textyogh}
+\newcommand{\EP@icourt}{\textsci}
+\newcommand{\EP@ahyi}{a\EP@icourt}
+\newcommand{\EP@ehyi}{e\EP@icourt}
+\newcommand{\EP@ohyi}{\textopeno\EP@icourt}
+\newcommand{\EP@tcheu}{t\textesh}
+\newcommand{\EP@euou}{\textschwa\textupsilon}
+\newcommand{\EP@eheu}{e\textschwa}
+\newcommand{\EP@iyeu}{\EP@icourt\textschwa}
+\newcommand{\EP@oueu}{\textupsilon\textschwa}
+\newcommand{\EP@ahou}{a\textupsilon}
+\newcommand{\EP@ng@g}{\ng g}
+\newcommand{\EP@il@ng}{i\textlengthmark}
+\newcommand{\EP@al@ng}{\textscripta\textlengthmark}
+\newcommand{\EP@ol@ng}{\textopeno\textlengthmark}
+\newcommand{\EP@ul@ng}{u\textlengthmark}
+\newcommand{\EP@eul@ng}{\textrevepsilon\textlengthmark}
+\newcommand{\EP@syll@bicl}{\textsyllabic{l}}
+\newcommand{\EP@usfl@ppedt}{\textsubwedge{t}}
+\newcommand{\EP@usoou}{o\textupsilon}
+\newcommand{\EP@silent@r}{\textsuperscript{r}}
+% \end{macrocode}
+%
+% \subsection{Macros utilisant le token suivant}
+% Pour commencer, on crée une macro traitant le cas \og autre\fg dans
+% les cascades de \texttt{if} qui vont suivrent.
+%
+% \begin{macro}{\EP@Erreur@Msg}
+% C'est la macro qui produit, ou pas, un message d'erreur pour les
+% macros sollicitées par |£X|, |£K|, |£M| et |£m|. Son comportement
+% est déterminé par les options \Option{final}\slash\Option{draft} et
+% \Option{nice}\slash\Option{tough}.
+% \begin{macrocode}
+\ifthenelse{\boolean{b@final}}{%
+ \newcommand\EP@Erreur@InDoc[1]{\relax}}{%
+ \newcommand\EP@Erreur@InDoc[1]{%
+ {\ttfamily\string?\string!<#1>\string!\string?}}}
+%
+\ifthenelse{\boolean{b@nice}}{%
+ \newcommand\EP@Erreur@Carp{%
+ \PackageWarning{engpron}{%
+There is a strange character after K, M, or m
+}}}{%
+\newcommand\EP@Erreur@Carp{%
+ \PackageError{engpron}{%
+There is a strange character after K, M, or m
+}{
+The characters which can be used after a
+pound-macro are\MessageBreak
+with K: X, k, K, b, B, h, and H\MessageBreak
+with M or m: a, e, i, o, u
+}}}
+%
+\newcommand\EP@Erreur@Msg[2]{\EP@Erreur@InDoc{#1#2}\EP@Erreur@Carp}
+% \end{macrocode}
+% \end{macro}
+%
+% Les quatre macros suivantes sont toutes écrites sur le même modèle,
+% elles ont donc le même type de fonctionnement et les mêmes limites.
+%
+% \begin{macro}{\EP@fr@nn@s@lise}
+% Cette macro écrit les \og voyelles nasalisées \fg telles qu'elles
+% sont réalisées par un locuteur français.
+%
+% Elle fait appel à la macro auxiliaire \cs{EP@fr@nn@s@laux} qui
+% traite la lettre récupérée d'abord par \cs{tr@@c} (grâce à
+% \cs{afterassignment}). La macro auxiliaire réalise un test sur la
+% lettre qui suit\footnote{En fait \texttt{tr@@c} récupère le 1\ier
+% token et c'est pour cela que cette macro ne peut fonctionner,
+% telle qu'elle est écrite à présent, que si elle est suivie d'une
+% lettre au sens de \TeX{} \CAD un caractère compris entre a et z
+% ou A et Z.} pour écrire le bon glyphe.
+% \begin{macrocode}
+\def\EP@fr@nn@s@liser{\afterassignment\EP@fr@nn@s@laux\let\tr@@c=}
+\def\EP@fr@nn@s@laux{%
+ \if\tr@@c i{\~\textepsilon}%
+ \else \if \tr@@c a{\~\textscripta}%
+ \else \if \tr@@c o{\~\textopeno}%
+ \else \if \tr@@c u{\~{\oe}}%
+ \else \EP@Erreur@Msg{M}{\tr@@c}%
+ \fi \fi \fi \fi}
+% \end{macrocode}
+% \changes{v0.1a}{2003/04/24}
+% {Renommage pour plus de régularité dans les noms des macros.}
+% \end{macro}
+%
+% \begin{macro}{\EP@ngln@s@liser}
+% Cette macro écrit les mêmes \og voyelles nasalisées \fg telles
+% qu'elle sont réalisées par un locuteur anglais \TO selon
+% Jones toujours.
+% \begin{macrocode}
+\def\EP@ngln@s@liser{\afterassignment\EP@ngln@s@laux\let\tr@@c=}
+\def\EP@ngln@s@laux{%
+ \if\tr@@c i{\~{\ae}}%
+ \else \if \tr@@c a{\~\textscripta\textlengthmark}%
+ \else \if \tr@@c o{\~\textopeno\textlengthmark}%
+ \else \if \tr@@c u{\~\textrevepsilon\textlengthmark}%
+ \else \EP@Erreur@Msg{m}{\tr@@c}%
+ \fi \fi \fi \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EP@ngln@s@liser}
+% Cette macro écrit les sons optionnels en s'appuyant sur le même
+% mécanisme. La macro auxiliaire \cs{EP@option@lsoundaux} sera
+% redéfinie si l'option \Option{harraps} a été choisie.
+% \begin{macrocode}
+\def\EP@option@lsound{\afterassignment\EP@option@lsoundaux\let\tr@@c=}
+\def\EP@option@lsoundaux{%
+ \if\tr@@c e\textsuperscript{\,\textschwa}%
+ \else {\textsl{\tr@@c}}\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\EP@Speci@l}
+% On ne change pas une équippe qui gagne, aussi, je reprends le même
+% mécanisme pour la macro qui insère les points de coupure avec ou
+% sans marque de syllabisation ou d'accent tonique quelques soient
+% les options en vigueur. Elle sera appelée par |£K|.
+% \changes{v2}{2008-05-08}
+% {Création sur le modèle de \cs{EP@fr@nn@s@lise}.}
+% \begin{macrocode}
+\def\EP@Speci@l{\afterassignment\EP@Speci@laux\let\tr@@c=}
+\def\EP@Speci@laux{%
+ \if\tr@@c k\EPSyllabeMarque%
+ \else \if \tr@@c K\EPSyllabeCoupure%
+ \else \if \tr@@c b\EP@basSans%
+ \else \if \tr@@c B\EP@basAvec%
+ \else \if \tr@@c h\EP@hautSans%
+ \else \if \tr@@c H\EP@hautAvec%
+ \else \if \tr@@c X\discretionary{}{}{}%
+ \else \EP@Erreur@Msg{K}{\tr@@c}%
+ \fi \fi \fi \fi \fi \fi \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% On procède à des redéfinitions si l'option \Option{harraps} a été choisie.
+% \begin{macro}{\EP@euou}
+% Redéfinition quand l'option \Option{harraps} est choisie.
+% \begin{macrocode}
+\ifthenelse{\boolean{b@jones}}{%
+% \end{macrocode}
+% L'option \Option{jones} est choisie, il n'y a rien à faire!
+% \begin{macrocode}
+}{%
+% \end{macrocode}
+% Cette fois-ci ce n'est pas \Option{jones} donc c'est \Option{harraps}!
+% \begin{macrocode}
+ \renewcommand{\EP@euou}{\emph{o}}
+% \end{macrocode}
+% \changes{v0.1a}{2003/04/24}{Renommage pour que
+% \Option{harraps} ait un effet.}
+% \end{macro}
+% \begin{macro}{\EP@option@soundaux}
+% Redéfinition par l'option \Option{harraps}. C'est par son intermédiaire que
+% la macro \cs{EP@option@lsound} réalise la présentation des sons
+% optionnels.
+% \begin{macrocode}
+ \def\EP@option@lsoundaux{(\tr@@c)}
+ \renewcommand{\EP@silent@r}{\emph{r}}}
+% \end{macrocode}
+% \end{macro}
+% On redéfinit certaines macros si l'option \Option{tipastress} a été
+% choisie.
+% \begin{macro}{\EP@bas}
+% Cette commande interne réalise la marque d'accent tonique
+% secondaire, elle est redéfinie par l'option \Option{tipastress}.
+% \begin{macrocode}
+\ifthenelse{\boolean{tip@style}}{%
+ \renewcommand{\EP@bas}{\textsecstress}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\EP@bas}
+% Cette commande interne réalise la marque d'accent tonique
+% principal, elle aussi est redéfinie par l'option
+% \Option{tipastress}.
+% \begin{macrocode}
+ \renewcommand{\EP@haut}{\textprimstress}}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Les macros de redéfinition}
+%
+% Je range dans cette section les macros qui permettent de changer le
+% comportement des marques \emph{normales} de syllabisation et accents
+% toniques soumises aux options \Option{(un)hyphenable}
+% et\Option{(in)visible}. Je ne fournis pas d'environnement lié à ces
+% changements, on utilisera un groupe \TO avec p.~ex. \cs{bgroup}
+% |...| \cs{egroup}\TF si l'on veut localiser l'effet de ces macros.
+%
+% \begin{macro}{\MakeHyphenable}
+% Redéfinit les macros liées à |£H|, |£h|, |£B|, |£b| et |£k| pour
+% qu'elles fournissent des marques sécables. La visibilité de |£k|
+% n'est pas modifiée.
+% \changes{v2}{2008-05-08}
+% {Création.}
+% \begin{macrocode}
+\newcommand\MakeHyphenable{%
+ \setboolean{b@hyphenable}{true}%
+ \renewcommand\EP@bas{\EP@basAvec}%
+ \renewcommand\EP@haut{\EP@hautAvec}%
+ \ifthenelse{\boolean{b@visible}}
+ {\renewcommand\EP@SyllabeEffective{\EPSyllabeCoupure}}
+ {\renewcommand\EP@SyllabeEffective{\discretionary{}{}{}}}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\MakeUnHyphenable}
+% La s½ur ennemie de la précédente.
+% \changes{v2}{2008-05-08}
+% {Création.}
+% \begin{macrocode}
+\newcommand\MakeUnHyphenable{%
+ \setboolean{b@hyphenable}{false}%
+ \renewcommand\EP@bas{\EP@basSans}%
+ \renewcommand\EP@haut{\EP@hautSans}%
+ \ifthenelse{\boolean{b@visible}}
+ {\renewcommand\EP@SyllabeEffective{\EPSyllabeMarque}}
+ {\renewcommand\EP@SyllabeEffective{\relax}}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\MakeVisible}
+% Redéfinit la macro liée à |£k| pour
+% qu'elle fournisse des marques visibles. La sécabilité de |£k|
+% n'est pas modifiée.
+% \changes{v2}{2008-05-08}
+% {Création.}
+% \begin{macrocode}
+\newcommand\MakeVisible{%
+ \setboolean{b@visible}{true}%
+ \ifthenelse{\boolean{b@hyphenable}}
+ {\renewcommand\EP@SyllabeEffective{\EPSyllabeCoupure}}
+ {\renewcommand\EP@SyllabeEffective{\EPSyllabeMarque}}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\MakeInVisible}
+% L'antagoniste de la précédente.
+% \changes{v2}{2008-05-08}
+% {Création.}
+% \begin{macrocode}
+\newcommand\MakeInVisible{%
+ \setboolean{b@visible}{false}%
+ \ifthenelse{\boolean{b@hyphenable}}
+ {\renewcommand\EP@SyllabeEffective{\discretionary{}{}{}}}
+ {\renewcommand\EP@SyllabeEffective{\relax}}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Les macros \GBP}
+%
+% On définit les macros sous la forme \GBP\meta{une lettre} en ayant
+% changé le catcode de \GBP pour en faire une lettre. Puis on active
+% la livre. Le caractère actif \GBP prend un argument |arg| puis
+% écrit la commande |\£arg|. Si ce qui suit est une lettre,
+% p. ex. |a|, on obtient alors la macro |\£a| qui sera redéveloppée
+% par \TeX{} pour donner ce à quoi |\£a| a été rendue identique
+% lorsque \GBP était une lettre par \cs{def}. Le mécanisme des arguments
+% de macro de \TeX{} permet de définir des macros comme |\£abc| mais
+% alors il faudra taper |£{abc}| pour que le groupe |abc| soit
+% considéré comme l'argument du caractère actif \GBP.
+% \changes{v2}{2008/05/08} {\cs{def} remplace \cs{let} dans la
+% définition des macros à livre.}
+% \begin{macrocode}
+\makepoundletter
+\def\£a{\ae} \def\£A{\EP@al@ng}
+\def\£b{\EP@bas} \def\£B{\EP@bas}
+\def\£c{\textopeno} \def\£C{\textscripta}
+\def\£d{\EP@djeu}
+% \end{macrocode}
+% ^^A \let\£D
+% \begin{macrocode}
+\def\£e{\textschwa} \def\£E{\EP@eul@ng}
+\def\£f{\texttheta}
+% \end{macrocode}
+% ^^A \let\£F
+% \begin{macrocode}
+\def\£h{\EP@haut} \def\£H{\EP@haut}
+\def\£i{\EP@icourt} \def\£I{\EP@il@ng}
+\def\£j{\textyogh}
+% \end{macrocode}
+% ^^A \let\£J
+% \begin{macrocode}
+\def\£l{\EP@syll@bicl} \def\£L{\textbeltl}
+\def\£m{\EP@ngln@s@liser} \def\£M{\EP@fr@nn@s@liser}
+\def\£n{\ng} \def\£N{\EP@ng@g}
+\def\£o{\textturnscripta} \def\£O{\EP@ol@ng}
+\def\£p{\EP@ahyi} \def\£P{\EP@eheu}
+\def\£q{\EP@ehyi} \def\£Q{\EP@iyeu}
+\def\£r{\EP@ohyi} \def\£R{\EP@oueu}
+\def\£s{\textesh}
+% \end{macrocode}
+% ^^A \let\£S
+% \begin{macrocode}
+\def\£t{\EP@tcheu} \def\£T{\EP@usfl@ppedt}
+\def\£u{\textupsilon} \def\£U{\EP@ul@ng}
+\def\£v{\textturnv} \def\£V{\EP@usoou}
+\def\£w{\EP@euou} \def\£W{\EP@ahou}
+\def\£x{\textrevepsilon} \def\£X{\EP@option@lsound}
+\def\£y{\textrhookschwa}
+% \end{macrocode}
+% ^^A \let\£Y
+% \begin{macrocode}
+\def\£z{\dh} \def\£Z{\EP@silent@r}
+% \end{macrocode}
+% ^^A some other free slots *** quelques cases libres
+% ^^A \let\£g %\let\£G
+%
+% Cette macro est liée à \cs{EP@SyllabeEffective} qui est gouvernée
+% par les options \Option{hyphenable}\slash\Option{unhyphenable} et
+% \Option{visible}\slash\Option{invisible}. Avec
+% \Option{hyphenable}, elle insère un point de coupure. Avec
+% \Option{visible}, elle insère la marque de syllabisation définie
+% par \cs{EPSyllabeMarque}.
+% \begin{macrocode}
+\ifthenelse{\boolean{b@visible}}{%
+% \end{macrocode}
+% La marque doit être visible.
+% \begin{macrocode}
+ \ifthenelse{\boolean{b@hyphenable}}{%
+ \newcommand\EP@SyllabeEffective{\EPSyllabeCoupure}}{%
+ \newcommand\EP@SyllabeEffective{\EPSyllabeMarque}}}{%
+% \end{macrocode}
+% La marque doit être invisible.
+% \begin{macrocode}
+ \ifthenelse{\boolean{b@hyphenable}}{%
+ \newcommand\EP@SyllabeEffective{\discretionary{}{}{}}}{%
+ \newcommand\EP@SyllabeEffective{\relax}}
+}
+\def\£k{\EP@SyllabeEffective}
+% \end{macrocode}
+% \begin{macrocode}
+\def\£K{\EP@Speci@l}
+% \end{macrocode}
+%
+% \changes{v2}{2008/05/08}
+% {Redéfinition de la livre avec \cs{ReDeclareRobActChar}.}
+% \changes{v2}{2008/08/14}
+% {Redéfinition en tenant compte de l'option drac/nodrac.}
+% \begin{macrocode}
+\catcode `\£=\active
+\ifthenelse{\boolean{b@drac}}
+ {\DeclareRobustActChar{£}[1]{\csname \string£#1\endcsname}}
+ {\def£#1{\csname \string£#1\endcsname}}
+% \end{macrocode}
+%
+% \subsection{Parce que tout finit un jour\dots}
+%
+% Enfin on redéfinit le caractère actif \GBP comme à l'entrée si
+% l'option \Option{tame} a été choisie. Et le reste est une autre
+% histoire.
+% \begin{macrocode}
+\ifthenelse{\boolean{b@wild}}{}{%
+\EP@ActiveL@Livre \global\let£=\l@viellelivre\relax
+}
+% \end{macrocode}
+% \iffalse
+%</package>
+% \fi
+% \Finale\PrintChanges\PrintIndex
+% \iffalse
+%<*doc-sty>
+\ProvidesPackage{engpron-tools}
+\RequirePackage[a4paper,%
+ inner=5cm,%
+ outer=2cm,%
+ marginparwidth=5cm]{geometry}
+\RequirePackage{fancyvrb}
+\AtBeginDocument{\DefineShortVerb{\|}}
+\newcommand\BOP{\discretionary{}{}{}}
+\newcommand\Option[1]{\textsc{#1}}
+\newcommand\Pkg[1]{\textsf{#1}}
+\newcommand{\TO}{\textemdash\ \ignorespaces}
+\newcommand{\TF}{\unskip\ \textemdash\xspace}
+\newcommand{\CAD}{c.-à-d.\xspace}
+\newcommand\NOUVEAU[1]{{\slshape #1}}
+\newcommand\Sourire{\texttt{\string;-)}}
+%%% piqué dans doc.sty
+\DeclareRobustCommand\meta[1]{%
+ \ensuremath\langle
+ \ifmmode \expandafter \nfss@text \fi
+ {%
+ \meta@font@select
+ \edef\meta@hyphen@restore
+ {\hyphenchar\the\font\the\hyphenchar\font}%
+ \hyphenchar\font\m@ne
+ \language\l@nohyphenation
+ #1\/%
+ \meta@hyphen@restore
+ }\ensuremath\rangle
+}
+\def\meta@font@select{\itshape}
+
+\def\GetFileInfo#1{%
+ \def\filename{#1}%
+ \def\@tempb##1 ##2 ##3\relax##4\relax{%
+ \def\filedate{##1}%
+ \def\fileversion{##2}%
+ \def\fileinfo{##3}}%
+ \edef\@tempa{\csname ver@#1\endcsname}%
+ \expandafter\@tempb\@tempa\relax? ? \relax\relax}
+
+%%% piqué dans ltxdoc.cls
+\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
+\providecommand\marg[1]{%
+ {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
+\providecommand\oarg[1]{%
+ {\ttfamily[}\meta{#1}{\ttfamily]}}
+\providecommand\parg[1]{%
+ {\ttfamily(}\meta{#1}{\ttfamily)}}
+
+%%% redéfinitions et définitions
+\newcommand\PrintDescribeMacro[1]{\cs{#1}}
+\newcommand\PrintDescribePoundMacro[1]{\texttt{£#1}}
+\def\DescribePoundMacro{\leavevmode\@bsphack
+ \begingroup\Describe@PoundMacro}
+\def\Describe@PoundMacro#1{\endgroup
+ \marginpar{\raggedleft\PrintDescribePoundMacro{#1}}%
+ \index{£#1@\PrintDescribePoundMacro{#1}}\@esphack\ignorespaces}
+\def\DescribeMacro{\leavevmode\@bsphack
+ \begingroup\Describe@Macro}
+\def\Describe@Macro#1{\endgroup
+ \marginpar{\raggedleft\PrintDescribeMacro{#1}}%
+ \index{#1@\PrintDescribeMacro{#1}}\@esphack\ignorespaces}
+\newcommand\DescribeOption[1]{\@bsphack
+ \marginpar{\raggedleft\textsc{#1}}%
+ \index{#1@\Option{#1} (option)}%
+ \index{option!\Option{#1}}\@esphack\ignorespaces}
+\newcommand\DescribeEnv[1]{\@bsphack
+ \marginpar{\raggedleft\texttt{#1}}%
+ \index{#1@\texttt{#1} (environnement)}%
+ \index{environnement!\texttt{#1}}\@esphack\ignorespaces}
+\reversemarginpar
+%</doc-sty>
+% \fi
+% \iffalse
+%<*exemple>
+\documentclass[a4paper]{article}
+\usepackage{array,xspace}
+\usepackage[latin1]{inputenc}
+\usepackage[tame,hyphenable]{engpron}[2008/08/15]
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+%<fr>\usepackage[english, frenchb]{babel}
+%<en>\usepackage[frenchb, english]{babel}
+\setlength{\parindent}{0pt}
+\newcommand\BOP{\discretionary{}{}{}}
+\newcommand{\TO}{\textemdash\ \ignorespaces}
+\newcommand{\TF}{\unskip\ \textemdash\xspace}
+\newcommand\Pkg[1]{\textsf{#1}}
+\newcommand\Option[1]{\textsc{#1}}
+%<fr>\newcommand{\CAD}{c.-à-d.\xspace}
+\begin{document}
+\begin{center}\LARGE
+%<fr> Utilisation du module \Pkg{engpron}
+%<en> Usage of the \Pkg{engpron} package
+\end{center}
+%<*fr>
+Voici quelques exemples d'utilisation des macros avec \texttt{£}. Le
+module \verb+engpron+ est chargé avec les options \Option{jones},
+\Option{monstress}, \Option{unhyphenable}, \Option{visible},
+\Option{nice} et \Option{final} \TO options par défaut\TF et l'option
+explicite \Option{tame} qui remplace l'option par défaut
+\Option{wild}.
+%</fr>
+%<*en>
+Here are some examples of the usage of the \texttt{£}-macros. The
+\verb+engpron+ package is loaded whith the options \Option{jones},
+\Option{monstress}, \Option{unhyphenable}, \Option{visible},
+\Option{nice}, and \Option{final} \TO default options\TF and the
+explicit option \Option{tame} which replaces the default option
+\Option{wild}.
+%</en>
+%<*fr>
+\paragraph{Macro \texttt{£X}} Cette macro \emph{doit} être suivie d'une
+lettre seule. Elle note les sons optionnels à la manière de
+Jones~\cite{jones15}, avec l'option \Option{jones}, ou à la manière du
+Harraps~\cite{harraps}, avec l'option \Option{harraps}.
+
+On aura par exemple
+\verb!\PRON{!\texttt{£e£h£Xt£s£U£kli£k£en}\verb!}!
+qui donnera \PRON{£e£h£Xt£s£U£kli£k£en}.
+
+Suivie de la lettre \og e \fg elle donne \Pron{£Xe}
+(\verb+\Pron{£Xe}+) comme dans \PRON{£B£af£kek£Ht£q£k£s£Xen} qui
+s'obtient avec \verb+\PRON{£B£af£kek£Ht£q£k£s£Xen}+.
+%</fr>
+%<*en>
+\paragraph{The \texttt{£X} macro} This macro \emph{must} be
+followed by a single letter. It notes the optional sounds the way
+Jones~\cite{jones15} does if option \Option{jones} has been chosen,
+or, the Harraps~\cite{harraps} does if option \Option{harraps} has
+been chosen.
+
+One would type for example
+\verb!\PRON{!\texttt{£e£h£Xt£s£U£kli£k£en}\verb!}!
+to obtain \PRON{£e£h£Xt£s£U£kli£k£en}.
+
+Followed by the letter `e' it gives \Pron{£Xe}
+(\verb+\Pron{£Xe}+) as in \PRON{£B£af£kek£Ht£q£k£s£Xen} one can
+obtain with \verb+\PRON{£B£af£kek£Ht£q£k£s£Xen}+.
+%</en>
+%<*fr>
+\paragraph{Macros \texttt{£M} et \texttt{£m}} Elles permettent
+d'obtenir les voyelles nasalisés, à la mode française pour la 1\iere
+et à la mode anglaise pour la 2\up{de}. Se reporter à la 2\ieme
+table. Elles doivent être suivies d'une des lettres : a, i, o,
+u. Penser à \og ban \fg, \og vin \fg, \og long \fg et \og parfum \fg
+(dans la prononciation très correcte du français soutenu).
+%</fr>
+%<*en>
+\paragraph{\texttt{£M} and \texttt{£m} macros} They give the French
+nasalised vowels, French way for the 1rst one and English way for the
+2nd. See the 2nd table. They must be followed by one of the following
+letters: a, i, o, u. One may think to the French
+`restaur\textbf{ant}', `v\textbf{in}', `b\textbf{on} marché',
+`Verd\textbf{un}'.
+%</en>
+%<*fr>
+\paragraph{Macro \texttt{£Z}} Elle note le \og r \fg final qui n'est
+prononcé qu'en cas de liaison. On a, p. ex. \Pron{£H£akt£e£Z} avec
+\verb+\Pron{£H£akt£e£Z}+.
+%</fr>
+%<*en>
+\paragraph{Macro \texttt{£Z}} It notes the final `r' which is only
+pronunced when followed by a vowel. One has e.g. \Pron{£H£akt£e£Z} with
+\verb+\Pron{£H£akt£e£Z}+.
+%</en>
+%<*fr>
+\paragraph{Macro \texttt{£k}} Son comportement est déterminée par les
+options \Option{hyphenable} \TO qui s'oppose à
+\Option{unhyphenable}\TF et \Option{visible} \TO qui s'oppose à
+\Option{invisible}. Elle sert à marquer les limites de syllabes.
+
+Avec l'option \Option{visible}, option par défaut, on obtient une
+marque qui est par défaut [.] et est définie par la
+macro \verb+\EPSyllabeMarque+. Cette dernière peut être redéfinie à
+l'aide de \verb+\renewcommand+. Avec l'option \Option{invisible},
+\verb+£k+ ne produit aucun glyphe.
+
+Avec l'option \Option{hyphenable}, \verb+£k+ permet la césure mais
+l'interdit avec l'option \Option{unhyphenable} qui est l'option par
+défaut.
+%</fr>
+%<*en>
+\paragraph{Macro \texttt{£k}} Its beheviour is controlled by the
+options \Option{hyphenable} \TO which is the contrary of
+\Option{unhyphenable}\TF and \Option{visible} \TO contrary of
+\Option{invisible}. It is used to mark the syllable limits.
+
+With the default option \Option{visible} it produces a glyph which is
+by default [.] and defined by the macro
+\verb+\EPSyllabeMarque+. This macro can be redefined with a
+\verb+\renewcommand+ if necessary. With option \Option{invisible} \verb+£k+
+doesn't produce any glyph.
+
+With option \Option{hyphenable} \verb+£k+ allows a break but prevent it
+with \Option{unhyphenable} which is the default.
+%</en>
+%<*fr>
+\paragraph{Macro \texttt{£K}} Son comportement est déterminée par la
+lettre suivante. \texttt{X} donne un point de césure invisible,
+\texttt{k} une marque insécable et visible de syllabisation,
+\texttt{K} une marque \emph{sécable} et visible de syllabisation,
+\texttt{b} une marque d'accent tonique secondaire insécable,
+\texttt{B} une marque d'accent tonique secondaire \emph{sécable},
+\texttt{h} une marque d'accent tonique principal insécable et, enfin,
+\texttt{H} une marque d'accent tonique principal \emph{sécable}. Son
+comportement \textbf{ne dépend pas} des options en vigueur.
+%</fr>
+%<*en>
+\paragraph{Macro \texttt{£K}} Its behaviour is determined by the
+following letter. \texttt{X} gives an invisible breakable point,
+\texttt{k} a visible unbreakable mark of syllable limit, \texttt{K} a
+visible \emph{breakable} mark of syllable limit, \texttt{b} an
+unbreakable mark of secondary stress, \texttt{B} a \emph{breakable}
+mark of secondary stress, \texttt{h} an unbreakable mark of primary
+stress, and, avant last, \texttt{H} a \emph{breakable} mark of primary
+stress. Its behaviour \textbf{doesn't depend} on the enforced options.
+%</en>
+\vspace*{\stretch{1}}
+
+\begin{thebibliography}{99}
+\bibitem{jones15} Daniel~\textsc{Jones} \dag.
+\emph{English Pronouncing Dictionary}.
+15th Edition. This major new edition edited by Peter Roach \& James
+Hartman.
+Cambridge University Press, 1997.
+\textsc{isbn} : \texttt{0-521-45903-6}
+\bibitem{harraps} J. E. \textsc{Manson}, M.A.
+\emph{Harrap's New Shorter French And English Dictionary.}
+Revised edition \copyright{} George G. Harrap \&
+Co. Ltd. \oldstylenums{1967}.
+Bordas diffuseur, \oldstylenums{1980}.
+\textsc{isbn} : \texttt{0 245 59062 5}
+\end{thebibliography}
+\newpage
+
+\vspace*{\stretch{1}}
+
+\begin{LivreActive}\Large
+\hspace*{\stretch{1}}
+\begin{tabular}[c]{|>{\ttfamily }c|c||>{\ttfamily }c|c||>{\ttfamily
+ }c|c||>{\ttfamily }c|c||>{\ttfamily }c|c|}\hline
+\multicolumn{10}{|c|}{
+%<fr>Classement par ordre alphabétique
+%<en>The macros in alphabetic order
+}\\
+\multicolumn{10}{|c|}{
+%<fr>L'étoile renvoie aux explications ci-dessus
+%<en>The star refers to the preceding explanations
+}\\ \hline
+\£a & £a & \£b & £b & \£c & £c & \£d & £d & \£e & £e \\ \hline
+\£f & £f & \£g & £g & \£h & £h & \£i & £i & \£j & £j \\ \hline
+\£k & $\ast$ & \£l & £l & \£m & $\ast$ & \£n & £n & \£o & £o \\ \hline
+\£p & £p & \£q & £q & \£r & £r & \£s & £s & \£t & £t \\ \hline
+\£u & £u & \£v & £v & \£w & £w & \£x & £x & \£y & £y \\ \hline
+\£z & £z & & & & & & & & \\ \hline
+\£A & £A & \£B & £B & \£C & £C & \£D & £D & \£E & £E \\ \hline
+\£F & £F & \£G & £G & \£H & £H & \£I & £I & \£J & £J \\ \hline
+\£K & $\ast$ & \£L & £L & \£M & $\ast$ & \£N & £N & \£O & £O \\ \hline
+\£P & £P & \£Q & £Q & \£R & £R & \£S & £S & \£T & £T \\ \hline
+\£U & £U & \£V & £V & \£W & £W & \£X & $\ast$ & \£Y & £Y \\ \hline
+\£Z & £Z & & & & & & & & \\ \hline
+\end{tabular}
+\hspace*{\stretch{1}}
+\end{LivreActive}
+
+\vspace*{\stretch{1}}
+\newpage
+\thispagestyle{empty}
+
+\vspace*{\stretch{1}}
+\begin{LivreActive}
+\hspace*{\stretch{1}}
+{\Large
+\begin{tabular}[c]{|>{\ttfamily }c|c||>{\ttfamily }c|c||>{\ttfamily
+ }c|c||>{\ttfamily }c|c|}\hline
+\multicolumn{8}{|c|}{
+%<fr>Voyelles
+%<en>Vowels
+}\\ \hline
+\£a & £a & \£A & £A & \£e & £e & \£E & £E \\ \hline
+\£i & £i & \£I & £I & \£o & £o & \£O & £O \\ \hline
+\£u & £u & \£U & £U & \£v & £v & \£x & £x \\ \hline
+\£c & £c & \£C & £C & \£y & £y & & \\ \hline
+\multicolumn{8}{|c|}{
+%<fr>Diphtongues
+%<en>Diphtongs
+}\\ \hline
+\£p & £p & \£q & £q & \£r & £r & \£P & £P\\ \hline
+\£Q & £Q & \£R & £R & \£w & £w & \£W & £W\\ \hline
+\£V & £V & & & & & & \\ \hline
+\multicolumn{8}{|c|}{
+%<fr>Consonnes
+%<en>Consonants
+}\\ \hline
+\£d & £d & \£f & £f & \£j & £j & \£l & £l \\ \hline
+\£n & £n & \£s & £s & \£t & £t & \£z & £z \\ \hline
+\£T & £T & \£L & £L & & & & \\ \hline
+\multicolumn{8}{|c|}{
+%<fr>Accents toniques
+%<en>Stress
+}\\ \hline
+\£b & £b & \£B & £B & \£h & £h & \£H & £H \\ \hline
+\£Kb & £Kb & \£KB & £KB & \£Kh & £Kh & \£KH & £KH \\ \hline
+\multicolumn{8}{|c|}{
+%<fr>Voyelles nasalisées
+%<en>Nasalised vowels
+}\\
+\multicolumn{8}{|c|}{
+%<fr>prononciation française
+%<en>French pronunciation
+}\\ \hline
+\£Ma & £Ma & \£Mi & £Mi & \£Mo & £Mo & \£Mu & £Mu \\ \hline
+\multicolumn{8}{|c|}{
+%<fr>prononciation anglaise
+%<en>English pronunciation
+}\\ \hline
+\£ma & £ma & \£mi & £mi & \£mo & £mo & \£mu & £mu \\ \hline
+\multicolumn{8}{|c|}{
+%<fr>Syllabisation
+%<en>Syllables marking
+}\\ \hline
+\£k & £k & \£Kk & £Kk & \£KK & £KK & \£KX& £KX\\ \hline
+\end{tabular}}
+\hspace*{\stretch{1}}
+\vspace*{\stretch{4}}
+
+{\footnotesize
+%<*fr>
+Le tableau ci-dessus est écrit dans un environnement
+\verb+LivreActive+ et l'on doit utiliser la macro \verb+\+\texttt{\£}
+pour obtenir le caractère \£. Mais on peut écrire \og £a \fg
+directement avec \og \texttt{\£a} \fg.
+
+Lorsque l'on se trouve dans l'environnement \verb+LivreActive+, on
+obtient \pron{£H£akt£e£Z} avec
+\verb+\pron{+\texttt{\£H}\BOP\texttt{\£akt}\BOP\texttt{\£e}\BOP%
+ \texttt{\£Z}\verb+}+ mais on remarquera, en lisant ce fichier
+\texttt{engpron-ex-fr.tex} ce qu'il faut faire comme \og gymnastique \fg
+pour obtenir un semblant de \texttt{verbatim}.
+%</fr>
+%<*en>
+The preceding table is written in a \verb+LivreActive+-environment and
+one must use the \verb+\+\texttt{\£}-macro to obtain the character
+\£. But one can type `£a' with a straightforward `\texttt{\£a}'.
+
+Inside a \verb+LivreActive+-environment, one obtains \pron{£H£akt£e£Z}
+with \verb+\pron{+\texttt{\£H}\BOP\texttt{\£akt}\BOP\texttt{\£e}\BOP%
+\texttt{\£Z}\verb+}+ but one will notice by reading the present
+\texttt{engpron-ex-en.tex} file what is required to obtain a semblance of
+\texttt{verbatim}.
+%</en>
+}
+
+\vspace{2\baselineskip}
+\newlength{\montruc}\settowidth{\montruc}{Yvon \textsc{Henel}, \TeX
+ nicien de surface.}
+\hspace*{\stretch{1}}\makebox[\montruc][c]{Yvon \textsc{Henel}, \TeX
+ nicien de surface.}\\[.5\baselineskip]
+\hspace*{\stretch{1}}\makebox[\montruc][c]{2008-07-15}
+
+\vspace*{\stretch{1}}
+\end{LivreActive}
+\end{document}
+%</exemple>
+% \fi
+% \iffalse
+%<*doc>
+\documentclass[a4paper]{article}
+\usepackage{xspace,array}
+\usepackage[latin1]{inputenc}
+\usepackage[tame,hyphenable]{engpron}
+\usepackage[T1]{fontenc}
+%<fr>\usepackage[english,frenchb]{babel}
+%<en>\usepackage[frenchb,english]{babel}
+\usepackage{engpron-tools}
+\usepackage{makeidx}
+\usepackage[colorlinks=true,
+ linkcolor=blue,
+ urlcolor=blue,
+ citecolor=blue]{hyperref}
+\makeindex
+\begin{document}
+\GetFileInfo{engpron.sty}
+\newcommand{\GBP}{\texttt{£}\xspace}
+%<*fr>
+\title{Documentation française de l'extension
+ \textsf{engpron}\thanks{%
+ Ce document correspond au fichier
+ \textsf{engpron}~\fileversion,
+ du \filedate, édition du cinquantenaire.}}
+%</fr>
+%<*en>
+\title{The English documentation of the package
+ \textsf{engpron}\thanks{This document corresponds to the file
+ \textsf{engpron}~\fileversion, dated \filedate.}}
+%</en>
+\author{Le \TeX nicien de surface\\
+ \href{mailto:le.texnicien.de.surface@wanadoo.fr}%
+ {le.texnicien.de.surface@wanadoo.fr}}
+\date{\docdate}
+
+\maketitle
+
+%<*fr>
+\begin{abstract}
+ Ce module n'est qu'une petite poignée fixée tant bien que mal sur
+ le module \Pkg{tipa} dont je tiens à remercier l'auteur,
+ \textsc{Fukui}~Rei, très cordialement. Je remercie également
+ T.~\textsc{Lachand-Robert} pour son ouvrage~\cite{tlachand} sans
+ lequel je ne serais que peu de chose |;)| et
+ Josselin~\textsc{Noirel} pour ses conseils sur
+ \url{fr.comp.text.tex} ainsi que pour \og notre \fg module
+ \Pkg{drac}.
+
+ Ce module fournit des macros\footnote{appelées ensuite \og macros
+ en \GBP \fg.} commençant par le caractère \GBP, rendu actif, qui
+ permettent d'écrire la prononciation de l'anglais britannique ou
+ américain à l'aide de l'API telle qu'on la trouve dans le \og
+ English Pronouncing Dictionary \fg de Daniel~\textsc{Jones}. Une
+ option permet d'obtenir le style adopté par le
+ Harraps~\cite{harraps}.
+
+ Le module \Pkg{engpron} utilise, si l'option \Option{drac} est
+ choisie comme c'est le cas par défaut, le module \Pkg{drac} pour
+ faire de \GBP un caractère actif robuste, ce qui permet d'utiliser
+ les macros en \GBP dans des arguments \og mobiles \fg au sens de
+ \LaTeX.
+
+ On trouvera en fin de document (page~\pageref{latable}) une table
+ des commandes commençant par un \GBP dans la configuration par
+ défaut : \Option{monstress} et \Option{jones}.
+\end{abstract}
+%</fr>
+%<*en>
+\begin{abstract}
+ This package is a tiny handle hardly correctly sewn on the package
+ |tipa| the author of which, \textsc{Fukui}~Rei, I thank very much. I
+ also wish to thank T.~\textsc{Lachand-Robert} for his
+ book~\cite{tlachand}, without which I would far less able than I am
+ (poorly) nowadays, and Josselin~\textsc{Noirel} for his invaluable
+ pieces of advice with which he provided me on
+ \url{fr.comp.text.tex}.
+
+ This new (2) version can use the package \texttt{drac} created by
+ Josselin~\textsc{Noirel} if the relevant option is choosen as it is
+ the case by default.
+
+ This package provides macros beginning with the \GBP character, made
+ active, which enable us to write the British or American English
+ pronunciation as one can find it in the ``English Pronouncing
+ Dictionary'' by Daniel~Jones. There is an option to typeset the
+ pronunciation in the style of the Harrap's~\cite{harraps}.
+
+ I provide a table (page~\pageref{latable}) at the end of this
+ document in which one could find the macros beginning with a
+ \texttt{£} and their effect when the options by default
+ |monstress| and |jones| are enforced.
+\end{abstract}
+%</en>
+
+\tableofcontents
+
+%<fr>\section{Utilisation}
+%<en>\section{Usage}
+
+%<*fr>
+Ce module charge \Pkg{tipa}, merveilleux module qui permet
+d'écrire en API, alphabet phonétique international, avec
+\LaTeX{}. Il fournit quelques macros qui permettent de reprendre la
+prononciation de l'anglais britannique et américain telle qu'on la
+trouve dans le \textsc{Jones}~\cite{jones15} ou dans~\cite{jones}.
+
+L'extension \Pkg{drac} est utilisé, par défaut, pour faire de \GBP un
+caractère actif robuste au sens de \LaTeX.
+%</fr>
+%<*en>
+This package loads \Pkg{tipa}, with which one can write with the
+API\footnote{Alphabet Phonétique International} through \LaTeX. It
+provides some macros which enable one to typeset the British or
+American English pronunciation \emph{à la}
+\textsc{Jones}~\cite{jones15} (default) or as
+\textsc{Harrap}~\cite{harraps} with the package option
+\Option{harraps}.
+
+The \Pkg{drac} package is used by default to make of \GBP a robust (in
+\LaTeX\ parlance) active character.
+%</en>
+
+%<fr>\subsection{Le module et ses options}
+%<en>\subsection{The Package and its Options}
+
+%<*fr>
+On présente ici les options de \Pkg{engpron}. On chargera
+\Pkg{engpron} avec, p.~ex.,
+\cs{usepackage}|[|\BOP|wild|\BOP|]|\BOP|{|\BOP|engpron|\BOP|}|.
+
+J'ai tenté de regrouper les options par rapport à leurs effets.
+%</fr>
+%<*en>
+Here come the options of \Pkg{engpron}. You can load
+\Pkg{engpron} with
+e.~g.\ \cs{usepackage}|[|\BOP|wild|\BOP|]|\BOP|{|\BOP|engpron|\BOP|}|.
+
+I have tried to group the options according to their effect.
+%</en>
+
+%<fr>\subsubsection{Comportement de \GBP}
+%<en>\subsubsection{\GBP's Behaviour}
+
+%<*fr>
+Par défaut, ou explicitement avec l'option \Option{wild}, ce module
+rend le caractère \GBP actif et le redéfinit de manière à
+\DescribeOption{wild} permettre la définition de macros comme
+|£a| et leur utilisation dans tout le texte. Il permet également
+d'obtenir une présentation uniforme de la prononciation à l'aide de
+la macro \cs{pron}\marg{texte en API}.
+%</fr>
+%<*en>
+By default or with the option \Option{wild} this package makes the
+\DescribeOption{wild}
+character \GBP active et redefines it to enable the definition of
+macros such as |£a| and their usage in all the text. It also enables
+us to obtain a uniform presentation of the pronunciation with the
+macro \cs{pron}\marg{text in API}.
+%</en>
+%<*fr>
+Si l'on préfère, on peut choisir l'option \Option{tame}
+qui rétablit le caractère \GBP dans sa catégorie dans le
+\DescribeOption{tame}
+codage fournit par |fontenc|\oarg{T1} et donc le rend actif et lui
+permet d'écrire le symbole de la livre sterling. Il faudra alors
+utiliser soit la macro \cs{Pron}\marg{texte en API}, soit
+\cs{PRON}\marg{texte en API} \TO et obtenir ainsi la présentation
+donnée par \cs{pron}\TF soit enfin l'environnement |LivreActive| dans
+lequel \GBP est activé.
+%</fr>
+%<*en>
+If you prefer, you can chose the option \Option{tame} which
+reestablish the character \GBP in its usual category in the
+\DescribeOption{tame}
+encoding given by |fontenc|\oarg{T1} i.~e.\ makes it active and makes
+it print the symbol of the pound. You will have to use either the
+macro \cs{Pron}\marg{text in API} or \cs{PRON}\marg{text in API} \TO and
+thus obtain the presentation ensured by \cs{pron}\TF or the
+environment |LivreActive| in which \GBP is active.
+%</en>
+
+%<*fr>
+Par défaut, ou explicitement avec l'option \Option{drac}, ce module
+\DescribeOption{drac}
+utilise l'extension \Pkg{drac} pour faire de \GBP un caractère
+actif et \emph{robuste} au sens des arguments mouvants de \LaTeX.
+\DescribeOption{nodrac}
+L'option opposée est \Option{nodrac} qui ne charge pas l'extension
+\Pkg{drac} est conserve les définitions de \GBP données par la
+version~1.
+%</fr>
+%<*en>
+By default or explicitly with option \Option{drac} this package
+\DescribeOption{drac}
+uses the \Pkg{drac} package to turn \GBP into a \emph{robust} active
+character where \emph{robust} has the meaning it has in the context of
+\LaTeX{} moving arguments.
+\DescribeOption{nodrac}
+The opposite option is \Option{nodrac} with which \Pkg{drac} is not
+loaded and \GBP keeps the definition given in the version~1.
+%</en>
+
+
+%<fr>\subsubsection{Aspect du texte}
+%<en>\subsubsection{The Look of the Text}
+
+%<*fr>
+Par défaut \Pkg{engpron} active l'option \Option{jones} qui
+\DescribeOption{jones} permet d'obtenir une présentation du \og r \fg
+final \PRON{a£Z} et des sons optionnels conforme à~\cite{jones15}. On
+obtient \PRON{n£Xen} pour le \og schwa \Pron{£e} \fg et \PRON{a£Xt£sa}
+pour un \og t \fg optionnel.
+%</fr>
+%<*en>
+By default \Pkg{engpron} enforces the option \Option{jones} and so
+\DescribeOption{jones} gives the presentation of the final ``r''
+\PRON{a£Z} and of the optional sounds according to~\cite{jones15}. You
+then obtain \PRON{n£Xen} for the ``schwa \Pron{£e}'' and
+\PRON{a£Xt£sa} for optional ``t''.
+%</en>
+
+%<*fr>
+\Pkg{engpron} propose également l'option \Option{harraps} qui permet
+d'obtenir \DescribeOption{harraps}\label{harrapsrfin} alors une
+présentation conforme à~\cite{harraps} \CAD que les sons optionnels
+sont représentés entre parenthèses et que le \og r \fg final se
+présente comme ceci : \textsl{r}. De plus \pron{\textsl{o}} note ce
+que Jones~\cite{jones15} écrit \PRON{£w}.
+%</fr>
+%<*en>
+There is also the option \Option{harraps} which then gives the
+presentation \DescribeOption{harraps}\label{harrapsrfin} which you
+find in~\cite{harraps}: the optional sounds are given in parenthesis
+and the final ``r'' looks like this \textsl{r}. Moreover
+\pron{\textsl{o}} denotes what Jones~\cite{jones15} writes \PRON{£w}.
+%</en>
+
+%<fr>\subsubsection{Syllabisation et accents toniques}
+%<en>\subsubsection{The Syllable Divisions and the Stresses}
+
+%<*fr>
+Le module propose plusieurs options gérant la syllabisation. Avec
+\Option{hyphenable} on \DescribeOption{hyphenable} autorise \LaTeX\ à
+couper\index{coupure} sur les marques explicites de
+syllabisation\index{syllabisation} \TO voir plus loin |£k|,
+page~\pageref{livrek}\TF et sur les marques d'accents
+toniques\index{accent tonique} \TO |£b|, |£B|, |£h| et |£H|. On dira
+alors que les marques de syllabisation et d'accents toniques sont
+\emph{sécables}\index{sécable}.
+%</fr>
+%<*en>
+The package offers many options supporting the syllable division. With
+option \Option{hyphenable} you allow \LaTeX\ to cut\index{hyphenation}
+words on the explicit marks of syllable division\index{syllable
+ division} \TO see below |£k|, page~\pageref{livrek} \TF and on the
+marks of primary or secondary stresses\index{stress} \TO |£b|, |£B|,
+|£h| et |£H|. In such a case I will say that the marks of syllable
+divisions and of stresses ar \emph{cuttable}\index{cuttable}.
+%</en>
+
+%<*fr>
+Avec l'option \Option{unhyphenable}, on interdit la coupure des mots
+sur ces marques. Les marques sont dites alors
+\emph{insécables}\index{insécable}. \DescribeOption{unhyphenable} Pour
+conserver le comportement des versions précédentes, c'est l'option
+\Option{unhyphenable} qui est choisie par défaut.
+%</fr>
+%<*en>
+With the option \Option{unhyphenable} you forbid the cutting of words
+on those marks. Those marks are then said to be
+\emph{uncuttable}\index{uncuttable}. \DescribeOption{unhyphenable} To
+keep the behaviour of the preceding version, the option
+\Option{unhyphenable} is the default.
+%</en>
+
+\vspace{\baselineskip}
+
+%<*fr>
+On peut choisir entre l'option \Option{visible} et l'option
+\Option{invisible}. Avec la première, \Option{visible}, la marque de
+\DescribeOption{visible} syllabisation, |£k|, produit un glyphe qui
+est défini par \cs{EPSyllabeMarque} \TO macro que l'on peut redéfinir
+à coup de \cs{renewcommand} et qui, par défaut, donne un simple
+point. Lorsque l'option \Option{invisible} est en vigueur, la macro
+\DescribeOption{invisible} |£k| ne produit aucun glyphe mais la césure
+y reste possible si l'option \Option{hyphenable} est en vigueur.
+%</fr>
+%<*en>
+You can chose between option \Option{visible} and option
+\DescribeOption{visible} \Option{invisible}. With the first,
+\Option{visible}, the macro of syllable division |£k| produces a glyph
+which is defined by \cs{EPSyllabeMarque} \TO macro that you can
+redefine with \cs{renewcommand} and which by default gives a plain
+dot. When you enforce option \Option{invisible}, the macro |£k|
+produces no glyph but is un\slash cuttable according to the chosen
+option between \Option{hyphenable} and \Option{unhyphenable}.
+%</en>
+
+\vspace{\baselineskip}
+
+%<*fr>
+\Pkg{engpron} propose deux autres options : \Option{monstress},
+\DescribeOption{monstress} option par défaut, et
+\Option{tipastress}. Elles sont exclusives l'une de l'autre et
+définissent les glyphes représentant les accents toniques principaux
+et secondaires. L'utilisateur peut \DescribeOption{tipastress}
+redéfinir à sa convenance les deux macros utilisées par défaut
+\cs{EPaccentprincipal} et \cs{EPaccent}\BOP|secondaire| et remplacer
+ainsi les \og glyphes \fg que je fournis par défaut. Avec la
+première, on obtient \Pron{£h} et \Pron{£b} comme marque d'accent
+tonique principal et secondaire respectivement et avec la deuxième
+\textprimstress{} et \textsecstress{} respectivement, glyphes fournis
+par \Pkg{tipa}.
+%</fr>
+%<*en>
+\Pkg{engpron} offers two other options: \Option{monstress} which is
+\DescribeOption{monstress} the default and \Option{tipastress}. They
+are mutually exclusive and set the glyphs which present the primary
+and secondary stresses. The \DescribeOption{tipastress} user can
+redefine with \cs{renewcommand} the macros used by default \TO
+\cs{EPaccentprincipal} and \cs{EPaccentsecondaire}\TF and thus replace
+the default glyphs I provide. With the first, and default, option you
+obtain \Pron{£h} and \Pron{£b} as glyphs of primary and secondary
+stress respectively; with the second option you obtain
+\textprimstress{} and \textsecstress{} respectively, glyphs provided
+by \Pkg{tipa}.
+%</en>
+
+
+%<fr>\subsubsection{Brouillon et erreur}
+%<en>\subsubsection{Draft and Error}
+
+%<*fr>
+Certaines macros, à savoir |£K|, |£m| et |£M|, attendent une lettre
+pour déterminer ce qu'elles ont à faire. Cependant toutes les lettres
+ne conviennent pas. Avec l'option \Option{final},
+\DescribeOption{final}qui s'oppose à \Option{draft}, \Pkg{engpron} ne
+produit rien dans le document mais émet un \DescribeOption{draft}
+avertissement dont on trouve la trace dans le fichier |.log|, avec
+l'option \Option{nice}, ou s'arrête sur une erreur
+\DescribeOption{nice} avec l'option \Option{tough}. Avec
+\Option{draft}, on lit le texte suivant dans le document produit:
+\texttt{\string?\string!<*>\string!\string?} où \DescribeOption{tough}
+\texttt{*} tient ici la place du caractère \emph{erroné}.
+%</fr>
+%<*en>
+Some macros, \emph{viz.} |£K|, |£m|, and |£M|, await a letter to
+\DescribeOption{final} determine what they have to do. However all the
+letters are not suitable. With option \Option{final} which is the
+opposite of \DescribeOption{draft} \Option{draft} \Pkg{engpron}
+doesn't produce anything in the document but emits a warning you can
+find in the |.log| file if you \DescribeOption{nice} have choosen
+option \Option{nice} or stops on an error if option
+\DescribeOption{tough} \Option{tough} is enforced. With option
+\Option{draft} you can read, in the document, the following
+``message'' \texttt{\string?\string!<*>\string!\string?} where
+\texttt{*} plays here the role of the \emph{erroneous} character.
+%</en>
+
+%<fr>\subsubsection{Résumé des options disponibles}
+%<en>\subsubsection{Summary of Available Options}
+
+%<*fr>
+Bref, pour résumer:
+\nopagebreak{}\par\nopagebreak{}
+\noindent
+\begin{tabular}{*{2}{>{\scshape}l} l}
+ \multicolumn{1}{l}{L'option par défaut} &
+ \multicolumn{1}{l}{et l'option opposée} &
+ agissent sur\\
+ wild & tame & activité de \GBP\\
+ drac & nodrac & robustesse de \GBP\\
+ jones & harraps & notation de la prononciation\\
+ monstress & tipastress & notation des accents toniques\\
+ unhyphenable & hyphenable & création de points de césure\\
+ visible & invisible & visibilité de la syllabisation\\
+ \multicolumn{3}{l}{\emph{En cas d'erreur avec} \texttt{£K},
+ \texttt{£M} \emph{ou} \texttt{£m}}\\
+ final & draft & trace \og écrite\fg \\
+ nice & tough & avertissement ou message d'erreur
+\end{tabular}
+%</fr>
+%<*en>
+To sum it up:
+\nopagebreak{}\par\nopagebreak{}
+\noindent
+\begin{tabular}{*{2}{>{\scshape}l} l}
+ \multicolumn{1}{l}{The default option} &
+ \multicolumn{1}{l}{and the opposite option} &
+ act on\\
+ wild & tame & active status of \GBP\\
+ drac & nodrac & robustness of \GBP\\
+ jones & harraps & notation of the pronunciation\\
+ monstress & tipastress & notation of stresses\\
+ unhyphenable & hyphenable & creation of discretionary break\\
+ visible & invisible & visibility of syllable divisions\\
+ \multicolumn{3}{l}{\emph{In case of an error with} \texttt{£K},
+ \texttt{£M}, \emph{or} \texttt{£m}}\\
+ final & draft & written trace in the doc \\
+ nice & tough & \TeX\ warning or error
+\end{tabular}
+%</en>
+
+%<fr>\subsection{Les macros \og \GBP \fg}
+%<en>\subsection{The \GBP Macros}
+\label{sec:macrospound}
+
+%<fr>Nous allons maintenant présenter les macros commençant par \GBP.
+%<en>I will now present the macros the name of which begins with \GBP.
+
+%<*fr>
+Pour réaliser ces macros, je me suis appuyé une fois encore sur
+T.~\textsc{Lachand-Robert} dans~\cite{tlachand}. C'est son exemple
+de macros utilisant |§| pour écrire les lettres grecques qui m'a
+donné l'idée de faire pareil pour pouvoir noter la phonétique
+anglaise, ce dont j'avais besoin pour mes classes\footnote{On finit
+ par faire des choses étranges lorsque l'on enseigne les
+ mathématiques \emph{en anglais} en section européenne de
+ lycée\Sourire.}. Et c'est en piochant de ci de là que j'ai trouvé
+les techniques pour réaliser les macros comme \cs{EP@haut}.
+%</fr>
+%<*en>
+To create these macros I used once again the book~\cite{tlachand} by
+T.~\textsc{Lachand-Robert}. It's from its example of macros using |§|
+to write greek letters that came the idea of doing something on the
+same line to denote the pronunciation of English words. I needed that
+then for I was teaching maths in English to French pupils in ``Euro''
+section. I found bits every now and then which gave me the means of
+creating macros such as \cs{EP@haut}.
+%</en>
+
+%<*fr>
+Je ne présente dans cette section que quelques unes des macros
+reprises dans la table située page~\pageref{latable}.
+%</fr>
+%<*en>
+In this section I present just some of the macros which are all given
+in the table on page~\pageref{latable}.
+%</en>
+
+%<fr>\subsubsection{Accents toniques}
+%<en>\subsubsection{The Stress Marks}
+
+%<*fr>
+On obtient les accents toniques \TO tels que définit par l'option
+\DescribePoundMacro{h} \Option{tipastress} ou \Option{monstress}\TF
+avec, pour l'accent tonique principal\index{accent
+principal}\index{accent tonique}, \DescribePoundMacro{H} |£h| \TO |h|
+comme \emph{haut}\TF ou encore, pour des raisons de commodités de
+frappe au clavier, par |£H|. \DescribePoundMacro{b}Pour l'accent
+tonique secondaire\index{accent secondaire}, on utilisera
+\DescribePoundMacro{B}
+indifféremment soit |£b| soit |£B| \TO |b| pour \emph{bas}.
+%</fr>
+%<*en>
+You will obtain the stress marks \TO as defined by the option
+\DescribePoundMacro{h}
+\Option{tipastress} or \Option{monstress}\TF with, for the primary
+\DescribePoundMacro{H}
+stress |£h| or |£H| and for the secondary stress with |£b| or |£B|.
+\DescribePoundMacro{b}
+\DescribePoundMacro{b} The ``rationale'' for them are, in French, |h| for
+\DescribePoundMacro{B}
+\emph{haut} and |b| for \emph{bas} but I think it is safe to think to
+\emph{high} and \emph{below}.
+%</en>
+
+%<*fr>
+\NOUVEAU{Désormais, quand l'option \Option{hyphenable} est choisie, les
+ marques d'accents toniques fournissent à \TeX\ des points de
+ coupure de mot \TO \emph{césure}. Ils sont sécables.}
+%</fr>
+%<*en>
+\NOUVEAU{From version~2, when option \Option{hyphenable} have been
+ chosen these stress marks are cuttable i.~e.\ they give \TeX\
+ discretionary breaks.}
+%</en>
+
+%<fr>\subsubsection{Syllabisation}
+%<en>\subsubsection{Syllable Division}
+
+%<*fr>
+\NOUVEAU{Ce qui concerne la \emph{syllabisation}, \CAD l'indication
+ des limites de syllabes, est introduit par la version~2 du
+ module.}
+%</fr>
+%<*en>
+\NOUVEAU{What pertains to syllable division, i.~e.\ marking the limits
+ of the syllables, is introduced in version~2 of the package.}
+%</en>
+
+%<*fr>
+On peut avoir envie, ou besoin, d'indiquer la limite des syllabes
+des mots, comme on le voit dans le Jones~\cite{jones15}. Pour ce
+faire, le module fournit une seule macro \cs{EPSyllabeCoupure}
+\DescribeMacro{EPSyllabeCoupure} rattachée à la macro\label{livrek}
+|£k|\DescribePoundMacro{k}. Son comportement est contrôlé par les
+couples d'options \Option{hyphenable}\slash \Option{unhyphenable} et
+\Option{visible}\slash \Option{invisible}. Avec
+\Option{hyphenable}, elle indique à \LaTeX\ un point de coupure de
+mot, ce qu'elle ne fait pas avec \Option{unhyphenable}. Avec
+\Option{visible}, elle place un glyphe dont \cs{EPSyllabeMarque}
+\DescribeMacro{EPSyllabeMarque} détermine
+l'aspect. Avec \Option{invisible}, elle ne produit rien.
+%</fr>
+%<*en>
+You may want, or need, to show the limits of the syllables of words as
+\DescribeMacro{EPSyllabeCoupure}
+you can see it in the Jones~\cite{jones15}. To this effect, the
+package provides one macro \cs{EPSyllabeCoupure} linked to the
+|£k|~macro.\label{livrek} Its behaviour is controlled by the following
+pairs of opposite options: \Option{hyphenable}\slash
+\Option{unhyphenable} and \Option{visible}\slash
+\Option{invisible}. With \Option{hyphenable} the macro gives \TeX\ a
+discretionary break which it doesn't with option
+\Option{unhyphenable}. With option \Option{visible} |£k| produces the
+\DescribeMacro{EPSyllabeMarque}
+glyph determined by \cs{EPSyllabeMarque} whereas with
+\Option{invisible} it produces nothing.
+%</en>
+
+%<*fr>
+Par défaut, \cs{EPSyllabeMarque} est définie comme un bête point. On
+prendra garde au fait que, \cs{EPSyllabeMarque} intervenant comme
+argument de \cs{discretionary}, elle est soumise à certaines
+restrictions comme, p.~ex. le fait de ne pas pouvoir contenir de
+mathématiques.
+%</fr>
+%<*en>
+By default, \cs{EPSyllabeMarque} is equal to a period (full stop). You
+should take care of the fact that, for \cs{EPSyllabeMarque} is an
+argument of \cs{discretionary}, it suffers some restrictions such as
+e.~g.\ to not contain maths.
+%</en>
+
+%<*fr>
+Quelles que soient les options en vigueur, on peut
+toujours\label{livreK} indiquer un point de coupure possible à l'aide
+de |£KX|, dans ce cas aucun glyphe n'est \DescribePoundMacro{KX}
+produit et le point est \emph{invisible}. Avec |£KB| et |£KH| on
+produit un \DescribePoundMacro{KB} \DescribePoundMacro{KH} accent
+tonique secondaire ou principal \emph{sécable}. Avec |£Kb| ou |£Kh|,
+les accents toniques sont \emph{insécables}. Avec |£Kk|, on place une
+marque de syllabisation toujours visible et toujours
+insécable. \DescribePoundMacro{Kk} Enfin, |£KK|
+\DescribePoundMacro{KK} produit toujours une marque de syllabisation
+visible et sécable. L'aspect des marques de syllabisation est, bien
+entendu, fixé par \cs{EPSyllabeMarque}. On aura remarqué que les
+minuscules sont liées à des objets \emph{insécables} et les capitales
+à des objets \emph{sécables}\footnote{Si c'est pas du souci du détail
+ et de la systématique!}. Je n'ai pas éprouvé le besoin de fournir un
+|£Kx| qui ne ferait strictement rien: une chaine de caractères vide me
+semble faire tout aussi bien l'affaire.
+%</fr>
+%<*en>
+Whatever are the enforced options, you can always give \TeX\ a
+\DescribePoundMacro{KX} discretionary break with |£KX| which doesn't
+produce any glyph so |£KX| is cuttable and invisible. With |£KB| and
+|£KH| you get \DescribePoundMacro{KB}\DescribePoundMacro{KH}
+respectively primary and secondary \emph{cuttable} stress marks. With
+|£Kk| you get an always \emph{visible} and \emph{uncuttable} syllable
+division mark. Lastly |£KK| \DescribePoundMacro{KK} produces an always
+visible and cuttable syllable division mark. The look of the marks is
+as a matter of course set by \cs{EPSyllabeMarque}. You will have
+remarked that lower case letters are linked to \emph{uncuttable} marks
+and upper case letters to \emph{cuttable} ones. I have feel no urge to
+provide a |£Kx| which would have done strictly nothing, I tend to
+believe that then a void string is largely enough.
+%</en>
+
+%<fr>\subsubsection{Sons optionnels}
+%<en>\subsubsection{Optional Sounds}
+
+%<*fr>
+Pour indiquer les sons optionnels \DescribePoundMacro{X} on
+utilisera la macro |£X|\meta{une lettre} qui \textbf{doit} être suivie
+d'\emph{une lettre}. La macro ne fonctionne pas si elle est suivie
+d'un groupe\footnote{Peut-être pour la prochaine version, qui sait ?}.
+Cette macro fournit normalement ce qu'il faut pour les sons optionnels
+de l'anglais. Elle traite différemment (avec l'option \Option{jones})
+la lettre \og e \fg qui donne \PRON{£Xe} et les autres comme \og t \fg
+qui donne \PRON{£Xt} avec |£Xe| et |£Xt| respectivement.
+%</fr>
+%<*en>
+To note optional sounds \DescribePoundMacro{X} you will use the |£X|
+macro as in |£X|\meta{one letter} for |£X| \textbf{must} be followed
+by \textbf{a single letter}. The macro doesn't work if followed by a
+group. It normally can deal with the optional sounds of the English
+language. It makes the difference, when option \Option{jones} is
+enforced, between the letter ``e'' which gives \PRON{£Xe} and the
+others such as ``t'' which gives \PRON{£Xt} with |£Xe| and |£Xt|
+respectively.
+%</en>
+
+%<*fr>
+Pour noter le \og r \fg final qui n'est prononcé qu'en cas de liaison,
+on \DescribePoundMacro{Z} utilisera |£Z| qui est redéfinit lors du
+choix de l'option \Option{harraps} \TO voir~\ref{harrapsrfin}.
+%</fr>
+%<*en>
+To denote the final and \TO to use Jones' term\TF potential ``r''
+which is pronounced, in British English, when followed by a word
+beginning by a vowel, you will use \DescribePoundMacro{Z} |£Z| which is
+redefined when option \Option{harraps} is chosen,
+see~\ref{harrapsrfin}.
+%</en>
+
+%<fr>\subsection{Autres macros et un environnement}
+%<en>\subsection{Other Macros and one Environment}
+ \label{sec:autresmacros}
+
+%<*fr>
+L'utilisateur a accès \TO facilement\TF à un certain nombres de
+commandes qui permettent de régler des détails de présentation. Il
+peut les redéfinir par \cs{renewcommand} et obtenir ainsi son propre
+style.
+%</fr>
+%<*en>
+I give the user an easy access to some macros which enable us to set
+some details of presentation. You can redefine them with
+\cs{renewcommand} and so doing obtain your own style.
+%</en>
+
+%<*fr>
+Comme indiquée ci-dessus, cf. \Option{monstress}, les macros
+\cs{EPaccentprincipal} et \cs{EPaccent}\BOP|secondaire| définissent
+les glyphes obtenus par |£H| et |£B| respectivement.
+%</fr>
+%<*en>
+As already said above \TO see \Option{monstress} \TF the macros
+\cs{EPaccentprincipal} and \cs{EPaccentsecondaire} define the glyphs
+obtained with |£H| and |£B| respectively.
+%</en>
+
+%<*fr>
+\NOUVEAU{Apparue avec la version~2}, la macro \cs{EPAccentCoupure}
+\DescribeMacro{EPAccentCoupure} définit le comportement des marques
+d'accents toniques en cas de césure. Par défaut, la marque d'accent
+tonique passe à la ligne avec la syllabe qui porte l'accent, autrement
+dit, \Pron{£Bh£p£kf£Xen£H£q£k£s£Xen} est coupé, si nécessaire, en
+\Pron{£Bh£p£kf£Xen}\verb+|+\Pron{£H£q£k£s£Xen}.
+%</fr>
+%<*en>
+\NOUVEAU{Since version~2} the \cs{EPAccentCoupure} macro set the
+\DescribeMacro{EPAccentCoupure}
+behaviour of the stress marks when there is a break. The default is to
+keep the stress mark with the text which begins the new line
+i.~e.\ \Pron{£Bh£p£kf£Xen£H£q£k£s£Xen} is cut, if necessary, as
+\Pron{£Bh£p£kf£Xen}\verb+|+\Pron{£H£q£k£s£Xen}.
+%</en>
+
+%<*fr>
+\NOUVEAU{Depuis la version~2}, la macro \cs{EPSyllabeMarque} définit
+la marque de limite de syllabe et \cs{EPSyllabeCoupure} définit le
+comportement de la coupure sur une telle marque. Par défaut,
+\DescribeMacro{EPSyllabeCoupure} la césure sur \Pron{£Hh£p£kf£Xen}
+donne \Pron{£Hh£p£k}\verb+|+\Pron{f£Xen}, autrement dit, la marque
+de syllabisation est conservée avant le saut de ligne.
+%</fr>
+%<*en>
+\NOUVEAU{Since version~2} the \cs{EPSyllabeMarque} set the mark for
+syllable division and \cs{EPSyllabe}\BOP|Coupure| defines the
+behaviour of \DescribeMacro{EPSyllabeCoupure} the mark in case of
+break. Default is to keep the mark at the end of the line so
+\Pron{£Hh£p£kf£Xen} is cut in \Pron{£Hh£p£k}\verb+|+\Pron{f£Xen}.
+%</en>
+
+%<*fr>
+Les macros \cs{EPouvrante}, \cs{EPfermante} et \cs{EPtextestyle}
+définissent \DescribeMacro{EPouvrante} ce qui entoure la
+prononciation et, pour la troisième, le style du
+\DescribeMacro{EPfermante} texte de cette prononciation. Par
+défaut, les deux première donnent \EPouvrante{}
+\DescribeMacro{EPtextestyle} et \EPfermante{} et \cs{EPtextestyle}
+est définie comme |\rmfamily\upshape|.
+%</fr>
+%<*en>
+The macros \cs{EPouvrante} (\emph{opening}) and \cs{EPfermante}
+(\emph{closing}) define \DescribeMacro{EPouvrante} what precedes and
+follows the pronunciation. The macro \cs{EPtextestyle} defines the
+style of the \DescribeMacro{EPfermante} text of the pronunciation. By
+default, the first two macros give \EPouvrante{} and
+\EPfermante{}; \DescribeMacro{EPtextestyle} \cs{EPtextestyle} is
+defined as |\rmfamily\upshape|.
+%</en>
+
+%<*fr>
+Pour ce qui suit je noterai que \og la livre est active
+\fg\index{livre!active} pour signifier que le
+caractère \GBP est actif et \textbf{n'est pas} défini pour donner le
+glyphe de la livre sterling mais bien pour renvoyer la macro
+commençant par \GBP. J'écrirai que \og la livre est
+inactive\index{livre!inactive} \fg dans tous les
+autres cas.
+%</fr>
+%<*en>
+In what follows I will write that ``the pound is
+active''\index{pound!active} to mean that the
+character \GBP is active and \textbf{is not} defined to produce the
+glyph of the pound sterling but to give the macro beginning with
+\GBP. In all other cases I will write that ``the pound is
+inactive''\index{pound!inactive}.
+%</en>
+
+%<*fr>
+Ces trois macros sont utilisée par \cs{pron} et \cs{PRON} pour
+permettre \DescribeMacro{pron} l'obtention d'une présentation uniforme
+quelque soit le contexte et l'activité de la livre. La macro
+\cs{pron}\marg{texte} permet d'obtenir une présentation de la
+prononciation comme on la trouve habituellement après un mot dans un
+texte au long. On l'utilise lorsque \og la livre est
+active\index{livre!active} \fg. On écrira alors
+|\pron{ma£i}| pour obtenir \PRON{ma£i}.
+%</fr>
+%<*en>
+Those three macros are used by \cs{pron} and \cs{PRON} to produce a
+\DescribeMacro{pron} uniform presentation whatever the contexte and
+the activity of the pound. The macro \cs{pron}\marg{text} produces a
+presentation of the pronunciation as you can find it usually after a
+word in a text. You will use it when ``the pound is
+active\index{pound!active}.'' You will then write |\pron{ma£i}| to
+obtain \PRON{ma£i}.
+%</en>
+
+%<*fr>
+Lorsque \og la livre est inactive\index{livre!inactive} \fg, on
+utilisera \DescribeMacro{PRON} \cs{PRON}\marg{texte} pour obtenir le
+même résultat. En fait, comme dans ce document je charge le module
+\Pkg{engpron} avec l'option \Option{tame} j'ai obtenu, au paragraphe
+précédent, \PRON{ma£i} avec |\PRON{ma£i}|. Et là je vous ai tout dit !
+%</fr>
+%<*en>
+When ``the pound is inactive\index{pound!inactive}'' you will use
+\DescribeMacro{PRON} \cs{PRON}\marg{text} to obtain the same
+result. In fact as in this document I've loaded the package
+\Pkg{engpron} with option \Option{tame} I've obtained, in the
+preceding paragraph, \PRON{ma£i} with |\PRON{ma£i}|. And now I've said
+it all!
+%</en>
+
+%<*fr>
+Enfin, la livre étant inactive\index{livre!inactive},
+\cs{Pron}\marg{texte} fournit le \DescribeMacro{Pron} moyen de taper
+de l'API sans la présentation donnée par \cs{pron}. En tapant
+|\Pron{£Hf£in£k£i£kg£en}| on obtiendra simplement
+\Pron{£Hf£in£k£i£kg£en} sans \og décoration \fg.
+%</fr>
+%<*en>
+Lastly when the pound is inactive\index{pound!inactive},
+\cs{Pron}\marg{text} give the means of enter API without the
+presentation given by \cs{pron}. With |\Pron{£Hf£in£k£i£kg£en}| you
+will simply obtain \Pron{£Hf£in£k£i£kg£en} without ``decoration.''
+%</en>
+
+%<*fr>
+La macro \cs{ActiveLaLivre} \DescribeMacro{ActiveLaLivre} rend la
+livre active\index{livre!active}, elle est utilisée par \cs{Pron},
+\cs{PRON} et l'environnement qui suit. On peut l'utiliser dans un
+tableau \TO avec le module \Pkg{array}\TF pour obtenir la livre active
+dans une colonne, par exemple.
+%</fr>
+%<*en>
+The macro \cs{ActiveLaLivre} \DescribeMacro{ActiveLaLivre} makes the
+pound active\index{pound!active}, it is used by \cs{Pron}, \cs{PRON},
+and the following environment. You can use it for example in a array
+\TO with the package \Pkg{array}\TF to make the pound active in a
+column.
+%</en>
+
+%<*fr>
+L'environnement \DescribeEnv{LivreActive} fait ce que son
+nom indique et active la livre. C'est tout ce qu'il fait. On pourra
+donc taper l'horrible \\[2pt]
+|\begin{LivreActive} \pron{£Hstj£U£kp£id} \end{LivreActive}|\\[2pt]
+au lieu de |\PRON{£Hklev£k£E£Z}|. On aura compris qu'il s'utilise pour
+de long texte, des tables\dots
+%</fr>
+%<*en>
+
+%</en>
+%<*doc>
+
+\vspace{\baselineskip}
+
+
+%<*fr>
+\NOUVEAU{Pour finir}, avec les macros antagonistes
+\DescribeMacro{MakeHyphenable} \cs{MakeHyphenable}\slash
+\cs{MakeUnHyphenable} on peut contrarier l'effet des options
+\Option{hyphenable}\slash\Option{unhyphenable}
+\DescribeMacro{MakeUnHyphenable}\index{coupure}.
+%</fr>
+%<*en>
+\NOUVEAU{To conclude}, with the antagonistic macros
+\DescribeMacro{MakeHyphenable} \cs{MakeHyphenable}\slash
+\cs{MakeUnHyphenable} you can thwart the effect of options
+\Option{hyphenable}\slash\Option{unhyphenable}
+\DescribeMacro{MakeUnHyphenable}\index{hyphenation}.
+%</en>
+
+%<*fr>
+\cs{MakeHyphenable} redéfinit les macros liées à |£H|, |£h|, |£B|,
+|£b| et |£k|\index{accent tonique}\index{syllabisation} pour qu'elles
+fournissent des marques
+sécables\index{marque!sécable}\index{sécable}. \cs{MakeUnHyphenable} les
+redéfinit pour que les marques soient
+insécables\index{marque!insécable}\index{insécable}. La
+visibilité\index{marque!visibilité}\index{visibilité} de |£k| n'est
+pas modifiée.
+%</fr>
+%<*en>
+\cs{MakeHyphenable} redefines the macros linked to |£H|, |£h|, |£B|,
+|£b|, and |£k|\index{stress}\index{syllable division} in order that
+they produce cuttable\index{mark!cuttable}\index{cuttable}
+marks. \cs{MakeUnHyphenable} redefines them to obtain uncuttable
+marks\index{mark!uncuttable}\index{uncuttable}. The
+visibility\index{mark!visibility}\index{visibility} of |£k| is not
+modified.
+%</en>
+
+%<*fr>
+Autre couple de macros opposées: \DescribeMacro{MakeVisible}
+\cs{MakeVisible}\slash\cs{MakeInVisible}. La macro
+\cs{Make}\BOP|Vi|\BOP|si|\BOP|ble| redéfinit la macro liée à
+|£k|\index{syllabisation}\index{visibilité} pour qu'elle fournisse des
+marques visibles\index{marque!visible},
+\cs{MakeInVisible}\index{marque!visible} fait le
+\DescribeMacro{MakeInVisible} contraire. La
+sécabilité\index{sécabilité} de |£k| n'est pas modifiée.
+%</fr>
+%<*en>
+Other pair of opposite macros: \DescribeMacro{MakeVisible}
+\cs{MakeVisible}\slash\cs{MakeInVisible}. The macro
+\cs{Make}\BOP|Vi|\BOP|sible| redefines the macro linked to
+|£k|\index{syllable division}\index{visibility} to make it produce
+visible marks\index{mark!visible}, \cs{MakeInVisible} does the
+opposite\index{mark!invisible}\DescribeMacro{MakeInVisible}. The
+cuttability\index{cuttability} of |£k| is not modified.
+%</en>
+
+\subsection{Conclusion}
+\label{sec:conclusion}
+
+%<*fr>
+On remarquera en regardant la table~\ref{latable} ou le code de
+l'extension qu'il reste de la place pour définir d'autres macros
+utilisant la livre active.
+%</fr>
+%<*en>
+You will notice, if you look at the table~\ref{latable} or the code of
+this package, that there remain place to define other macros using
+an active pound.
+%</en>
+
+%<*fr>
+Tout d'abord quelques lettres ne sont pas employées et, par exemple,
+|£S| ne fait rien. Par ailleurs, on peut définir d'autre macros avec
+plus d'une lettre derrière le \GBP mais on devra alors taper
+|£{aeiou}| pour utiliser en fait la macro |\£aeiou|. Je pense qu'il
+faudrait réserver cela à des macros ayant un effet substantiel
+\Sourire.
+%</fr>
+%<*en>
+First of all some letters are not used and e.~g.\ |£S| does nothing. On
+the other hand, you can define other macros with more than one letter
+behind \GBP but you will have to type |£{aeiou}| to use a macro the
+true name of which would be |\£aeiou|. I do believe it should be kept
+for macros with a substantial effect \Sourire.
+%</en>
+
+%<*fr>
+En dernier lieu, j'avouerais que le codage
+choisi n'est pas forcément optimal. En fait, je l'ai élaboré au fur
+à mesure des besoins et il n'y a pas de règle générale
+d'organisation. Toutefois on pourra remarquer quelques efforts de
+système.
+%</fr>
+%<*en>
+As a conclusion, I will freely admit that the chosen code is not
+necessarily optimal. Actually, I have made it along in view of my
+needs and I cannot say that there is a general rule for
+organization. Nevertheless you will be able to notice some efforts
+made towards systematization.
+%</en>
+
+%<*fr>
+L'utilisateur devrait se sentir libre d'effectuer les changements
+qu'il souhaite \TO mais dans ce cas, conformément à la licence sous
+laquelle est publié ce module, on devra en changer le nom\TF ou,
+s'il le préfère me demander de les mettre en \oe uvre. Je ne fais
+cependant aucune promesse quant à la rapidité à laquelle
+j'interviendrais.
+%</fr>
+%<*en>
+You should feel free to make changes you want as long as \TO in accord
+with the license under which this package is made available\TF you
+change its name. You can, if you prefer, ask for modification and I
+will try to make it according to your requirement if feasible but I
+make \textbf{no} promise to be quick and clever.
+%</en>
+
+\begin{thebibliography}{99}
+%<en>\addcontentsline{toc}{section}{Bibliography}
+%<fr>\addcontentsline{toc}{section}{Bibliographie}
+\bibitem{jones15} Daniel~\textsc{Jones} \dag.
+\emph{English Pronouncing Dictionary}.
+15th Edition. This major new edition edited by Peter Roach \& James
+Hartman.
+Cambridge University Press, \oldstylenums{1997}.\\
+\textsc{isbn} : \texttt{0-521-45903-6}
+\bibitem{jones} Daniel~\textsc{Jones} \dag.
+\emph{English Pronouncing Dictionary}.
+Cambridge University Press, \oldstylenums{1991}.
+\bibitem{tlachand} T.~\textsc{Lachand-Robert}.
+\emph{La maîtrise de \TeX{} et \LaTeX{}}.
+Masson, Paris, Milan, Barcelone, \oldstylenums{1995}.\\
+\textsc{isbn} : \texttt{2-225-84832-7}.
+\bibitem{harraps} J. E. \textsc{Manson}, M.A.
+\emph{Harrap's New Shorter French And English Dictionary.}
+Revised edition \copyright{} George G. Harrap \&
+Co. Ltd. \oldstylenums{1967}.
+Bordas diffuseur, \oldstylenums{1980}.\\
+\textsc{isbn} : \texttt{0 245 59062 5}
+\end{thebibliography}
+
+\newpage
+
+%<fr>\section{Table des macros \GBP}
+%<en>\section{Table of the \GBP Macros}
+
+\thispagestyle{empty}{\LARGE
+\vspace*{\stretch{1}}
+\begin{LivreActive}
+\noindent
+\begin{tabular}[l]{|>{\ttfamily }c|>{\ActiveLaLivre }c||>{\ttfamily
+}c|c||>{\ttfamily }c|c||>{\ttfamily}c|c|}\hline
+%<fr>\multicolumn{8}{|c|}{Voyelles}\\ \hline
+%<en>\multicolumn{8}{|c|}{Vowels}\\ \hline
+\£a & £a & \£A & £A & \£e & £e & \£E & £E \\ \hline
+\£i & £i & \£I & £I & \£o & £o & \£O & £O \\ \hline
+\£u & £u & \£U & £U & \£v & £v & \£x & £x \\ \hline
+\£c & £c & \£C & £C & \£y & £y & & \\ \hline
+%<fr>\multicolumn{8}{|c|}{Diphtongues}\\ \hline
+%<en>\multicolumn{8}{|c|}{Diphthongs}\\ \hline
+\£p & £p & \£q & £q & \£r & £r & \£P & £P\\ \hline
+\£Q & £Q & \£R & £R & \£w & £w & \£W & £W\\ \hline
+\£V & £V & & & & & & \\ \hline
+%<fr>\multicolumn{8}{|c|}{Consonnes}\\ \hline
+%<en>\multicolumn{8}{|c|}{Consonants}\\ \hline
+\£d & £d & \£f & £f & \£j & £j & \£l & £l \\ \hline
+\£n & £n & \£s & £s & \£t & £t & \£z & £z \\ \hline
+\£T & £T & \£L & £L & & & & \\ \hline
+%<fr>\multicolumn{8}{|c|}{Accents toniques}\\ \hline
+%<en>\multicolumn{8}{|c|}{Stresses}\\ \hline
+\£b & £b & \£B & £B & \£h & £h & \£H & £H \\ \hline
+\£Kb & £Kb & \£KB & £KB & \£Kh & £Kh & \£KH & £KH \\ \hline
+%<fr>\multicolumn{8}{|c|}{Syllabisation}\\ \hline
+%<en>\multicolumn{8}{|c|}{Syllable division}\\ \hline
+\£k & £k & \£Kk & £Kk & \£KK & £KK & \£KX & £KX \\ \hline
+%<fr>\multicolumn{8}{|c|}{Voyelles nasalisées}\\
+%<en>\multicolumn{8}{|c|}{French nasalised vowels}\\
+%<fr>\multicolumn{8}{|c|}{prononciation française}\\ \hline
+%<en>\multicolumn{8}{|c|}{French pronunciation}\\ \hline
+\£Ma & £Ma & \£Mi & £Mi & \£Mo & £Mo & \£Mu & £Mu \\ \hline
+%<fr>\multicolumn{8}{|c|}{prononciation anglaise}\\ \hline
+%<en>\multicolumn{8}{|c|}{English pronunciation}\\ \hline
+\£ma & £ma & \£mi & £mi & \£mo & £mo & \£mu & £mu \\ \hline
+\end{tabular}\label{latable}
+\end{LivreActive}
+\vspace*{\stretch{1}}
+}
+
+\printindex
+\end{document}
+%</doc>
+% \fi
+\endinput
+% \iffalse
+%%% Local Variables:
+%%% mode: doctex
+%%% TeX-master: t
+%%% fill-column: 70
+%%% End:
+% \fi
diff --git a/macros/latex/contrib/engpron/engpron.ins b/macros/latex/contrib/engpron/engpron.ins
new file mode 100644
index 0000000000..40776952d2
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron.ins
@@ -0,0 +1,75 @@
+%%
+%% Copyright (C) 2004, 2008 by Yvon Henel alias Le TeXnicien de surface
+%% <le.texnicien.de.surface@wanadoo.fr>
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.2 of this license
+%% or (at your option) any later version. The latest version of this
+%% license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.2 or later is part of all distributions of LaTeX version
+%% 1999/12/01 or later.
+%%
+\ifx\documentclass\YvonHenelAliasLeTexnicienDeSurfaceIsNotUndefined
+\def\End{\csname fi\endcsname\end}
+\bgroup
+\obeyspaces
+\immediate\write16 {*************************************************************}
+\immediate\write16 {** *}
+\immediate\write16 {** CAUTION: Use LATEX to compile this file! *}
+\immediate\write16 {** *}
+\immediate\write16 {** ATTENTION: Utiliser LATEX pour compiler ce fichier ! *}
+\immediate\write16 {** *}
+\immediate\write16 {*************************************************************}
+\egroup
+\End
+\else
+\input{docstrip}
+\keepsilent
+\preamble
+This is a generated file.
+
+Copyright (C) 2003-2008 Y. Henel, le TeXnicien de surface
+<le.texnicien.de.surface@wanadoo.fr>
+
+This file may be distributed and/or modified under the conditions of
+the LaTeX Project Public License, either version 1.2 of this license
+or (at your option) any later version. The latest version of this
+license is in:
+
+ http://www.latex-project.org/lppl.txt
+
+and version 1.2 or later is part of all distributions of LaTeX version
+1999/12/01 or later.
+\endpreamble
+
+\askforoverwritefalse
+\generate{
+ \file{engpron.sty}{\from{engpron.dtx}{package,en}}
+ \file{engpron-tools.sty}{\from{engpron.dtx}{doc-sty}}
+ \file{engpron-en.ltx}{\from{engpron.dtx}{doc,en}}
+ \file{engpron-fr.ltx}{\from{engpron.dtx}{doc,fr}}
+ \file{engpron-ex-fr.tex}{\from{engpron.dtx}{exemple,fr}}
+ \file{engpron-ex-en.tex}{\from{engpron.dtx}{exemple,en}}
+ }
+\obeyspaces
+\Msg{*****************************************************************}
+\Msg{* *}
+\Msg{* To finish the installation you have to move the following *}
+\Msg{* file into a directory searched by TeX: *}
+\Msg{* engpron.sty *}
+\Msg{*****************************************************************}
+\Msg{* Pour finir l'installation vous devez placer *}
+\Msg{* le fichier suivant dans un dossier parcouru par TeX: *}
+\Msg{* engpron.sty *}
+\Msg{* *}
+\Msg{* To produce the documentation read the README file *}
+\Msg{* Pour produire la documentation lire le fichier LISEZMOI *}
+\Msg{* *}
+\Msg{** Happy TeXing **}
+\Msg{** TeXez dans la joie ! **}
+\Msg{*****************************************************************}
+\fi
+\endbatchfile
diff --git a/macros/latex/contrib/engpron/engpron.pdf b/macros/latex/contrib/engpron/engpron.pdf
new file mode 100644
index 0000000000..24416ab7e0
--- /dev/null
+++ b/macros/latex/contrib/engpron/engpron.pdf
Binary files differ