%% %% This is file `dvgloss.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% dvgloss.dtx (with options: `package') %% %% This is a generated file. %% %% Copyright (C) 2013 by Dan Bridges Velleman %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.2 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.2 or later is part of all distributions of %% LaTeX version 1999/12/01 or later. %% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{dvgloss}[2012/08/06 v0.1 Flexible glossing commands] \newtoks\ta\newtoks\tb \newdimen\glhangindent\glhangindent=2em \newdimen\betweenglskip\betweenglskip=1\jot \newdimen\withinglskip\withinglskip=0pt \newdimen\aboveglftskip\aboveglftskip=2\jot \newdimen\aboveglskip\aboveglftskip=2\jot \newdimen\glstrutheight\newdimen\glstrutdepth \def\glspace{\penalty0\hspace{1ex plus 2em minus 2pt}} \def\everygla{\itshape} \def\everyglb{} \def\glescape{!} \long\def\addtokens#1\to#2{\ta={#1}\tb=\expandafter{#2}\edef#2{\the\tb\the\ta}} \def\pop#1\to#2{\expandafter\popoff#1\to#2\remainderin#1} \long\def\popoff#1 #2\to#3\remainderin#4{#3={#1}\def#4{#2}} \long\def\split#1{\expandafter\ssplit#1\xyzzy} \long\def\ssplit#1#2\xyzzy{\gdef\istchar{#1}\gdef\restchars{#2}} \def\ifnotin#1#2{% \def\@ifnotin##1#1##2##3\zyzzy{\ifx\ifnotfound##2}% \expandafter\@ifnotin#2#1\notfound\zyzzy} \newif\ifspecial \def\dvglspecials{} \def\checkspecial#1{% \ifnotin#1{\dvglspecials}\specialfalse\else\specialtrue\fi} \def\makespecial#1{% \xdef\dvglspecials{\dvglspecials#1}} \def\glossword#1#2{% \mbox{\vtop{\halign{##\hfil\cr\everygla#1\strut\cr\everyglb#2\strut\cr}}}% \glstrut\glspace} \def\zipper#1\and#2\to#3{% \ifx\empty#1\else% \pop#1\to\ta% \def\istchar{}\def\restchar{}% \edef\temp{\the\ta}\split\temp% \ifx\istchar\glescape\expandafter\addtokens\restchars\to#3% \else% \expandafter\checkspecial\istchar\ifspecial% \expandafter\addtokens\csname gl\istchar\endcsname\to#3% \expandafter\addtokens\expandafter<\restchars>\to#3% \else \ifx\empty#2\else% \pop#2\to\tb% \edef\temp{\noexpand\glossword{\the\ta}{\the\tb}}% \expandafter\addtokens\temp\to#3% \fi% \fi% \fi% \zipper#1\and#2\to#3% \fi% } \long\def\gl#1#2{% \begingroup% \def\x{#1 }\def\y{#2 }\def\z{}% \zipper\x\and\y\to\z% \fixglstrut% \ifvmode\vskip\aboveglskip\fi\z% \endgroup% } \def\fixglstrut{% \def\glstrut{}% \setbox0=\hbox{\glossword{}{}}% \glstrutheight=\ht0% \glstrutdepth=\dp0% \advance\glstrutdepth by \betweenglskip% \global\edef\glstrut{\vrule height\glstrutheight width0pt depth\glstrutdepth}} \def\noglstrut{\def\glstrut{}} \def\ft#1{\nobreak\par\nobreak\vskip-\betweenglskip\vskip\aboveglftskip #1} \def\lb#1{{\unskip\nobreak\hfil\penalty0\hskip2em\mbox{}\nobreak\hfill\mbox{#1}}} \long\def\makeglshortcut#1#2{% \makespecial{#1}% \expandafter\gdef\csname gl#1\endcsname<##1>{#2}} \makeglshortcut/{\par\ifx#1\empty\else\vskip{#1}\fi} \makeglshortcut[{[$_\textrm{\footnotesize#1}$\thinspace} \makeglshortcut]{\unskip\thinspace]$_\textrm{\footnotesize#1}$\glspace} \long\def\makeglsurround#1#2#3{% \xdef\dvglspecials{\dvglspecials#1#2}% \ta=\expandafter{\csname gl#1\endcsname}% \tb=\expandafter{\csname gl#2\endcsname}% \expandafter\expandafter\expandafter\gdef% \expandafter\expandafter\the\ta% \expandafter<\expandafter##\expandafter1\expandafter>% \expandafter##\expandafter2\the\tb<##3>{#3}} \makeglsurround ** {% \rlap{\raisebox{1.5em}{\footnotesize\sf#3}}% \fbox{\noglstrut#2\unskip}\glspace} \endinput %% %% End of file `dvgloss.sty'.