From 68d7784f18db56a9cae1530fddf2c191e5e3402f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 17 Sep 2019 21:11:19 +0000 Subject: upmethodology (17sep19) git-svn-id: svn://tug.org/texlive/trunk@52111 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/upmethodology/upmethodology-doc.pdf | Bin 355555 -> 346938 bytes .../doc/latex/upmethodology/upmethodology-doc.tex | 108 +++++++++++++++++++-- .../tex/latex/upmethodology/UPMVERSION.def | 2 +- .../latex/upmethodology/upmethodology-document.cls | 30 +++++- .../tex/latex/upmethodology/upmethodology-spec.sty | 33 +++---- 5 files changed, 145 insertions(+), 28 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdf b/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdf index f1bad92b537..c95d723e653 100644 Binary files a/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdf and b/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdf differ diff --git a/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.tex b/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.tex index c7b44593fbf..c168be50c2c 100644 --- a/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.tex +++ b/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.tex @@ -1,4 +1,4 @@ -\documentclass[book]{upmethodology-document} +\documentclass[book,taskpackage,specpackage,codepackage]{upmethodology-document} \setfrontcover{classic} @@ -9,6 +9,8 @@ \incsubversion{\makedate{08}{08}{2017}}{Fixing spelling errors and typos.}{\upmpublic} \incsubversion{\makedate{28}{11}{2017}}{Add 'standardlists' option.}{\upmpublic} \incsubversion{\makedate{04}{08}{2019}}{Add 'graphicspathcontext' option.}{\upmpublic} +\incversion{\makedate{17}{09}{2019}}{Add class options to include optional packages.}{\upmpublic} +%\incversion{\makedate{17}{09}{2019}}{Add the documentation for the \texttt{upmethodology-spec} package.}{\upmpublic} \addauthorvalidator*[galland@arakhne.org]{St{\'e}phane}{Galland}{Original Author} \addauthor*{Frans}{van Dunn\'e}{Reviewer} @@ -27,6 +29,7 @@ \let\VERtask\upm@package@task@ver \let\VERdocclazz\upm@package@docclazz@ver \let\VERcode\upm@package@code@ver +\let\VERspec\upm@package@spec@ver \makeatother \setpublisher{Arakhn\^e.org Group} @@ -66,9 +69,10 @@ Packages are: \item \texttt{upmethodology-document.sty}: provides functions to manage the project, the subproject and the status of the document; \item \texttt{upmethodology-frontpage.sty}: formats and provides a front page for the document; \item \texttt{upmethodology-backpage.sty}: formats and provides a back page for the document; -\item \texttt{upmethodology-task.sty}: is the \LaTeXe\xspace package that provides macros to manage project's tasks. +\item \texttt{upmethodology-task.sty}: is the \emph{optional} \LaTeXe\xspace package that provides macros to manage project's tasks. +\item \texttt{upmethodology-spec.sty}: is the \emph{optional} \LaTeXe\xspace package that provides macros to build a specification description. \item \texttt{upmethodology-document.cls}: is the \LaTeXe\xspace class that provides the whole document specification. It is based on \texttt{book} and on the previous packages; -\item \texttt{upmethodology-code.sty}: provides macros for source code formatting; +\item \texttt{upmethodology-code.sty}: provides \emph{optional} macros for source code formatting; \item \texttt{upmethodology-extension.sty}: provides macros for extension mechanism. \end{itemize} @@ -136,13 +140,13 @@ This section contains the list of all the package dependencies for the \texttt{u \item \texttt{a4wide} \item \texttt{hyperref} \item \texttt{upmethodology-backpage} -\item \texttt{upmethodology-code} +\item \texttt{upmethodology-code} (optional) \item \texttt{upmethodology-document} \item \texttt{upmethodology-extension} \item \texttt{upmethodology-frontpage} \item \texttt{upmethodology-p-common} -\item \texttt{upmethodology-spec} -\item \texttt{upmethodology-task} +\item \texttt{upmethodology-spec} (optionnal) +\item \texttt{upmethodology-task} (optionnal) \item \texttt{url} \end{itemize} @@ -319,6 +323,18 @@ nobackcover & do not put a cover page at the end of the document. \\ standardlists & The style does not override the standard list, description and enumeration definitions. \\ +\hline\hline + +codepackage & Include the \texttt{upmethodology-code} package. \\ + +\hline + +specpackage & Include the \texttt{upmethodology-spec} package. \\ + +\hline + +taskpackage & Include the \texttt{upmethodology-task} package. \\ + \hline \end{mtable} @@ -2074,6 +2090,86 @@ The provided macros are listed in the following table: \\ %########################################################### +%\chapter{Package upmethodology-spec} + +%\begin{center} +% \texttt{Version: \VERspec} +%\end{center} + +%The \LaTeX\ package \texttt{upmethodology-spec} provides a set of macros for building a specification document. + +%\section{Specification Definition} + +%The definition of a specification could be made only inside one of the following environments: \\ +%\texttt{{\textbackslash}begin\{detailspec\}[width]\{title\}...{\textbackslash}end\{detailspec\}} \\ +%\texttt{{\textbackslash}begin\{detailspec*\}[width]\{title\}...{\textbackslash}end\{detailspec*\}} \\ +%where \texttt{width} is the width of the specification box on the page, and \texttt{title} is the title of the specification box. + +%The environment \texttt{specdetail} displays the detailed description and uses a more complex rendering. On the other hand, \texttt{specdetail*} never displays the description and uses a simpler rendering. + +%\section{Components of a Specification} + +%A specification has several components that may be defined by the macros in the following table: +%\begin{tabularx}{\linewidth}{|>{\ttfamily}l|X|} +% \hline +% {\normalfont Macro} & Description \\ +% \hline\hline +% {\textbackslash}specfunc[modifiers]\{return type\}\{name\}\{parameters\} & \\ +% \hline +% {\textbackslash}speccons[modifiers]\{name\}\{parameters\} & \\ +% \hline +% {\textbackslash}specget[modifiers]\{return type\}\{name\} & \\ +% \hline +% {\textbackslash}specset[modifiers]\{return type\}\{name\} & \\ +% \hline\hline +% {\textbackslash}specparam[in|inout|out]\{name\}\{description\} & \\ +% \hline\hline +% {\textbackslash}specreturn[modifiers]\{description\} & \\ +% \hline +% {\textbackslash}specglobalreturn[modifiers]\{description\} & \\ +% \hline\hline +% {\textbackslash}specstarthline & \\ +% \hline +% {\textbackslash}specendhline & \\ +% \hline +%\end{tabularx} + +%\section{Examples of Specifications} + +%\subsection{Description of the specification} + +%Let consider a specification with a description: +%\begin{verbatim} +%\begin{detailspec}{Example 1} +% This is a description. +%\end{detailspec} +%\end{verbatim} + +%The previous \LaTeX\ code generates the following figure: +%\begin{detailspec}{Example 1} +% This is a description. +%\end{detailspec} + +%\subsection{Returned Values} + +%Let add into the previous example the specification of returned values: +%\begin{verbatim} +%\begin{detailspec}{Example 2} +% This is a description. +% \specreturn{description of a first returned value} +% \specreturn{description of a second returned value} +%\end{detailspec} +%\end{verbatim} + +%The previous \LaTeX\ code generates the following figure: +%\begin{detailspec}{Example 2} +%% This is a description. +%% \specreturn{description of a first returned value} +%% \specreturn{description of a second returned value} +%\end{detailspec} + +%########################################################### + \chapter{Authors and License} Copyright \copyright\ \upmcopyrightdate\ \makename{St\'ephane}{Galland} diff --git a/Master/texmf-dist/tex/latex/upmethodology/UPMVERSION.def b/Master/texmf-dist/tex/latex/upmethodology/UPMVERSION.def index 02b668610db..fbd7b4b22f6 100644 --- a/Master/texmf-dist/tex/latex/upmethodology/UPMVERSION.def +++ b/Master/texmf-dist/tex/latex/upmethodology/UPMVERSION.def @@ -1 +1 @@ -\def\UPMVERSION{20190804} +\def\UPMVERSION{20190917} diff --git a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls index 4385aca329b..735ffbae2a6 100644 --- a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls +++ b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls @@ -17,7 +17,7 @@ % write to the Free Software Foundation, Inc., 59 Temple Place - Suite % 330, Boston, MA 02111-1307, USA. -\global\edef\upm@package@docclazz@ver{2014/09/11} +\global\edef\upm@package@docclazz@ver{2019/09/17} \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesClass{upmethodology-document}[\upm@package@docclazz@ver] @@ -35,6 +35,13 @@ \newif\ifupm@package@docclazz@addbackcover \upm@package@docclazz@addbackcovertrue +\newif\ifupm@package@docclazz@taskpackage +\upm@package@docclazz@taskpackagefalse +\newif\ifupm@package@docclazz@specpackage +\upm@package@docclazz@specpackagefalse +\newif\ifupm@package@docclazz@codepackage +\upm@package@docclazz@codepackagefalse + \gdef\upm@package@docclazz@optionstopass{a4paper,11pt} \DeclareOption{twoside}{% @@ -91,6 +98,15 @@ \DeclareOption{backcover}{% \global\upm@package@docclazz@addbackcovertrue% } +\DeclareOption{taskpackage}{% + \global\upm@package@docclazz@taskpackagetrue% +} +\DeclareOption{specpackage}{% + \global\upm@package@docclazz@specpackagetrue% +} +\DeclareOption{codepackage}{% + \global\upm@package@docclazz@codepackagetrue% +} \DeclareOption{book}{% \global\upmbookformattrue \global\upmreportformatfalse @@ -139,9 +155,15 @@ \RequirePackage{upmethodology-extension} \RequirePackage{upmethodology-frontpage} \RequirePackage{upmethodology-backpage} -\RequirePackage{upmethodology-task} -\RequirePackage{upmethodology-code} -\RequirePackage{upmethodology-spec} +\ifupm@package@docclazz@taskpackage + \RequirePackage{upmethodology-task} +\fi +\ifupm@package@docclazz@codepackage + \RequirePackage{upmethodology-code} +\fi +\ifupm@package@docclazz@specpackage + \RequirePackage{upmethodology-spec} +\fi \RequirePackage{url} \ifpdf diff --git a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-spec.sty b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-spec.sty index 0ad41328ee0..bc96076ab4a 100644 --- a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-spec.sty +++ b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-spec.sty @@ -23,7 +23,7 @@ % 2007-03-19 Add localization. % -\global\edef\upm@package@spec@ver{2009/10/30} +\global\edef\upm@package@spec@ver{2019/09/17} \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesPackage{upmethodology-spec}[\upm@package@spec@ver] @@ -133,7 +133,7 @@ \upm@spec@func@modifiers@scan{#1}% } \newcommand{\upm@spec@func@modifiers@scan}[1]{% - \upm@ifnotempty{#1}{% + \Ifnotempty{#1}{% \edef\upm@reserved@a{\upm@spec@head #1\@empty\@empty}% \edef\upm@reserved@b{\upm@spec@tail #1\@empty\@empty}% \ifthenelse{\equal{\upm@reserved@a}{+}}{% @@ -187,7 +187,7 @@ %----- %\upm@spec@param@modifiers{modifiers} \newcommand{\upm@spec@param@modifiers}[1]{% - \upm@ifnotempty{#1}{% + \Ifnotempty{#1}{% \ifthenelse{\equal{#1}{out}}{% %out \upm@spec@lang@modifier@out% @@ -205,7 +205,7 @@ %----- \def\upm@spec@trim#1{#1} \newcommand{\upm@spec@splitparams}[1]{% - \upm@ifnotempty{#1}{% + \Ifnotempty{#1}{% \upm@spec@firstparamtrue \@for\reserved@a:=#1\do{% \ifupm@spec@firstparam\upm@spec@firstparamfalse\else, \fi% @@ -247,7 +247,7 @@ \addtocounter{upm@detailspec@function@counter}{1}% \protected@xdef\upm@spec@reserved@a{\protect\csname upm@detailspec@return@ptr@\theupm@detailspec@function@counter\endcsname}% \gdef\upm@spec@reserved@b{} - \upm@ifnotempty{##2}{\gdef\upm@spec@reserved@b{\string:\ }} + \Ifnotempty{##2}{\gdef\upm@spec@reserved@b{\string:\ }} \gdef\upm@spec@reserved@c{}% \upm@spec@func@modifiers{##1}% @@ -271,17 +271,17 @@ \gdef\upm@spec@reserved@e{\upm@spec@lang@modifier@const}% \fi \ifupm@spec@modifier@has@final% - \upm@ifnotempty{\upm@spec@reserved@e}{% + \Ifnotempty{\upm@spec@reserved@e}{% \xdef\upm@spec@reserved@e{\upm@spec@reserved@e,}}% \protected@xdef\upm@spec@reserved@e{\upm@spec@reserved@e\protect\upm@spec@lang@modifier@final}% \fi \ifupm@spec@modifier@has@abstract% - \upm@ifnotempty{\upm@spec@reserved@e}{% + \Ifnotempty{\upm@spec@reserved@e}{% \xdef\upm@spec@reserved@e{\upm@spec@reserved@e,}}% \protected@xdef\upm@spec@reserved@e{\upm@spec@reserved@e\protect\upm@spec@lang@modifier@abstract}% \fi \ifupm@spec@modifier@has@root% - \upm@ifnotempty{\upm@spec@reserved@e}{% + \Ifnotempty{\upm@spec@reserved@e}{% \xdef\upm@spec@reserved@e{\upm@spec@reserved@e,}}% \protected@xdef\upm@spec@reserved@e{\upm@spec@reserved@e\protect\upm@spec@lang@modifier@root}% \fi @@ -343,13 +343,13 @@ \ifthenelse{\equal{\upm@spec@global@return}{\@empty}}{% \gdef\upm@detailspec@return@section{} - \upm@ifnotempty{\upm@spec@local@return}{ + \Ifnotempty{\upm@spec@local@return}{ \gdef\upm@detailspec@separator{ & & & \\} \protected@xdef\upm@detailspec@return@section{\upm@spec@local@return}% \upm@spec@showreturnstrue% }% }{% - \upm@ifnotempty{\upm@spec@local@return}{% + \Ifnotempty{\upm@spec@local@return}{% \gdef\upm@detailspec@separator{ & & & \\} \gdef\upm@spec@reserved@a{ \upm@spec@lang@except@for:\protect\upm@spec@local@return}}% \protected@xdef\upm@detailspec@return@section{% @@ -358,9 +358,8 @@ \upm@spec@showreturnstrue% } - \ifthenelse{\equal{\upm@spec@detailspec@title}{\@empty}}{ - \gdef\upm@spec@reserved@c{} - }{ + \gdef\upm@spec@reserved@c{} + \Ifnotempty{\upm@spec@detailspec@title}{ \gdef\upm@spec@reserved@c{\hline% \multicolumn{4}{>{\columncolor{backtableheader}}l}{\color{fronttableheader}{\large\textsc{\upm@spec@detailspec@title}}} \\% } @@ -370,11 +369,11 @@ \upm@spec@showparamsfalse% - \upm@ifnotempty{\upm@spec@parameters}{% + \Ifnotempty{\upm@spec@parameters}{% \ifupm@spec@showdescription% \gdef\upm@detailspec@separator{ & & & \\}% \fi% - \upm@ifnotempty{\upm@spec@functions}{% + \Ifnotempty{\upm@spec@functions}{% \gdef\upm@detailspec@separator{ & & & \\}% }% \upm@spec@showparamstrue% @@ -429,7 +428,7 @@ } %----- -%\begin{detailspec}}[width]{title}...\end{detailspec}.... +%\begin{detailspec}[width]{title}...\end{detailspec}.... \newenvironment{detailspec}[2][\linewidth] {% \upm@spec@showdescriptiontrue% @@ -442,7 +441,7 @@ } %----- -%\begin{detailspec}}[width]{title}...\end{detailspec}.... +%\begin{detailspec*}[width]{title}...\end{detailspec*}.... \newenvironment{detailspec*}[2][\linewidth] {% \upm@spec@showdescriptionfalse% -- cgit v1.2.3