From b129936adac7b9712df9a011becb010d111ec61f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 15 Aug 2007 18:46:08 +0000 Subject: new package upmethodology (12aug07) git-svn-id: svn://tug.org/texlive/trunk@4732 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/upmethodology/upmethodology-fmt.sty | 634 +++++++++++++++++++++ 1 file changed, 634 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/upmethodology/upmethodology-fmt.sty (limited to 'Master/texmf-dist/tex/latex/upmethodology/upmethodology-fmt.sty') diff --git a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-fmt.sty b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-fmt.sty new file mode 100644 index 00000000000..94915fa0ac5 --- /dev/null +++ b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-fmt.sty @@ -0,0 +1,634 @@ +% Layout and Pagraph Format for Unified Process Methodology +% +% Copyright (c) 2006-2007 Stephane GALLAND +% +% This program is free library; you can redistribute it and/or modify +% it under the terms of the GNU Lesser General Public License as +% published by the Free Software Foundation; either version 3 of the +% License, or any later version. +% +% This library is distributed in the hope that it will be useful, but +% WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +% Lesser General Public License for more details. +% +% You should have received a copy of the GNU Lesser General Public +% License along with this library; see the file COPYING. If not, +% write to the Free Software Foundation, Inc., 59 Temple Place - Suite +% 330, Boston, MA 02111-1307, USA. +% +% Creation date: 2006-04-06 +% Modifications: +% 2007-07-07 Override the bibliography functions. +% 2007-07-06 Bug fix: use varioref for the footnote references. +% 2007-07-05 Add people name formatting function. +% 2007-07-02 Add exponent/indice commands and st/nd/rd/th symbols. +% 2007-06-27 Add inline enumeration. +% 2007-03-19 Add date fonctions. +% Add localization. +% 2006-04-19 Add version number. +% Add mtabular and mtable. +% 2006-04-20 Bug fix: invalid position of the tables. +% Bug fix: centering table's headers. +% + +\global\edef\upm@package@fmt@ver{2007/07/06} + +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{upmethodology-fmt}[\upm@package@fmt@ver] + +\gdef\upm@fmt@force@single@spacing#1{{\begin{singlespace}#1\end{singlespace}}} +\gdef\upm@date@head#1/#2\@nil{#1} +\gdef\upm@date@tail#1/#2\@nil{#2} +\gdef\upm@date@first#1{{\expandafter\upm@date@head#1\expandafter\@nil}} +\gdef\upm@date@second#1{{\expandafter\expandafter\expandafter\upm@date@head\expandafter\upm@date@tail#1\expandafter\@nil\expandafter\expandafter\expandafter\@nil}} +\gdef\upm@date@third#1{{\expandafter\expandafter\expandafter\upm@date@tail\expandafter\upm@date@tail#1\expandafter\@nil\expandafter\expandafter\expandafter\@nil}} + +%---------------------------------------- +% LOCALES +%---------------------------------------- +\def\upm@format@lang@english{% + \gdef\upm@lang@@{\message{**** upmethodology-fmt is using English language ****}}% + \global\renewcommand{\upm@format@lang@makedate}[3]{##3\string/\two@digits{##2}\string/\two@digits{##1}}% + \global\let\upm@format@lang@extractyear\upm@date@first% + \global\let\upm@format@lang@extractmonth\upm@date@second% +} + \global\let\upm@format@lang@extractyear\upm@date@first% +\def\upm@format@lang@french{% + \gdef\upm@lang@@{\message{**** upmethodology-fmt is using French language ****}}% + \global\renewcommand{\upm@format@lang@makedate}[3]{\two@digits{##1}\string/\two@digits{##2}\string/##3}% + \global\let\upm@format@lang@extractyear\upm@date@third% + \global\let\upm@format@lang@extractmonth\upm@date@second% + \global\let\upm@format@lang@extractday\upm@date@first% +} +\global\providecommand{\upm@format@lang@makedate}[3]{}% + +%---------------------------------------- +% OPTIONS +%---------------------------------------- +\DeclareOption{french}{% + \upm@format@lang@french + \PassOptionsToPackage{french}{varioref} +} +\DeclareOption{francais}{% + \upm@format@lang@french + \PassOptionsToPackage{french}{varioref} +} +\DeclareOption{english}{% + \upm@format@lang@english + \PassOptionsToPackage{english}{varioref} +} +\ExecuteOptions{english} +\ProcessOptions +\upm@lang@@ + + +\RequirePackage{xspace} +\RequirePackage{ifthen} +\RequirePackage{graphicx} +\RequirePackage{subfigure} +\RequirePackage{tabularx} +\RequirePackage{multicol} +\RequirePackage{colortbl} +\RequirePackage{picinpar} +\RequirePackage{amsmath} +\RequirePackage{setspace} +\RequirePackage{varioref} + +%---------------------------------------- +% Exponent and indice +%---------------------------------------- +% Exponent +\newcommand{\textsup}[1]{\ensuremath{^{\text{#1}}}\xspace} +% Indice +\newcommand{\textsub}[1]{\ensuremath{_{\text{#1}}}\xspace} + +%---------------------------------------- +% SYMBOLS +%---------------------------------------- +\let\upm@format@copyright\copyright +\renewcommand{\copyright}{\upm@format@copyright\xspace} +\newcommand{\trademark}{\Pisymbol{psy}{228}\xspace} +\newcommand{\regmark}{\Pisymbol{psy}{226}\xspace} +\newcommand{\smalltrade}{{\tiny\trademark}\xspace} +\newcommand{\smallreg}{{\tiny\regmark}\xspace} +\newcommand{\smallcopy}{{\tiny\copyright}\xspace} +\gdef\st{\textsup{st}} +\gdef\nd{\textsup{nd}} +\gdef\rd{\textsup{rd}} +\gdef\th{\textsup{th}} + + +%---------------------------------------- +% FIGURES +%---------------------------------------- + +\newcommand{\upm@mfigure}[5][ht]{ + \begin{figure}[#1]% + \begin{center}% + \includegraphics[#2]{#3}% + \caption{#4}% + \label{fig:#5}% + \end{center}% + \end{figure}% +} +\newcommand{\upm@mfigurestar}[5][ht]{ + \begin{figure*}[#1]% + \begin{center}% + \includegraphics[#2]{#3}% + \caption{#4}% + \label{fig:#5}% + \end{center}% + \end{figure*}% +} +%----- +%\mfigure[position]{options}{filename}{caption}{label} +\def\mfigure{\@ifstar\upm@mfigurestar\upm@mfigure} +%----- +%\figref{label} +\newcommand{\figref}[1]{\ref{fig:#1}} +%----- +%\figpageref{label} +\newcommand{\figpageref}[1]{\pageref{fig:#1}} + +%----- +% Multi-figures + +\newcounter{upm@subfigure@count} + +\newcommand{\upm@beginsubfigure}[4]{ + \let\upm@mfiguresaved\mfigure + %options,filename,caption,label + \renewcommand{\mfigure}[5][]{ + \xdef\upm@tmp@subfigure@label{\alph{upm@subfigure@count}}% + \subfigure[##4]{% + \includegraphics[##2]{##3}% + \label{fig:##5}% + \label{fig:#4:\upm@tmp@subfigure@label}% + }% + \addtocounter{upm@subfigure@count}{1}% + } + %options,filename,caption + \newcommand{\msubfigure}[3]{ + \xdef\upm@tmp@subfigure@label{\alph{upm@subfigure@count}}% + \subfigure[##3]{% + \includegraphics[##1]{##2}% + \label{fig:#4:\upm@tmp@subfigure@label}% + }% + \addtocounter{upm@subfigure@count}{1}% + } + \setcounter{upm@subfigure@count}{1} + \gdef\upm@mfigurescaption{#3}% + \gdef\upm@mfigureslabel{fig:#4}% + \begin{#1}[#2]\centering % +} + +\newcommand{\upm@endsubfigure}[1]{ + \caption{\upm@mfigurescaption}% + \label{\upm@mfigureslabel}% + \end{#1}% + \let\mfigure\upm@mfiguresaved +} + +%----- +%\mfigures[position]{caption}{label} +\newenvironment{mfigures}[3][ht]{ + \upm@beginsubfigure{figure}{#1}{#2}{#3}% +}{% + \upm@endsubfigure{figure}% +} +%----- +%\mfigures*[position]{caption}{label} +\newenvironment{mfigures*}[3][ht]{ + \upm@beginsubfigure{figure*}{#1}{#2}{#3}% +}{% + \upm@endsubfigure{figure*}% +} + +%---------------------------------------- +% IMAGES INCLUDING TeX EXPRESSIONS +%---------------------------------------- + +\gdef\upm@figtex@remove@width@param#1{#1} +\gdef\upm@figtex@dyncaption@remove{} +\gdef\upm@figtex@figremove#1{% + \global\expandafter\let\csname FIG#1\endcsname\relax% +} +\gdef\upm@figtex@restore{% + \upm@figtex@dyncaption@remove% + \gdef\upm@figtex@dyncaption@remove{} +} +%----- +%\figmath{id}{content} +\def\figmath#1#2{% + \expandafter\gdef\csname FIG#1\endcsname{\ensuremath{#2}}% + \global\protected@edef\upm@figtex@dyncaption@remove{\upm@figtex@dyncaption@remove\protect\upm@figtex@figremove{#1}}% +} +%----- +%\figtext{id}{content} +\def\figtext#1#2{% + \expandafter\gdef\csname FIG#1\endcsname{#2}% + \global\protected@edef\upm@figtex@dyncaption@remove{\upm@figtex@dyncaption@remove\protect\upm@figtex@figremove{#1}}% +} + +\newcommand{\upm@mfigurewtex}[5][ht]{ + \begin{figure}[#1]% + \begin{center}% + \resizebox{\upm@figtex@remove@width@param{#2}}{!}{\input{#3.pstex_t}}% + \caption{#4}% + \label{fig:#5}% + \end{center}% + \end{figure}% + \upm@figtex@restore% +} +\newcommand{\upm@mfigurewtexstar}[5][ht]{ + \begin{figure*}[#1]% + \begin{center}% + \resizebox{\upm@figtex@remove@width@param{#2}}{!}{\input{#3.pstex_t}}% + \caption{#4}% + \label{fig:#5}% + \end{center}% + \end{figure*}% + \upm@figtex@restore% +} +%----- +%\mfigurewtex[position]{width}{filename}{caption}{label} +\def\mfigurewtex{\@ifstar\upm@mfigurewtexstar\upm@mfigurewtex} + +%---------------------------------------- +% TABLES +%---------------------------------------- + +%title of a table +\def\upm@fmt@table@title#1{\color{fronttableheader}{\bfseries #1}} +%title of columns +\def\upm@fmt@table@column@title#1{\mbox{}\hfil{\itshape \mbox{\color{fronttableheader}{#1}}}\hfil\mbox{}} +%table's colors +\definecolor{backtableheader}{rgb}{0.92,0.94,1} +\definecolor{fronttableheader}{rgb}{0.23,0.33,0.48} + +%List of functions able to build an header +\newif\ifupm@havetitle +\def\upm@hline{\\\hline} +\expandafter\def\csname upm@tableheader@b@1\endcsname#1{\protect\upm@fmt@table@column@title{#1} \protect\\} +\expandafter\protected@edef\csname upm@tableheader@b@2\endcsname#1#2{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@1\endcsname{#2}} +\expandafter\protected@edef\csname upm@tableheader@b@3\endcsname#1#2#3{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@2\endcsname{#2}{#3}} +\expandafter\protected@edef\csname upm@tableheader@b@4\endcsname#1#2#3#4{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@3\endcsname{#2}{#3}{#4}} +\expandafter\protected@edef\csname upm@tableheader@b@5\endcsname#1#2#3#4#5{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@4\endcsname{#2}{#3}{#4}{#5}} +\expandafter\protected@edef\csname upm@tableheader@b@6\endcsname#1#2#3#4#5#6{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@5\endcsname{#2}{#3}{#4}{#5}{#6}} +\expandafter\protected@edef\csname upm@tableheader@b@7\endcsname#1#2#3#4#5#6#7{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@6\endcsname{#2}{#3}{#4}{#5}{#6}{#7}} +\expandafter\protected@edef\csname upm@tableheader@b@8\endcsname#1#2#3#4#5#6#7#8{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@7\endcsname{#2}{#3}{#4}{#5}{#6}{#7}{#8}} +\expandafter\protected@edef\csname upm@tableheader@b@9\endcsname#1#2#3#4#5#6#7#8#9{% + \protect\upm@fmt@table@column@title{#1} & \csname upm@tableheader@b@8\endcsname{#2}{#3}{#4}{#5}{#6}{#7}{#8}{#9}} + +\expandafter\def\csname upm@tableheader@c@1\endcsname#1{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@1\endcsname{#1}} +\expandafter\def\csname upm@tableheader@c@2\endcsname#1#2{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@2\endcsname{#1}{#2}} +\expandafter\def\csname upm@tableheader@c@3\endcsname#1#2#3{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@3\endcsname{#1}{#2}{#3}} +\expandafter\def\csname upm@tableheader@c@4\endcsname#1#2#3#4{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@4\endcsname{#1}{#2}{#3}{#4}} +\expandafter\def\csname upm@tableheader@c@5\endcsname#1#2#3#4#5{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@5\endcsname{#1}{#2}{#3}{#4}{#5}} +\expandafter\def\csname upm@tableheader@c@6\endcsname#1#2#3#4#5#6{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@6\endcsname{#1}{#2}{#3}{#4}{#5}{#6}} +\expandafter\def\csname upm@tableheader@c@7\endcsname#1#2#3#4#5#6#7{\ifupm@havetitle\else\hline\fi\csname upm@tableheader@b@7\endcsname{#1}{#2}{#3}{#4}{#5}{#6}{#7}} +\expandafter\def\csname upm@tableheader@c@8\endcsname#1#2#3#4#5#6#7#8{\ifupm@havetitle\else\hline\fi\csname upm@tableheader@b@8\endcsname{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#8}} +\expandafter\def\csname upm@tableheader@c@9\endcsname#1#2#3#4#5#6#7#8#9{\ifupm@havetitle\else\hline\fi\rowcolor{backtableheader}\csname upm@tableheader@b@9\endcsname{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#8}{#9}} + +%----- +%\mtabular[width]{ncolumns}{columns} +\newenvironment{mtabular}[3][\linewidth]{% + \upm@havetitlefalse + \newcommand{\tabulartitle}[1]{\hline\multicolumn{#2}{>{\columncolor{backtableheader}}c}{\upm@fmt@table@title{##1}}\upm@havetitletrue \upm@hline}% + \expandafter\let\expandafter\tabularheader\csname upm@tableheader@c@#2\endcsname% + \tabularx{#1}{#3}% +}{% + \endtabularx% +} + +%----- +%\mtable[position]{width}{ncolumns}{columns}{caption}{label} +\newenvironment{mtable}[6][ht]{% + \table[#1]\center% + \global\protected@edef\upm@table@caption{#5}% + \global\protected@edef\upm@table@label{tab:#6}% + \newcommand{\captionastitle}{\tabulartitle{\upm@table@caption}}% + \mtabular[#2]{#3}{#4}% +}{% + \endmtabular% + \caption{\upm@table@caption}% + \label{\upm@table@label}% + \endcenter\endtable% + \let\upm@table@caption\relax% + \let\upm@table@label\relax% +} + +%----- +%\tabref{label} +\newcommand{\tabref}[1]{\ref{tab:#1}} +%----- +%\tabpageref{label} +\newcommand{\tabpageref}[1]{\pageref{tab:#1}} + +%---------------------------------------- +% PARAGRAPHS +%---------------------------------------- +\setlength{\parindent}{0pt} + +%---------------------------------------- +% COLORIZED SECTION'S TITLES +%---------------------------------------- +\definecolor{titlecolor}{rgb}{0.93,0.41,0} +\definecolor{maintitlecolor}{rgb}{0.24,0.33,0.48} + +\gdef\upm@format@chapternum#1{\textcolor{maintitlecolor}{\huge \scshape #1}} +\gdef\upm@format@chaptertitle#1{\textcolor{maintitlecolor}{ + \Huge\scshape {#1}}} +\gdef\upm@format@sectionnum#1{\textcolor{titlecolor}{#1}} +\gdef\upm@format@sectiontitle#1{\textcolor{titlecolor}{#1}} + +\gdef\@makechapterhead#1{% + \vspace*{50\p@}% + {\parindent \z@ \raggedright \normalfont + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \upm@format@chapternum{\@chapapp\space \thechapter} + \par\nobreak + \vskip 20\p@ + \fi + \fi + \interlinepenalty\@M + \doublespacing + \upm@format@chaptertitle{#1}\par\nobreak + \vskip 40\p@ + } +} +\gdef\@makeschapterhead#1{% + \vspace*{50\p@}% + {\parindent \z@ \raggedright + \normalfont + \interlinepenalty\@M + \doublespacing + \upm@format@chaptertitle{#1}\par\nobreak + \vskip 40\p@ + } +} +\renewcommand{\section}{\@startsection{section}{1}{\z@}{-3.5ex \@plus -1ex \@minus -.2ex}{2.3ex \@plus.2ex}{\normalfont\Large\scshape}} +\renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}{-3.25ex\@plus -1ex \@minus -.2ex}{1.5ex \@plus .2ex}{\normalfont\large\scshape}} +\renewcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}{-3.25ex\@plus -1ex \@minus -.2ex}{1.5ex \@plus .2ex}{\normalfont\normalsize\scshape}} +\let\upm@format@sect@old\@sect +\gdef\@sect#1#2#3#4#5#6[#7]#8{\upm@format@sect@old{#1}{#2}{#3}{#4}{#5}{#6}[#7]{\upm@format@sectiontitle{#8}}} +\let\upm@format@ssect@old\@ssect +\gdef\@ssect#1#2#3#4#5{\upm@format@ssect@old{#1}{#2}{#3}{#4}{\upm@format@sectiontitle{#5}}} +\gdef\@seccntformat#1{\upm@format@sectionnum{\csname the#1\endcsname/}\quad} + +%---------------------------------------- +% PAGE LAYOUT +%---------------------------------------- +% Update the formatof the saved pages and sections +\AtBeginDocument{ + \renewcommand{\chaptermark}[1]{\markboth{\textsc{#1}}{}} + \renewcommand{\sectionmark}[1]{\markright{\thesection\ \textsc{#1}}} + \renewcommand{\@mkboth}[2]{% + \let\upm@doc@MakeUppercase\MakeUppercase% + \gdef\MakeUppercase##1{##1}% + \chaptermark{#1}% + \let\MakeUppercase\upm@doc@MakeUppercase% + \let\upm@doc@MakeUppercase\relax% + } +} +% Make sure that the page before a part or +% a chapter title was empty +\AtBeginDocument{% + \renewcommand{\cleardoublepage}{% + \clearpage% + \if@twoside\ifodd\c@page% + \else% + \thispagestyle{facingtochapter}% + \hbox{}\newpage% + \if@twocolumn\hbox{}\newpage% + \fi\fi\fi% + } + \newcommand{\ps@facingtochapter}{\ps@empty} + } + +%---------------------------------------- +% BIBLIOGRAPHY +%---------------------------------------- + +%----- +%\bibsize{size} +\newcommand{\bibsize}[1]{\gdef\upm@bibsize{#1}} + +\gdef\upm@bibsize{\small} + +\gdef\@biblabel#1{{\upm@bibsize{[#1]}}} + +\gdef\@lbibitem[#1]#2{\item[\@biblabel{#1}\hfill]\upm@bibsize\if@filesw{% + \let\protect\noexpand\immediate\write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} + +\gdef\@bibitem#1{\item\upm@bibsize\if@filesw% + \immediate\write\@auxout{\string\bibcite{#1}{\the\value{\@listctr}}}\fi\ignorespaces} + +%----- +\let\upm@bibliographystyle\bibliographystyle +\let\upm@bibliography\bibliography +\gdef\upm@bibstyle{abbr} +\renewcommand{\bibliographystyle}[1]{\gdef\upm@bibstyle{#1}} +\renewcommand{\bibliography}[1]{% + \upm@bibliographystyle{\upm@bibstyle}% + \upm@bibliography{#1}% +} + +%---------------------------------------- +% TABLE OF CONTENT +%---------------------------------------- +\setcounter{secnumdepth}{3} +\setcounter{tocdepth}{3} + +%---------------------------------------- +% ENUMERATIONS +%---------------------------------------- +\newcounter{upm@fmt@savedcounter} + +\newcommand{\savecounter}[1]{% + \setcounter{upm@fmt@savedcounter}{\value{#1}}% +} +\newcommand{\restorecounter}[1]{% + \setcounter{#1}{\theupm@fmt@savedcounter}% +} +\newcommand{\saveenumcounter}{\savecounter{\@enumctr}} +\newcommand{\restoreenumcounter}{\restorecounter{\@enumctr}} +\newcommand{\setenumcounter}[1]{\setcounter{\@enumctr}{#1}\addtocounter{\@enumctr}{-1}} +\newcommand{\getenumcounter}{\value{\@enumctr}} + +%---------------------------------------- +% FOOTNOTE +%---------------------------------------- + +\newcommand{\upm@footnoteref}[1]{\mbox{\ensuremath{^{\text{\ref{footnote:#1}}}}}} +\newcommand{\upm@footnotepageref}[1]{\mbox{\ensuremath{^{\text{\ref{footnote:#1}}}_{\text{\tiny \vpageref[]{footnote:#1}}}}}} +\newcommand{\@namelet}[1]{\expandafter\let\csname #1\endcsname} + +\newcommand{\upm@savefootnote}[2]{% + \footnote{#1\label{footnote:#2}}% + \global\@namelet{footnote:#2:cmd}\relax% +} +\newcommand{\upm@savefootnotestar}[2]{% + \global\@namedef{footnote:#2:cmd}{% + \upm@savefootnote{#1}{#2}% + }% +} + +\gdef\savefootnote{\@ifstar\upm@savefootnotestar\upm@savefootnote} + +\newcommand{\upm@reffootnote}[1]{% + \expandafter\ifx\csname footnote:#1:cmd\endcsname\relax% + \upm@footnoteref{#1}% + \else% + \@nameuse{footnote:#1:cmd}% + \fi\xspace% +} +\newcommand{\upm@reffootnotestar}[1]{% + \expandafter\ifx\csname footnote:#1:cmd\endcsname\relax% + \upm@footnotepageref{#1}% + \else% + \@nameuse{footnote:#1:cmd}% + \fi\xspace% +} + +\gdef\reffootnote{\@ifstar\upm@reffootnotestar\upm@reffootnote} + +%---------------------------------------- +% IMAGES IN PARAGRAPHS +%---------------------------------------- + +\newenvironment{umlinpar}[2][width=.45\linewidth]{% +\begin{window}[0,r,{\mbox{\hspace{.5cm}\includegraphics[#1]{#2}\vspace{.5cm}}},{}] +}{% +\end{window}} + +%---------------------------------------- +% DATE +%---------------------------------------- + +%Build a date this a supported format +%\makedate{day}{month}{year} +\let\makedate\upm@format@lang@makedate + +%----- +%Replies the year corresponding to the given supported date +%\extractyear{date} +\let\extractyear\upm@format@lang@extractyear + +%----- +%Replies the month corresponding to the given supported date +%\extractmonth{date} +\let\extractmonth\upm@format@lang@extractmonth + +%----- +%Replies the day corresponding to the given supported date +%\extractday{date} +\let\extractday\upm@format@lang@extractday + +% Redefine the today function +\AtBeginDocument{\global\edef\today{\makedate{\the\day}{\the\month}{\the\year}}} + +%---------------------------------------- +% PEOPLE NAME +%---------------------------------------- + +%\upmmakename[von]{firstname}{lastname}{separator} +\newcommand{\upmmakename}[4][\relax]{% + \ifx#1\relax% + {\mbox{\small #2}#4\textsc{#3}}% + \else% + {\mbox{\small #2}#4\mbox{\small #1}#4\textsc{#3}}% + \fi% + \xspace% +} + +%\makename[von]{firstname}{lastname} +\newcommand{\makename}[3][\relax]{% + \upmmakename[#1]{#2}{#3}{\ } +} + +%---------------------------------------- +% INLINE ENUMERATION +%---------------------------------------- + +\newcounter{@@upm@fmt@inlineenumeration} +\newenvironment{inlineenumeration}{% + \renewcommand{\item}{{(\roman{@@upm@fmt@inlineenumeration}){\addtocounter{@@upm@fmt@inlineenumeration}{1}}}~}% + \setcounter{@@upm@fmt@inlineenumeration}{1}% +}{% +} + +%---------------------------------------- +% SIZE MANAGEMENT +%---------------------------------------- +\newenvironment{upmfontsize}[1]{% + \begingroup% + \let\upm@Huge\Huge% + \let\upm@huge\huge% + \let\upm@normalsize\normalsize% + \let\upm@small\small% + \let\upm@scriptsize\scriptsize% + \let\upm@footnotesize\footnotesize% + \let\upm@tiny\tiny% + % + \ifx#1\Huge% + \let\Huge\upm@Huge% + \let\huge\upm@Huge% + \let\small\upm@huge% + \let\scriptsize\upm@normalsize% + \let\footnotesize\upm@small% + \let\tiny\upm@scriptsize% + \else\ifx#1\huge% + \let\Huge\upm@Huge% + \let\huge\upm@Huge% + \let\small\upm@normalsize% + \let\scriptsize\upm@small% + \let\footnotesize\upm@scriptsize% + \let\tiny\upm@footnotesize% + \else\ifx#1\small% + \let\Huge\upm@huge% + \let\huge\upm@normalsize% + \let\small\upm@scriptsize% + \let\scriptsize\upm@footnotesize% + \let\footnotesize\upm@tiny% + \let\tiny\upm@tiny% + \else\ifx#1\scriptsize% + \let\Huge\upm@normalsize% + \let\huge\upm@small% + \let\small\upm@footnotesize% + \let\scriptsize\upm@tiny% + \let\footnotesize\upm@tiny% + \let\tiny\upm@tiny% + \else\ifx#1\footnotesize% + \let\Huge\upm@small% + \let\huge\upm@scriptsize% + \let\small\upm@tiny% + \let\scriptsize\upm@tiny% + \let\footnotesize\upm@tiny% + \let\tiny\upm@tiny% + \else\ifx#1\tiny% + \let\Huge\upm@scriptsize% + \let\huge\upm@footnotesize% + \let\small\upm@tiny% + \let\scriptsize\upm@tiny% + \let\footnotesize\upm@tiny% + \let\tiny\upm@tiny% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + #1% +}{\endgroup} + +\endinput -- cgit v1.2.3