On 10 Aug 2010, at 17:08, Roger Bishop Jones wrote:
> ...
> \typeout{$Id: rbj.sty,v 1.2 2010-08-08 15:50:44 rbj Exp $}
> \NeedsTeXFormat{LaTeX2e}
> \ProvidesPackage{rbj}
> \RequirePackage{ProofPower}
> \RequirePackage{mathabx}
> \def\Zdef{\MMM{\corresponds}}
> \def\holindexon{\def\holin...@aux##1{%
>               \suppr...@quotechars
>               \MMM{\def\${\noexpand\$}
>                       \edef\Temp{##1}\index{!\Temp }}}}
> 
> I then invoked package rbj instead of ProoFPower in my 
> ProofPower .doc file.
> 
>> For what TeX calls macros and LaTeX calls commands, the
>> TeX \def or \let will override and existing definition
>> while in LaTeX you have to use \renewcommand rather than
>> \newcommand. For LaTeX environments, you use
>> \renewenvironment. Do bear in that both TeX and LaTeX
>> are block-structured, but LaTeX has something called

Oops! That last "LaTeX" should read "TeX".

>> \gdef which lets you make top-level definitions from
>> within a block.
> 
> Unfortunately the distinction between tex and Latex 
> environments is one which I have not grasped, so I don't 
> know which I am in.

When I wrote "environment" I was using it as the LaTeX technical term for the 
things like "tabular" in

\begin{tabular}

\end{tabular}

of which LaTeX predefines many and which you can define for yourself using 
\newenvironment. LaTeX is just a macro package as far as TeX is concerned and 
there isn't any sense in which you are "in" one or the other: when you run 
latex or pdflatex they are both there, cheerfully providing too many different 
ways of doing the same thing.

Regards,

Rob.

>  However, since ProofPower uses \def I 
> guess it must be in a tex environment, and so I would 
> suppose that my change is also.
> 
See above. In fact the ProofPower style files use a mixture of TeX's \def 
(rather than LaTeX's \newcommand) and LaTeX's \newenvironment (which has no 
equivalent in TeX).

> Possibly my problem is that my redefinition comes later than 
> the crucial invocation of HOLindexOn.
> I see that it is invoked immediately, so perhaps I should 
> reinvoke after my redefinition.
> 

Yes, indeed. What the macro you are redefining does does is redefine another 
macro, so nothing much will happen if you don't invoke it.

Regards,

Rob.

_______________________________________________
Proofpower mailing list
Proofpower@lemma-one.com
http://lemma-one.com/mailman/listinfo/proofpower_lemma-one.com

Reply via email to