From f635c3a0313dc1bfa20fbf48b7dd30979a6f5dec Mon Sep 17 00:00:00 2001 From: Manuel Pégourié-Gonnard Date: Thu, 22 May 2008 14:27:04 +0000 Subject: mlist v0.6 2008/05/22 (from tds.zip) git-svn-id: svn://tug.org/texlive/trunk@8287 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/mlist/README | 11 ++++-- Master/texmf-dist/doc/latex/mlist/mlist.pdf | Bin 204427 -> 207322 bytes Master/texmf-dist/source/latex/mlist/mlist.dtx | 52 ++++++++++++++++++++----- Master/texmf-dist/tex/latex/mlist/mlist.cfg | 2 + Master/texmf-dist/tex/latex/mlist/mlist.sty | 11 +++--- 5 files changed, 58 insertions(+), 18 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/mlist/README b/Master/texmf-dist/doc/latex/mlist/README index 946db637cc1..accf735e90a 100644 --- a/Master/texmf-dist/doc/latex/mlist/README +++ b/Master/texmf-dist/doc/latex/mlist/README @@ -1,6 +1,6 @@ _________________ The MLIST package -v0.5 +v0.6 This package defines the commands \newvect, \newmatr, \newfunc, and \newmset for creating macros to typeset vectors, matrices, @@ -21,8 +21,11 @@ All aspects of the typeset appearance can be adjusted, and new Consider this package an exploration of separation of form and content for some mathematical constructions. I hope you find it useful. -______________ -Change history +____________________ +Brief change history + +v0.6: Added the headhook option to accomodate accents to + the head symbol. Perhaps a little experimental. v0.5: Introduced \newmset for defining mathematical sets; with pre-defined sets \setR, \setC, \setZ, \setN. @@ -31,5 +34,5 @@ ______________ Will Robertson wspr 81 [at] gmail [dot] com -Copyright 2007 +Copyright 2007-2008 Distributed under the LaTeX Project Public License diff --git a/Master/texmf-dist/doc/latex/mlist/mlist.pdf b/Master/texmf-dist/doc/latex/mlist/mlist.pdf index 8c3e7f3528e..649903b0630 100644 Binary files a/Master/texmf-dist/doc/latex/mlist/mlist.pdf and b/Master/texmf-dist/doc/latex/mlist/mlist.pdf differ diff --git a/Master/texmf-dist/source/latex/mlist/mlist.dtx b/Master/texmf-dist/source/latex/mlist/mlist.dtx index 19ba4116a7a..1ec3d35f9a6 100644 --- a/Master/texmf-dist/source/latex/mlist/mlist.dtx +++ b/Master/texmf-dist/source/latex/mlist/mlist.dtx @@ -5,7 +5,7 @@ %<*readme> _________________ The MLIST package -v0.5 +v0.6 This package defines the commands \newvect, \newmatr, \newfunc, and \newmset for creating macros to typeset vectors, matrices, @@ -26,8 +26,11 @@ All aspects of the typeset appearance can be adjusted, and new Consider this package an exploration of separation of form and content for some mathematical constructions. I hope you find it useful. -______________ -Change history +____________________ +Brief change history + +v0.6: Added the headhook option to accomodate accents to + the head symbol. Perhaps a little experimental. v0.5: Introduced \newmset for defining mathematical sets; with pre-defined sets \setR, \setC, \setZ, \setN. @@ -36,7 +39,7 @@ ______________ Will Robertson wspr 81 [at] gmail [dot] com -Copyright 2007 +Copyright 2007-2008 Distributed under the LaTeX Project Public License % %<*internal> @@ -411,6 +414,35 @@ This work consists of the file mlist.dtx % \[ \A{1,2,3,4} \qquad \A{3} \] % \end{example} % +% \subsection{Head prefixing} +% +% Applying (things like) accents to \pkg{mlist}s will often give the wrong result: +% \begin{example}{} +% \newfunc\A{A} +% $\A{1}$ \qquad $\bar{\A{1}}$ +% \end{example} +% +% The solution for this involves defining a prefix for the head element with the |headhook| option: +% \begin{example}{} +% \newfunc\A{A} +% \newcommand\baraccent[1]{% +% {\mlistsetup{headhook=\bar}#1}} +% $\A{1}$ \qquad $\baraccent{\A{1}}$ +% \end{example} +% +% This method can also be used to apply \emph{post}fix elements as well: +% \begin{example}{} +% \newfunc\A{A} +% \newcommand\postprime[1]{#1'} +% \newcommand\primeaccent[1]{% +% {\mlistsetup{headhook=\postprime}#1}} +% $\A{1}$ \qquad $\A{1}'$ \qquad $\primeaccent{\A{1}}$ +% \end{example} +% +% The user interface for these features is rather rough and needs more thought; it might be better if \cmd\mlistsetup\ did not need to be called in the accent definition. +% +% For these reasons the |headhook| feature should be considered a little experimental and possibly subject to change in the future. It should certainly be accompanied by a variety of `\cmd\baraccent'--like commands, unless \cmd\bar\ can be patched to recognise such situations automatically (this seems unlikely). +% % \subsection{Delimiter formatting} % % The \opt{wrap} and \opt{wrapone} options are used to change the way @@ -546,6 +578,7 @@ This work consists of the file mlist.dtx elemcmd=\mlistelem, headcmd=\mathbf, index={}, + headhook={}, } % \end{macrocode} % @@ -722,7 +755,7 @@ This work consists of the file mlist.dtx % % \begin{macrocode} \ProvidesPackage{mlist} - [2007/09/19 v0.5 Typesetting maths lists] + [2008/05/22 v0.6 Typesetting maths lists] % \end{macrocode} % % \PrintChanges @@ -850,7 +883,7 @@ This work consists of the file mlist.dtx % \begin{macrocode} \define@cmdkeys[mlist]{sym}[mlist@]{% symbol,index,sep,sepsep,elem, - elemcmd,headcmd,dot,dots} + elemcmd,headcmd,dot,dots,headhook} % \end{macrocode} % % \subsection{Wrapping} @@ -1003,7 +1036,7 @@ This work consists of the file mlist.dtx % If there are no optional arguments, typeset the plain vector symbol. % \begin{macrocode} \ifx\@empty\mlist@index\relax - \def\mlist@list{\mlist@headcmd{\mlist@symbol}}% + \def\mlist@list{\mlist@headcmd{\mlist@headhook\mlist@symbol}}% \else % \end{macrocode} % Otherwise, iterate over every semicolon-separated list. @@ -1043,7 +1076,7 @@ This work consists of the file mlist.dtx \ifx\@ii\mlist@period \mlist@add{\mlist@dot\@gobble}% \else - \mlist@add{\mlist@elemcmd{\mlist@symbol}}% + \mlist@add{\mlist@elemcmd{\mlist@headhook\mlist@symbol}}% \fi \fi}% % \end{macrocode} @@ -1075,7 +1108,7 @@ This work consists of the file mlist.dtx % That was the end of semicolon-separated iteration. % \begin{macrocode} \def\mlist@list{% - \mlist@wrap{\mlist@headcmd{\mlist@symbol}} + \mlist@wrap{\mlist@headcmd{\mlist@headhook\mlist@symbol}} {\mlist@list@elems}}% % \end{macrocode} % If only have a single element: @@ -1094,6 +1127,7 @@ This work consists of the file mlist.dtx % required since I separated the list creation and typesetting.} % \changes{v0.4}{2007/05/19}{Simplified `single index' code.} % \changes{v0.5}{2007/06/06}{Added \cmd\mlist@headcmd\ command to the \cmd\mlist@symbol inside \cmd\mlist@wrap\ (fixed bug with \cmd\mset)} +% \changes{v0.6}{2008/04/02}{Added \cmd\mlist@headhook.} % \end{macro} % % \begin{macro}{\mlist@add} diff --git a/Master/texmf-dist/tex/latex/mlist/mlist.cfg b/Master/texmf-dist/tex/latex/mlist/mlist.cfg index 9d193412c7c..0e10dd5f77e 100644 --- a/Master/texmf-dist/tex/latex/mlist/mlist.cfg +++ b/Master/texmf-dist/tex/latex/mlist/mlist.cfg @@ -11,6 +11,7 @@ %% %% License information appended. %% +%% \mlistsetup{% sep={,}, sepsep={;}, @@ -21,6 +22,7 @@ elemcmd=\mlistelem, headcmd=\mathbf, index={}, + headhook={}, } \newmlist\vect[ wrapcmd=\mlistparen, diff --git a/Master/texmf-dist/tex/latex/mlist/mlist.sty b/Master/texmf-dist/tex/latex/mlist/mlist.sty index aa9d1b56aeb..71edc383ef8 100644 --- a/Master/texmf-dist/tex/latex/mlist/mlist.sty +++ b/Master/texmf-dist/tex/latex/mlist/mlist.sty @@ -11,8 +11,9 @@ %% %% License information appended. %% +%% \ProvidesPackage{mlist} - [2007/09/19 v0.5 Typesetting maths lists] + [2008/05/22 v0.6 Typesetting maths lists] \let\mlisthead\@firstofone \let\mlistelem\@secondoftwo \newcommand\mlistsub [2]{#1_{#2}} @@ -71,7 +72,7 @@ \newcommand\mlistsetup[1]{\setkeys[mlist]{sym}{#1}} \define@cmdkeys[mlist]{sym}[mlist@]{% symbol,index,sep,sepsep,elem, - elemcmd,headcmd,dot,dots} + elemcmd,headcmd,dot,dots,headhook} \define@key[mlist]{sym}{wrapcmd}{\let\mlist@wrap#1} \define@key[mlist]{sym}{wraponecmd}[\mlist@wrap]{\let\mlist@wrapone#1} \define@key[mlist]{sym}{wrap}{% @@ -123,7 +124,7 @@ \def\MID{\csname mlist@\the\@tempcnta @mid\endcsname}% \def\LAST{\csname mlist@\the\@tempcnta @last\endcsname}% \ifx\@empty\mlist@index\relax - \def\mlist@list{\mlist@headcmd{\mlist@symbol}}% + \def\mlist@list{\mlist@headcmd{\mlist@headhook\mlist@symbol}}% \else \@tempcnta\z@ \@tempswafalse @@ -150,7 +151,7 @@ \ifx\@ii\mlist@period \mlist@add{\mlist@dot\@gobble}% \else - \mlist@add{\mlist@elemcmd{\mlist@symbol}}% + \mlist@add{\mlist@elemcmd{\mlist@headhook\mlist@symbol}}% \fi \fi}% \mlist@parse@implicit @@ -166,7 +167,7 @@ }% }% \def\mlist@list{% - \mlist@wrap{\mlist@headcmd{\mlist@symbol}} + \mlist@wrap{\mlist@headcmd{\mlist@headhook\mlist@symbol}} {\mlist@list@elems}}% \ifnum\@tempcnta=\@ne \ifnum\@tempcntb=\@ne -- cgit v1.2.3