summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/linguex
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2009-11-22 20:19:47 +0000
committerManuel Pégourié-Gonnard <mpg@elzevir.fr>2009-11-22 20:19:47 +0000
commita5d7ec213c9a99c3ed2f0bea186ac271d7178e7d (patch)
treea6759107a70df0b54416644a2576a409ca956230 /Master/texmf-dist/tex/latex/linguex
parent2343619e5df72635118c615acbb6cf617e4dc55c (diff)
linguex update (Version 4.0 --- September 2009)
git-svn-id: svn://tug.org/texlive/trunk@16129 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/linguex')
-rw-r--r--Master/texmf-dist/tex/latex/linguex/linguex.sty175
1 files changed, 105 insertions, 70 deletions
diff --git a/Master/texmf-dist/tex/latex/linguex/linguex.sty b/Master/texmf-dist/tex/latex/linguex/linguex.sty
index b9b129bfa08..dde58368998 100644
--- a/Master/texmf-dist/tex/latex/linguex/linguex.sty
+++ b/Master/texmf-dist/tex/latex/linguex/linguex.sty
@@ -17,10 +17,11 @@
%% with kerning in fonts
%% linguex.sty version 3.7a, revised 2009/09/02, replaced hard-coded
%% example format with \theExNo
-%% linguex.sty version 3.7b, revised 2009/09/18, fixed double paren bug
+%% linguex.sty version 4.0 replaces hard-coded brackets with
+%% predefined commands
%% Author: Wolfgang.Sternefeld@uni-tuebingen.de
%% status: supported
-%% filedate 2008/06/30
+%% filedate 2009/10/15
\RequirePackage{xspace,cgloss4e}
%%%%%%%%%%%%%%%%%%% FOOTNOTES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% to let \ex. know whether or not it is in a footnote
@@ -35,19 +36,32 @@
\newcounter{SubSubExNo}[SubExNo]
\newcounter{FnExNo}[footnote]
\newcounter{ABC}
-\renewcommand{\theExNo}{(\arabic{ExNo})}
-\renewcommand{\theFnExNo}{(\roman{FnExNo})}
-\newcommand{\refdash}{-}
-\newcommand{\SubSubExLeftBracket}{(}
-\newcommand{\SubSubExRightBracket}{)}
-\newcommand{\SubExLeftBracket}{}
-\newcommand{\SubExRightBracket}{.}
-\renewcommand{\theSubExNo}{\hbox{(\if@noftnote\arabic{ExNo}\else
- \roman{FnExNo}\fi\refdash\alph{SubExNo})}}
+\newcommand{\ExLBr}{(}%added in version 4.0
+\newcommand{\ExRBr}{)}%added in version 4.0
+\newcommand{\FnExLBr}{(}%added in version 4.0
+\newcommand{\FnExRBr}{)}%added in version 4.0
+\newcommand{\theExLBr}{(}%added in version 4.0
+\newcommand{\theExRBr}{)}%added in version 4.0
+\newcommand{\theFnExLBr}{(}%added in version 4.0
+\newcommand{\theFnExRBr}{)}%added in version 4.0
+\renewcommand{\theExNo}{\theExLBr\arabic{ExNo}\theExRBr}%modified in version 4.0
+\renewcommand{\theFnExNo}{\theFnExLBr\roman{FnExNo}\theFnExRBr}%removed in version 4.0
+\newcommand{\firstrefdash}{-}
+\newcommand{\secondrefdash}{-}
+\newcommand{\SubExLBr}{}
+\newcommand{\SubExRBr}{.}
+\newcommand{\SubSubExLBr}{(}
+\newcommand{\SubSubExRBr}{)}
+\newcommand{\Exarabic}{\arabic}%added in version 4.0
+\newcommand{\Exalph}{\alph}%added in version 4.0
+\newcommand{\Exroman}{\roman}%added in version 4.0
+% Modification in version 4.0: hard wired brackets replaced by
+% commands defined above:
+\renewcommand{\theSubExNo}{\hbox{\if@noftnote\theExLBr\Exarabic{ExNo}\firstrefdash\Exalph{SubExNo}\theExRBr\else
+\theFnExLBr\Exroman{FnExNo}\firstrefdash\Exalph{SubExNo}\theFnExRBr\fi}}
\renewcommand{\theSubSubExNo}{%
- \hbox{(\if@noftnote\arabic{ExNo}\else\roman{FnExNo}\fi
- \refdash\alph{SubExNo}\refdash\if@noftnote\roman{SubSubExNo}%
- \else\arabic{SubSubExNo}\fi)}}
+ \hbox{\if@noftnote\theExLBr\Exarabic{ExNo}\firstrefdash\Exalph{SubExNo}\secondrefdash\Exroman{SubSubExNo}\theExRBr%
+ \else\theFnExLBr\Exroman{FnExNo}\firstrefdash\Exalph{SubExNo}\secondrefdash\Exarabic{SubSubExNo}\theFnExRBr\fi}}%
%
%%%%%%%%%%%%%% LENGTHS FOR SPACING %%%%%%%%%%%%%%%%%%%%%%%%%%
\newlength{\currentlabel}
@@ -62,6 +76,7 @@
\newlength{\SubSubExleftmargin}
\newlength{\Exlabelsep}
\newlength{\alignSubExnegindent}
+\newlength{\Exredux}
\newif\ifalignSubEx
\newcommand{\resetExdefaults}{%
\setlength{\Exlabelsep}{1.3em}%
@@ -70,22 +85,24 @@
\setlength{\SubExleftmargin}{2em}%
\setlength{\Exindent}{0pt}%
\setlength{\Exlabelwidth}{4em}%
- \setlength{\alignSubExnegindent}{\Exlabelsep}
+ \setlength{\alignSubExnegindent}{\Exlabelsep}%
\ifalignSubEx\addtolength{\Exlabelsep}{.7em}%
- \addtolength{\alignSubExnegindent}{.7em}\fi
-}
+ \addtolength{\alignSubExnegindent}{.7em}\fi
+ \setlength{\Exredux}{-\baselineskip}%
+ }
\AtBeginDocument{\resetExdefaults}
%%%
\newlength\digitwidth%added-3.7
\newlength\mindigitwidth%added-3.7
\newcommand{\minimalwidth}[1]{\settowidth{\digitwidth}{#1}%added-3.7
\ifdim\digitwidth<\mindigitwidth\mindigitwidth\digitwidth\fi}%added-3.7
+%
%%%%%%%%%%%%%%%%%%% DEFINITION OF \ex. %%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifembedded
\newif\ifExWarning
\newcounter{ExDepth}
\newcounter{TempExDepth}\setcounter{TempExDepth}{0}
-\def\trivex.#1\par{\ifdim\lastskip=.66\baselineskip\vspace{-\baselineskip}\fi
+\def\trivex.#1\par{\ifdim\lastskip=\Extopsep\vspace{\Exredux}\fi
\begin{list}{}{\leftmargin\z@%
\labelwidth\z@\labelsep\z@\partopsep\z@\topsep\Extopsep}%
\item{}#1%
@@ -95,7 +112,7 @@
\setcounter{ExDepth}{0}
\embeddedtrue\fi
\ifembedded\else
- \ifdim\lastskip=.66\baselineskip\vspace{-\baselineskip}\fi
+ \ifdim\lastskip=\Extopsep\vspace{\Exredux}\fi
\fi
\refstepcounter{ExDepth}%
\my@ifnextchar[{\OptArgEx}{\ifindex\expandafter\lookforwords\fi
@@ -108,49 +125,63 @@
check number of empty lines at end of examples.
Detected}\fi\ExWarningtrue
\if@noftnote\refstepcounter{ExNo}%
- \Exformat[\theExNo]%
+ \Exformat[\ExLBr\Exarabic{ExNo}\ExRBr]%
\else
- \refstepcounter{FnExNo}\Exformat[(\roman{FnExNo})]%
+ \refstepcounter{FnExNo}\Exformat[\FnExLBr\Exroman{FnExNo}\FnExRBr]%
\fi}
\def\OptArgEx[#1]{\Exformat[#1]\expandafter\testforgramm\ifindex\expandafter
\lookforwords\fi}
+\def\philarge{4\mindigitwidth}
+\def\philmiddle{3\mindigitwidth}
+\def\philsmall{2\mindigitwidth}
+%%%%%%%%%%%%%%%
+\newcommand{\phlabelwidth}[1]{%
+ \renewcommand{\philarge}{#1}%
+ \renewcommand{\philmiddle}{#1}%
+ \renewcommand{\philsmall}{#1}}
+\newcommand{\phlabeldefault}{%
+ \renewcommand{\philarge}{4\mindigitwidth}%
+ \renewcommand{\philmiddle}{3\mindigitwidth}%
+ \renewcommand{\philsmall}{2\mindigitwidth}}
\newcommand{\ExEnd}{%
\ifnum\theExDepth=0\global\unembeddedfalse\else%
\end{list}\addtocounter{ExDepth}{-1}\ExEnd\fi}
- \newcommand{\listdecl}{\parsep\z@\itemsep\z@\partopsep\z@\labelsep\z@%
- \@Exleftmargin\z@%
- \settowidth{\digitwidth}{0}\mindigitwidth\digitwidth%modified-3.7
- \minimalwidth{1}%modified-3.7
- \minimalwidth{2}%
- \minimalwidth{3}%
- \minimalwidth{4}%
- \minimalwidth{5}%
- \minimalwidth{6}%
- \minimalwidth{7}%
- \minimalwidth{8}%
- \minimalwidth{9}%
- \settowidth{\lessthanthousand}{(\hbox to 4\mindigitwidth{})}%modified-3.7
- \ifdim\currentlabel<\lessthanthousand\leftmargin\Exlabelsep
- \ifdim\lessthanthousand<\Exlabelwidth\Exlabelwidth\Exlabelsep%
- \settowidth{\lessthanten}{(\hbox to 2\mindigitwidth{})}%modified-3.7
- \settowidth{\lessthanhundred}{(\hbox to 3\mindigitwidth{})}%modified-3.7
- \ifdim\currentlabel<\lessthanten\leftmargin\lessthanten%
- \else
- \ifdim\currentlabel<\lessthanhundred\leftmargin\lessthanhundred%
- \else
- \ifdim\currentlabel<\lessthanthousand\leftmargin\lessthanthousand%
- \fi\fi\fi\fi
- \else
- \Exlabelwidth\z@
- \fi%
- \@Exleftmargin\Exlabelwidth
- \labelwidth\leftmargin
- \ifembedded\relax\else
- \addtolength{\Exlabelwidth}{\Exindent}
- \fi
- \addtolength{\leftmargin}{\Exlabelwidth}%
- \addtolength{\labelwidth}{\@Exleftmargin}%
- }
+ \newcommand{\listdecl}{\parsep\z@\itemsep\z@\partopsep\z@\labelsep\z@%
+ \@Exleftmargin\z@%
+ \settowidth{\digitwidth}{0}\mindigitwidth\digitwidth%modified-3.7
+ \minimalwidth{1}%modified-3.7
+ \minimalwidth{2}%
+ \minimalwidth{3}%
+ \minimalwidth{4}%
+ \minimalwidth{5}%
+ \minimalwidth{6}%
+ \minimalwidth{7}%
+ \minimalwidth{8}%
+ \minimalwidth{9}%
+ \settowidth{\lessthanthousand}{\ExLBr\hbox to \philarge{}\ExRBr}%modified-3.7,4.0
+ \ifdim\currentlabel<\lessthanthousand\leftmargin\Exlabelsep
+ \ifdim\lessthanthousand<\Exlabelwidth\Exlabelwidth\Exlabelsep%
+ \settowidth{\lessthanten}{\ExLBr\hbox
+ to \philsmall{}\ExRBr}%modified-3.7
+ \settowidth{\lessthanhundred}{\ExLBr\hbox to
+ \philmiddle{}\ExRBr}%modified-3.7
+ \ifdim\currentlabel<\lessthanten\leftmargin\lessthanten%
+ \else
+ \ifdim\currentlabel<\lessthanhundred\leftmargin\lessthanhundred%
+ \else
+ \ifdim\currentlabel<\lessthanthousand\leftmargin\lessthanthousand%
+ \fi\fi\fi\fi
+ \else
+ \Exlabelwidth\z@
+ \fi%
+ \@Exleftmargin\Exlabelwidth
+ \labelwidth\leftmargin
+ \ifembedded\relax\else
+ \addtolength{\Exlabelwidth}{\Exindent}
+ \fi
+ \addtolength{\leftmargin}{\Exlabelwidth}%
+ \addtolength{\labelwidth}{\@Exleftmargin}%
+}
\def\Exformat[#1]{%
\settowidth{\currentlabel}{#1}%
\begin{list}{\makebox[\labelwidth][l]{#1}}{%
@@ -162,7 +193,7 @@
\ifindex\firstwordtrue\fi\item{}}
%
%%%%%%%% the `[' of OPTIONAL ARGUMENTS must immediately follow \ex. %%%%%%
-%%%% redefinition of \@ifnextchar which does NOT ignore spaces %%%%%%%%%%%
+%%%% redefinition of \@ifnextchar that does NOT ignore spaces %%%%%%%%%%%
\def\my@ifnextchar#1#2#3{\let\reserved@d=#1%
\def\reserved@a{#2}\def\reserved@b{#3}%
\futurelet\@let@token\my@ifnch}
@@ -201,37 +232,37 @@
%
%%%%%%%%%%%%%%%% SUBLISTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifunembedded
-\newcommand{\SubExlabel}{\SubExLeftBracket\alph{SubExNo}\SubExRightBracket}
+\newcommand{\SubExlabel}{\SubExLBr\Exalph{SubExNo}\SubExRBr}
\def\a.{\ifindex\firstwordtrue\fi
\ifnum\theExDepth=0 \unembeddedtrue
\trivex.\fi
\refstepcounter{ExDepth}%
\begin{list}{\makebox[\labelwidth][l]{%
- \ifnum\theExDepth=1 \SubExLeftBracket\alph{ABC}\SubExRightBracket%
+ \ifnum\theExDepth=1 \SubExLBr\Exalph{ABC}\SubExRBr%
\else
\ifnum\theExDepth=2 %
\ifdim\currentlabel<\lessthanthousand%
\ifalignSubEx
\llap{\hbox to \alignSubExnegindent{\ifunembedded%
- \SubExLeftBracket\alph{SubExNo}\SubExRightBracket
+ \SubExLBr\Exalph{SubExNo}\SubExRBr
\else\SubExlabel\fi\hss}}%
\else\SubExlabel\fi%
\else\ifunembedded%
- \SubSubExLeftBracket\roman{SubExNo}\SubSubExRightBracket
+ \SubSubExLBr\Exroman{SubExNo}\SubSubExRBr
\else\SubExlabel\fi\fi
\else
\ifnum\theExDepth=3 %
\if@noftnote%\ifunembedded\mbox{$\bullet$!}\else
- \SubSubExLeftBracket\roman{SubSubExNo}\SubSubExRightBracket
+ \SubSubExLBr\Exroman{SubSubExNo}\SubSubExRBr
%\fi
- \else\arabic{SubSubExNo}\SubSubExRightBracket\fi
+ \else\Exarabic{SubSubExNo}\SubSubExRBr\fi
\fi\fi\fi}}%
{\labelsep\z@
\ifnum\theExDepth=2\topsep .3\Extopsep\else\topsep 0pt\fi
\parsep\z@\itemsep\z@
\ifnum\theExDepth=1 %
\usecounter{ABC}%
- \settowidth{\currentlabel}{\theExNo}%
+ \settowidth{\currentlabel}{\ExLBr\Exarabic{ExNo}\ExRBr}%
\listdecl%
\else
\ifnum\theExDepth=2 %
@@ -352,25 +383,29 @@
\copyExNo\addtocounter{tmpaEx}{2}\printExNo}
\newcommand{\TextNext}{\NoFnReftrue\copyExNo\refstepcounter{tmpaEx}\printExNo}
\newcommand{\Last}{\if@noftnote\NoFnReftrue\else
- \ifnum\arabic{FnExNo}=0 \NoFnReftrue\else\NoFnReffalse\fi
+ \ifnum\Exarabic{FnExNo}=0 \NoFnReftrue\else\NoFnReffalse\fi
\fi
\copyExNo\printExNo}
\newcommand{\LLast}{\if@noftnote\NoFnReftrue\copyExNo%
\addtocounter{tmpaEx}{-1}%
\else
- \ifnum\arabic{FnExNo}=0 \NoFnReftrue\copyExNo%
+ \ifnum\Exarabic{FnExNo}=0 \NoFnReftrue\copyExNo%
\addtocounter{tmpaEx}{-1}%
\else
- \ifnum\arabic{FnExNo}=1 \NoFnReftrue\copyExNo%
+ \ifnum\Exarabic{FnExNo}=1 \NoFnReftrue\copyExNo%
\else
\NoFnReffalse\copyExNo\addtocounter{tmpaEx}{-1}%
\fi\fi\fi
\printExNo}
\newcommand{\copyExNo}{\strut\ifNoFnRef\setcounter{tmpaEx}{\value{ExNo}}%
- \def\thetmpaEx{\arabic{tmpaEx}}%
+ \def\thetmpaEx{\Exarabic{tmpaEx}}%
\else
- \setcounter{tmpaEx}{\value{FnExNo}}\def\thetmpaEx{\roman{tmpaEx}}%
+ \setcounter{tmpaEx}{\value{FnExNo}}\def\thetmpaEx{\Exroman{tmpaEx}}%
\fi}
-\def\complexExNo[#1]{\hbox{(\thetmpaEx\refdash#1)}}
-\newcommand{\printExNo}{\@ifnextchar[{\complexExNo}{(\thetmpaEx)\xspace}}
+\def\complexExNo[#1]{\hbox{\if@noftnote\theExLBr\else\theFnExLBr\fi%
+ \thetmpaEx\firstrefdash#1\if@noftnote\theExRBr\else\theFnExRBr\fi}}%hard wired bracket changed to \theExBr in version 4.0
+\newcommand{\printExNo}{\@ifnextchar[{\complexExNo}{%
+ \if@noftnote\theExLBr\else\theFnExLBr\fi\thetmpaEx%
+ \if@noftnote\theExRBr\else\theFnExRBr\fi\xspace}}%hard
+ %wired bracket changed to \theExBr in version 4.0
%%%%%%%%%%%%%%%%%%%%%%%%%%% END %%%%%%%%%%%%%%%%%%%%%%%%%%