# [OS X TeX] using variables in text via references or labels

Alain Schremmer schremmer.alain at gmail.com
Tue Mar 31 00:28:53 CEST 2009

On Mar 30, 2009, at 4:09 PM, Ross Moore wrote:

> Hello Gert,
>
> On 31/03/2009, at 5:31 AM, Gert van Oss wrote:
>
>> dear all,
>>
>> I've had some problem making up a clear subject line and stil am
>> in doubt whether I've succeded. What I'm trying to achieve is the
>> following.
>>
>> My documents have often various tables and charts embedded via the
>>
>>    \input{table_file}
>>
>> command.
>>
>> While explaining my tables/charts I'm mentioning actual numbers
>> (as listed in the tables) in my text. Is it somehow possible to
>> create a list of numbers in my latex document and have them called
>> via a reference in my text? This would enable me to run a somewhat
>> related scenario in my numbers and udpate both my tables with
>> numbers and have all numbers changed in the text as well.
>
> If I understand you correctly, you have tables with numbers
> in (some of) the cells, but these values may change with updates
> of the table data. You want your document to refer to these values
> by showing the actual numbers, rather than by their location.
>
>>
>> I was thinking this should be possible while using \labels, \ref
>> but for the moment can't stretch my mind to find a solution.
>
> Not easily, as the contents of a cell is not the kind
> of thing that establishes a destination for a cross-reference.
>
> You could simply enter the values in the table as the
> expansion of a macro; e.g.,
>
> \newcommand{\specValue}{3.1415926}
> \begin{tabular}{....}
>   ...
>   .... & .... & \specValue & .... & .... \\
>   ...
> \end{tabular}
>
> Then refer to the value in the main document using \specValue .
>
> Of course updating the table is no longer as simple
> as just changing the numbers within the cells.
> You'll have to ensure that the \newcommand definition gets
> properly updated, and its usage not clobbered.
>
> Any other approach would require some tricky macro definitions
> anyway; e.g., making table cells automatically cause their values
> to be recorded as the expansion of a macro specific to the row,
> column and particular table.
>

I don't have the time to think this through but I recently had a
similar problem and got help from this list. Here is what I ended up
doing using arrayjob:

In a stylesheet called RAFv3-0_CheckableItems, I enter the data, e.g.
"alpha", "beta", "gamma", etc:

\newarray\ChapVII%381
%381-1
alpha
&%381-2
beta \$
&%381-3
gamma
.
.
.
.
-
&%381-49
-%this is an empty cell
&%381-50
-
}

Then, in the document I have
\usepackage{RAFv3-0_CheckableItems}
and then

%Row

&
&	1
&	\ChapVII(1)
&	\checkmark
&
&
\\
%Row

&
&	2
&	\ChapVII(2)
&	\checkmark
&
&
\\
.
.
.
.
-

which automatically shows alpha, beta, gamma, where it should. It
makes things reasonably foolproof.

I hope this is comprehensible but, if not, I can send the complete
files off list to anyone interested.

Regards
--schremmer

-------------- next part --------------
----------- Please Consult the Following Before Posting -----------
TeX FAQ: http://www.tex.ac.uk/faq
List Reminders and Etiquette: http://email.esm.psu.edu/mac-tex/
List Archive: http://tug.org/pipermail/macostex-archives/
TeX on Mac OS X Website: http://mactex-wiki.tug.org/
List Info: http://email.esm.psu.edu/mailman/listinfo/macosx-tex