% File: TeX Inputs Cell1.tex % Author: J E Pittman % Bitnet: JEPTeX@TAMVenus % Internet: JEPTeX@Venus.TAMU.EDU % Date: October 11, 1988 % % Set up the cellular environment % \catcode`_=11 % Protect local macros. % \ifx\forcount\undefined \input loopy \fi \ifx\declarecount\undefined \input declare \fi % % Handy abbreviations % \def\half{0.5}% \def\by{by}% \def\height{height}% \def\depth{depth}% \def\width{width}% \def\to{to}% \def\zeropt{0pt}% \let\x_after=\expandafter % % When using the Xerox 9700s or 4050, use \setverticaladjustment for % portrait output and \sethorizontaladjustment for landscape output % due to the differences in the way that vertical and horizontal lines % of the same weight are printed. % \declaredimen\pixelwidth \pixelwidth=1in \divide\pixelwidth by 300 % assume 300dpi % \declaredimen\horizontal_rule_adjust \horizontal_rule_adjust=\zeropt \def\sethorizontaladjustment{\horizontal_rule_adjust=\pixelwidth}% % \declaredimen\vertical_rule_adjust \vertical_rule_adjust=\zeropt \def\setverticaladjustment{\vertical_rule_adjust=\pixelwidth}% % % The left, right, bottom, and top rule widths are used to determine % the widths of the box around each cell. % \declaredimen\leftrulewidth \declaredimen\rightrulewidth \declaredimen\bottomrulewidth \declaredimen\toprulewidth % % The left, right, bottom, and top border skips are used to position % the text of a cell within it, relative to the centers of the rulers. % \declareskip\leftborderskip \declareskip\rightborderskip \declareskip\bottomborderskip \declareskip\topborderskip % \declarecount\last_column \declaredimen\columnwidth \declarecount\merge_columns \declaredimen\merge_width % \declarecount\last_row \declaredimen\rowheight \declarecount\merge_rows \declaredimen\merge_height \declarecount\rowpenalty % % The row info and column info token registers contain a list of % tokens of the form /number/info, where number is the number of a % row or column of interest and info is information, usually register % assignments, that pertains to the row or column. % \declaretoks\column_info \column_info={/}% % \declaretoks\row_info \row_info={/}% % \def\everycolumn{\leftrulewidth=0.4pt\relax \rightrulewidth=\leftrulewidth \leftborderskip=6pt plus 1fil\relax \rightborderskip=\leftborderskip \columnwidth=\zeropt\relax \merge_rows=0\relax \merge_height=\zeropt\relax \columnwidth=\zeropt\relax }% % \def\everyrow{\toprulewidth=0.4pt\relax \bottomrulewidth=\toprulewidth \topborderskip=3pt plus 1fil\relax \bottomborderskip=\topborderskip \rowheight=\zeropt\relax \merge_columns=0\relax \merge_width=\zeropt\relax }% % \def\get_data#1<#2{\relax \def\temp##1/#1/##2/##3***{\relax \def\temp{##2}% \ifnum1=0\temp #2={##1/#1//}% \else % \message{extracted ##2}% debug ##2% \fi }% \x_after\temp\the#2#1/1/***% }% % \def\add_data#1>#2#3{\relax \def\temp##1/#1/##2/##3***{\relax #2={##1/#1/##2#3/##3}% % \message{\string#2=\the#2}% debug }% \x_after\temp\the#2***% }% % \def\add_column_number_data{\relax \x_after \add_data \the\column_number>\column_info }% % \def\get_column_number_data{\relax \x_after \get_data \the\column_number<\column_info }% % \def\add_row_number_data{\relax \x_after \add_data \the\row_number>\row_info }% % \def\get_row_number_data{\relax \x_after \get_data \the\row_number<\row_info }% % \declarebox\temp_box \declarebox\scratch_box \declaredimen\temp_dimen \declaredimen\scratch_dimen \declareskip\temp_skip \declarecount\temp_count % \declarecount\tracingexpansions \tracingexpansions=0 % \catcode`_=8 % Return to normal. % \endinput