From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/Tabbing/Tabbing.dtx | 195 +++++++++++++++++++++++++++++++ 1 file changed, 195 insertions(+) create mode 100644 macros/latex/contrib/Tabbing/Tabbing.dtx (limited to 'macros/latex/contrib/Tabbing/Tabbing.dtx') diff --git a/macros/latex/contrib/Tabbing/Tabbing.dtx b/macros/latex/contrib/Tabbing/Tabbing.dtx new file mode 100644 index 0000000000..e34bd832d0 --- /dev/null +++ b/macros/latex/contrib/Tabbing/Tabbing.dtx @@ -0,0 +1,195 @@ +% \iffalse +%% Package `Tabbing' to use with LaTeX 2e +%% Copyright (C) 1996, 1997, 1998, 1999 Jean-Pierre F. Drucbert, all rights reserved +%% +%% You may use and distribute this file freely, provided that +%% you don't pretend that you wrote it. +%% +% It may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.1 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.1 or later is part of all distributions of LaTeX +% version 1999/06/01 or later. +% +%\NeedsTeXFormat{LaTeX2e}[1997/06/01] +%\ProvidesPackage{Tabbing}[1997/12/18 v1.0 Tabbing environment (JPFD)] +% +%<*driver> +\documentclass{ltxdoc} +\GetFileInfo{Tabbong.sty} +\def\filedate{1999/08/03} +\def\fileversion{v1.1} +\EnableCrossrefs +%\DisableCrossrefs % Say \DisableCrossrefs if index is ready +\RecordChanges % Gather update information +\CodelineIndex % Index code by line number +\title{The \pkg{Tabbing} package} +\author{Jean-Pierre F. Drucbert\\\texttt{drucbert@onecert.fr}}% +\date{\filedate} +\def\bs{\texttt{\char'134}} +\let\pkg\textsf +\usepackage{Tabbing} +\begin{document} +\maketitle +\DocInput{Tabbing.dtx} +\end{document} +% +% \fi +% +% \CheckSum{106} +% +% \changes{v1.0}{18 Dec 97}{First officially released version.} +% \changes{v1.1}{03 Aug 99}{Added LPPL License.} +% +% \DoNotIndex{\@Mii,\@Miv,\@cons,\@currlist,\@dblarg,\@dbldeferlist} +% \DoNotIndex{\@dblfloat,\@dottedtocline,\@eha,\@Esphack,\@float} +% \DoNotIndex{\@floatpenalty,\@ifnextchar,\@ifundefined,\@latexerr} +% \DoNotIndex{\@mkboth,\@namedef,\@nameuse,\@parboxrestore,\@spaces} +% \DoNotIndex{\@starttoc,\@tempa,\@tempboxa,\@tempdima,\@warning} +% \DoNotIndex{\addcontentsline,\addtocounter,\advance,\arabic,\bfseries} +% \DoNotIndex{\bgroup,\box,\chapter,\columnwidth,\csname,\def,\dimen,\docdate} +% \DoNotIndex{\edef,\egroup,\else,\endcsname,\endinput,\expandafter,\fi} +% \DoNotIndex{\filedate,\fileversion,\global,\hbadness,\hbox,\hfil,\hrule} +% \DoNotIndex{\hsize,\ht,\if@twocolumn,\ifdim,\iffalse,\ifnum,\iftrue,\ifvbox} +% \DoNotIndex{\ifx,\ignorespaces,\intextsep,\kern,\let,\long,\moveleft,\newbox} +% \DoNotIndex{\newcommand,\newcounter,\newif,\newsavebox,\noexpand,\normalsize} +% \DoNotIndex{\numberline,\PackageError,\PackageWarning,\par,\parindent} +% \DoNotIndex{\penalty,\prevdepth,\protect,\refstepcounter,\relax} +% \DoNotIndex{\renewcommand,\rmfamily,\section,\setbox,\setcounter,\space} +% \DoNotIndex{\textheight,\the,\typeout,\unvbox,\uppercase,\vadjust,\value} +% \DoNotIndex{\vbox,\vrule,\vskip,\vspace,\wd,\z@} +% +% \begin{abstract} +% This package\footnote{% +% \begin{tabular}[t]{l} +% Copyright \copyright\ 1996, 1997, 1998 by\\ +% Jean-Pierre F. Drucbert\vphantom{bp}\\ +% ONERA/Centre de Toulouse SRI\vphantom{bp}\\ +% Office National d'\'Etudes et de Recherches A\'erospatiales\vphantom{bp}\\ +% Centre de Toulouse\vphantom{bp}\\ +% Service R\'eseaux et Informatique\vphantom{bp}\\ +% Complexe Scientifique de Rangueil\vphantom{bp}\\ +% \\ +% 2, Avenue \'Edouard Belin\vphantom{bp}\\ +% BP 4025 F-31055 TOULOUSE CEDEX\vphantom{bp}\\ +% FRANCE\vphantom{bp}\\ +% \vphantom{bp}\\ +% Email: \texttt{drucbert@onecert.fr}\vphantom{bp}\\ +% \end{tabular}} +% provides a `Tabbing' environment, analog to the \LaTeX\ standard +% `tabbing' environment, but allowing accented letters. No more +% |\a'|, |\a`| and |\a=| needed. +% \end{abstract} +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \section{The \pkg{Tabbing} package} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% \newcommand{\tabrule}[1]{\makebox[0pt]{\raisebox +% {0pt}[0pt]{\rule{\fboxrule}{#1\baselineskip}}}} +% \LaTeX\ provides the \texttt{tabbing} environment. But it is not +% user-friendly when you must use accented letters, whith the grave, +% acute and macron accents, |\'a|~\'a, |\`a|~\`a and |\=a|~\=a. Even +% when you use a good input encoding on 8~bits. So the \pkg{Tabbing} +% package offers a \texttt{Tabbing} environment, which is a slightly +% modified copy of the standard \texttt{tabbing} environment. In the +% \texttt{Tabbing} environment, the local commands |\>|, |\<|, |\=|, +% |\+|, |\-|, |\`| and |\'| are replaced by |\TAB>|, |\TAB<|, |\TAB=|, +% |\TAB+|, |\TAB-|, |\TAB`| and |\TAB'| respectively. Hence the conversion +% is rather easy. Acute and grave accents are very often used in french, +% this environment should be useful. In the example of +% Figure~\ref{f+Tabbing}, the vertical rules mark the tab stops (with +% the macro |\tabrule|, which is not part of the package) +% +% \begin{figure} +% \begin{footnotesize} +% \begin{verbatim} +% \newcommand{\tabrule}[1]{\makebox[0pt]{\raisebox +% {0pt}[0pt]{\rule{\fboxrule}{#1\baselineskip}}}} +% +% \begin{Tabbing} +% gnomon \TAB= agn\=ostic \TAB= arma\TAB= dillo \TAB= gnash \TAB= \kill +% \TAB> \TAB> gnu \TAB> gneisses \TAB> \TAB> gnarl +% \\* +% \TAB> \TAB> \'ecole \TAB> \'el\`eve \TAB> \TAB> examen +% \\* +% \TAB> \TAB> école \TAB> élève \TAB> \TAB> examen +% \\* +% \TAB> \TAB> u \TAB> e \TAB> g \TAB> +% \TAB` +% \end{Tabbing} +% \end{verbatim} +% \end{footnotesize} +% +% \begin{minipage}{\textwidth} +% \begin{Tabbing} +% gnomon \TAB= agn\=ostic \TAB= arma\TAB= dillo \TAB= gnash \TAB= \kill +% \TAB> \TAB> gnu \TAB> gneisses \TAB> \TAB> gnarl \\* +% \TAB> \TAB> \'ecole \TAB> \'el\`eve \TAB> \TAB> examen \\* +% \TAB> \TAB> école \TAB> élève \TAB> \TAB> examen \\* +% \tabrule{2} \TAB>\tabrule{2} \TAB> \tabrule{2}u \TAB> +% \tabrule{2}e +% \TAB> \tabrule{2}g \TAB>\tabrule{2} \TAB`\tabrule{2} +% \end{Tabbing} +% \end{minipage} +% +% \caption{A simple \texttt{Tabbing} environment}\label{f+Tabbing} +% \end{figure} +% +% Note that the markup is more visible than in the \texttt{tabbing} +% environment, and the syntax of accented letters is \emph{the same} +% outside and inside of the new \texttt{Tabbing} environment. +% +% \StopEventually{\setcounter{IndexColumns}{2}\PrintIndex\PrintChanges} +% +% \clearpage +% \section{Implementation} +% +% \begin{macrocode} +%<*package> +% \end{macrocode} +% +% \begin{environment}{Tabbing} +% We just copy the standard \texttt{tabbing} environment, and +% add the local macro |\TAB| who tests its argument. +% An error message has been added. +% \DescribeMacro{\TAB} +% \begin{macrocode} +\gdef\Tabbing{\lineskip \z@skip +% % \let\>\@rtab +% % \let\<\@ltab +% % \let\=\@settab +% % \let\+\@tabplus +% % \let\-\@tabminus +% % \let\`\@tabrj +% % \let\'\@tablab +\def\TAB##1{\ifx ##1>\@rtab\else + \ifx ##1<\@ltab\else + \ifx ##1=\@settab\else + \ifx ##1+\@tabplus\else + \ifx ##1-\@tabminus\else + \ifx ##1`\@tabrj\else + \ifx ##1'\@tablab\else + \PackageError{Tabbing}% + {Bad argument ##1 for Tabbing specification} + \fi\fi\fi\fi\fi\fi\fi} + \let\\=\@tabcr + \global\@hightab\@firsttab + \global\@nxttabmar\@firsttab + \dimen\@firsttab\@totalleftmargin + \global\@tabpush\z@ \global\@rjfieldfalse + \trivlist \item\relax + \if@minipage\else\vskip\parskip\fi + \setbox\@tabfbox\hbox{\rlap{\indent\hskip\@totalleftmargin + \the\everypar}}\def\@itemfudge{\box\@tabfbox}% + \@startline\ignorespaces} +\gdef\endTabbing{% + \@stopline\ifnum\@tabpush >\z@ \@badpoptabs \fi\endtrivlist} +% \end{macrocode} +% \end{environment} +% +% \Finale +% \end{document} +\endinput -- cgit v1.2.3