Subject: Getting rid of $|in| in TEXMDOIN (mactex.lisp)
From: Wolfgang Jenkner
Date: 22 Aug 2002 15:01:12 +0200
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