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



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.



>  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.



Proofpower mailing list

Reply via email to