DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: C T

⟦7cd5e587d⟧ TextFile

    Length: 4169 (0x1049)
    Types: TextFile
    Names: »Cell3.tex«

Derivation

└─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12
    └─⟦c319c2751⟧ »unix3.0/TeX3.0.tar.Z« 
        └─⟦036c765ac⟧ 
            └─⟦this⟧ »TeX3.0/TeXcontrib/pittman/Cell3.tex« 
└─⟦060c9c824⟧ Bits:30007080 DKUUG TeX 2/12/89
    └─⟦this⟧ »./tex82/TeXcontrib/pittman/Cell3.tex« 
└─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12
    └─⟦63303ae94⟧ »unix3.14/TeX3.14.tar.Z« 
        └─⟦c58930e5c⟧ 
            └─⟦this⟧ »TeX3.14/TeXcontrib/pittman/Cell3.tex« 

TextFile

% File:       TeX Inputs Cell3.tex
% Author:     J E Pittman
% Bitnet:     JEPTeX@TAMVenus
% Internet:   JEPTeX@Venus.TAMU.EDU
% Date:       October 11, 1988
%
% Process the column and row span info.
%
\declaredimen\expansion
%
\edef\everycolumn{\everycolumn\expansion=\zeropt\relax}%
\edef\everyrow{\everyrow\expansion=\zeropt\relax}%
%
\catcode`_=11 % used to protect local control sequence names.
%
%\message{\string\row_span_info=\the\row_span_info}% debug
%\message{\string\column_span_info=\the\column_span_info}% debug
%
\def\process#1#2#3{\relax
   \last_cell=#3\relax
   \first_cell=\last_cell
   \advance \first_cell \by -#1\relax
   \span_size=#2\relax
%
% Compute the gap between the size of the span and the total size of 
% the cells spanned.
%
   \gap=\span_size
   \forcount \cell_number=\first_cell to \last_cell by 1 do
      \everycell
      \get_cell_number_data
      \advance \gap \by -\cell_size
      \advance \gap \by -\expansion
      \endfor \cell_number
%  \message{\string\first_cell=\the\first_cell}% debug
%  \message{\string\last_cell=\the\last_cell}% debug
%  \message{\string\span_size=\the\span_size}% debug
%  \message{\string\gap=\the\gap}% debug
%
% If the gap is 0pt or less, nothing needs to be done, else search for 
% the minimum expansion that can be applied to every cell with a 
% current expansion less than the expansion found such that the span 
% is properly accomadated.
%
   \ifdim \gap>\zeropt
      \expandable_cells=#1\relax
      \advance \expandable_cells \by 1
      \trial_expansion=\zeropt
      \whilenot\search \ifdim\gap=\zeropt do
%        \message{\string\gap=\the\gap}% debug
         \ifnum \expandable_cells=0
            \advance \trial_expansion \by \expansion
         \else
            \multiply \trial_expansion \by \expandable_cells
            \advance \trial_expansion \by \gap
            \divide \trial_expansion \by \expandable_cells
            \expandable_cells=0
         \fi
         \gap=\span_size
%        \message{\string\trial_expansion=\the\trial_expansion}% debug
         \forcount \cell_number=\first_cell to \last_cell by 1 do
            \everycell
            \get_cell_number_data
            \advance \gap \by -\cell_size
            \ifdim \expansion>\trial_expansion
               \advance \gap \by -\expansion
            \else
               \advance \gap \by -\trial_expansion
               \advance \expandable_cells \by 1
            \fi
            \endfor \cell_number
         \temp_dimen=1sp
         \multiply \temp_dimen \by \expandable_cells
         \ifdim \gap>-\temp_dimen
            \ifdim \gap<\temp_dimen
               \gap=\zeropt
            \fi
         \fi
         \endwhilenot \search
      \forcount \cell_number=\first_cell to \last_cell by 1 do
         \everycell
         \get_cell_number_data
         \ifdim \expansion<\trial_expansion
            \let\info=\relax
            \edef\temp{\the\cell_number>\info
                  {\expansion=\the\trial_expansion\relax}}%
            \let\info=\cell_info
            \x_after \add_data \temp
            \ifnum\tracingexpansions>0
               \message{Expanded \the\cell_number}%
               \message{by \the\trial_expansion}%
               \message{from \the\cell_size}%
               \advance \cell_size \by \trial_expansion
               \message{to \the\cell_size.}%
            \fi
         \fi
         \endfor \cell_number
   \fi
   }%
%
\declarecount\first_cell
\declarecount\last_cell
\declaredimen\span_size
\let\expandable_cells=\temp_count
\declaredimen\trial_expansion
\let\gap=\scratch_dimen
%
\let\cell_number=\row_number
\let\everycell=\everyrow
\let\get_cell_number_data=\get_row_number_data
\let\cell_info=\row_info
\let\cell_size=\rowheight
\ifnum\tracingexpansions>0
   \message{Checking row expansions.}%
\fi
\the\row_span_info
%
\let\cell_number=\column_number
\let\everycell=\everycolumn
\let\get_cell_number_data=\get_column_number_data
\let\cell_info=\column_info
\let\cell_size=\columnwidth
\ifnum\tracingexpansions>0
   \message{Checking column expansions.}%
\fi
\the\column_span_info
%
\let\process=\relax
%
\catcode`_=8 % back to normal
%
\endinput