emacs-devel
[Top][All Lists]
Advanced

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

Re: char-table-range


From: Richard Stallman
Subject: Re: char-table-range
Date: Fri, 20 Feb 2004 08:42:21 -0500

           I did not realize that currently, for charsets different from ascii 
and
           eight-bit-{control,graphic}, char-table-range actually returns the
           entire range of values if the value is not uniform.

       That seems like a good thing for it to to.

    Yes, but Handa remarked that the return value is given in a form
    (sub-char-table) which is not supposed to be exported to Lisp.

That is unfortunate.  The distinction between char-tables and
sub-char-tables is one that "sort of grew", and is sill being
clarified.

    I am currently reading the Elisp chapter on sequences.  In the section
    on chartables several things are wrongly, incompletely or ambiguously
    documented.  I will take care of that, but I do not want to "document"
    bugs.

Thank you.

    Setting the default value using `set-char-table-default' does _not_
    override non-nil pre-existing values in the charset _except_ for the
    generic character itself.  Setting the generic character itself
    overrides the entire charset.  Is this intentional?

I don't know.  But it is not very clean, so it would be nice to change it,
if that does not cause some other problem.

Handa, do you know if anything depends on this?

    The second thing that looks _somewhat_ strange (but maybe it is OK) is
    that (make-char-table subtype init) will also set extra slots to INIT.
    This is somewhat unexpected because a logical default for characters
    would seldom seem to make sense for extra slots as well.  Maybe this
    is intentional anyway.

It looks like a misfeature to me.  But before changing it, we had
better see if anything depends on it.  I think that means looking at
all the calls to make-char-table and checking each one.

Can you do that?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]