2008/9/3 Robert Dodier <robert.dodier at gmail.com>:
> On Tue, Sep 2, 2008 at 3:37 PM, Dieter Kaiser <drdieterkaiser at web.de> wrote:
>
>> This problem with display2D:false Maxima has with a lot of functions.
>>
>> It is a general problem of lineardisplay. We had some time ago a longer
>> discussion about this problem under the topic "Linear display not correct?".
>
> Yes. I looked at it last night and from what I can tell it is just
> a matter of assigning some properties to laplace, bessel_foo, elliptic_bar,
> etc, in the same way those properties are already assigned to sin, cos,
> integrate, etc. Look in src/suprv1.lisp and search for calls to nounify.
It is easier to fix the function msize-atom (in grind.lisp) to strip %
from the begining of symbols (just like it strips $):
==================================================================
RCS file: /cvsroot/maxima/maxima/src/grind.lisp,v
retrieving revision 1.36
diff -u -r1.36 grind.lisp
--- grind.lisp 27 Jul 2008 07:04:09 -0000 1.36
+++ grind.lisp 3 Sep 2008 09:27:11 -0000
@@ -151,7 +151,7 @@
((setq y (rassoc x aliaslist :test #'eq)) (return (msize (car y)
l r lop rop)))
((null (setq y (exploden x))))
((safe-get x 'noun) (return (msize-atom (get x 'noun) l r)))
- ((char= #\$ (car y)) (setq y (slash (cdr y))))
+ ((member (car y) '(#\$ #\%) :test #'char=) (setq y (slash (cdr y))))
((stringp x)
(setq y (coerce x 'list))
(do ((l y (cdr l))) ((null l))
This function also ignores the option variable lispdisp (it always
prepends ? to lisp symbols). It also does some transformations to
strings, which maybe it shouldn't:
(%i1) display2d:false$
(%i2) "a;b";
(%o2) "a\;b"
(%i3) "a$b";
(%o3) "a\$b"
(%i4) "a\b";
(%o4) "ab"
--
Andrej