Getting rid of $|in| in TEXMDOIN (mactex.lisp)



Is the following patch OK?  It would solve the case-sensitivity
problem for keywords (as explained in the `Maxima release' thread a
month ago or so; the relevant sub-thread starts with Dan Stanger's
message).


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cut ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*** mactex.lisp.ori	Thu Aug 22 06:05:41 2002
--- mactex.lisp	Thu Aug 22 06:08:14 2002
***************
*** 840,844 ****
  
  (defun texmdoin (x)
!   (nconc `("\\mathbf{for}" ,(second x) $|in| ,(third x))
  	 (cond ((sixth x) `("\\mathbf{thru}" ,(sixth x))))
  	 (cond ((null (seventh x)) nil)
--- 840,844 ----
  
  (defun texmdoin (x)
!   (nconc `("\\mathbf{for}" ,(second x) "\\mathbf{in}" ,(third x))
  	 (cond ((sixth x) `("\\mathbf{thru}" ,(sixth x))))
  	 (cond ((null (seventh x)) nil)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cut ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The only reason I can think of for putting here a symbol instead of a
string is to give the user a hook for changing the way it is printed
(viz. by setting the symbol's TEXWORD property).  But in this case
neither |$in| nor $in should be used here (see below).

After loading the patched TEXMDOIN, we get

(C1) :lisp(unintern '|$in|)
T
(C1) '(for n in [0,1,2,3,4,5] do display(primep(2^(2^n)+1)));
							    n
							   2
(D1) 	    FOR n IN [0, 1, 2, 3, 4, 5] DO DISPLAY(PRIMEP(2   + 1))
(C2) tex(%);
$$\mathbf{for}\>n\>\mathbf{in}\>\left[ 0,1,2,3,4,5 \right] \>
 \mathbf{do}\>DISPLAY\left(PRIMEP\left(2^{2^{n}}+1\right)\right)$$
(D2) 				     FALSE

Btw, this also solves the much neglected case sensitivity problem for
the modified Bessel functions :-)

Wolfgang
-- 
wjenkner@inode.at