summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-09-17 21:11:19 +0000
committerKarl Berry <karl@freefriends.org>2019-09-17 21:11:19 +0000
commit68d7784f18db56a9cae1530fddf2c191e5e3402f (patch)
treefc1d9c1b170b46fefab68c9f2bed3d09b2cd9306
parentdc6bf28e646970b0fa19856be5298135479a0207 (diff)
upmethodology (17sep19)
git-svn-id: svn://tug.org/texlive/trunk@52111 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdfbin355555 -> 346938 bytes
-rw-r--r--Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.tex108
-rw-r--r--Master/texmf-dist/tex/latex/upmethodology/UPMVERSION.def2
-rw-r--r--Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls30
-rw-r--r--Master/texmf-dist/tex/latex/upmethodology/upmethodology-spec.sty33
5 files changed, 145 insertions, 28 deletions
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
--- a/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdf
+++ b/Master/texmf-dist/doc/latex/upmethodology/upmethodology-doc.pdf
Binary files 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%