[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: #^



    It is a loss, misfeature, and I would claim outright bug, that #^Y
    = CONTROL-CAPSLOCK-Y.  Not CONTROL-LOWERCASE-Y,
    CONTROL-UPPERCASE-Y, CONTROL-SHIFT-Y, or anything obvious like
    that.  I feel this violates the definition of #^Y.

???  Are you really talking about a bug in the "#^" reader macro?  I
just went to fix such obviously buggey behavior and found the
definition of "#^" to be:

(DEFUN XR-/#/^-MACRO (LIST-SO-FAR STREAM)
       LIST-SO-FAR	;Ignored
       (LET ((CH (FUNCALL STREAM ':TYI)))
	    (OR (< CH #/a)
		(> CH #/z)
		(SETQ CH (- CH 32.)))
	    (DPB 1 %%KBD-CONTROL CH)))

Now I haven't sat down in front of a LispMachine to try this out yet,
but I don't see how this can fail to produce a controlified upper case
character.  (I do think that perhaps it souldn't upper case the
character.)  Are you really only complaining about the way the new
keyboards work and not about "#^"?