From: Luc Teirlinck <teirllm@dms.auburn.edu>
Cc: handa@m17n.org, rms@gnu.org, emacs-devel@gnu.org
Subject: Re: char-table-range
Date: Tue, 2 Mar 2004 21:39:19 -0600 (CST) [thread overview]
Message-ID: <200403030339.i233dJs02566@raven.dms.auburn.edu> (raw)
In-Reply-To: <200403020247.LAA16492@etlken.m17n.org> (message from Kenichi Handa on Tue, 2 Mar 2004 11:47:19 +0900 (JST))
Ken 'ichi Handa wrote:
(set-char-table-default TABLE IDX VAL)
(1) If IDX is a symbol `ascii', set the default value for all
characters to VAL.
(2) If IDX is GENERIC-CHAR, set the value for characters in
GENERIC-CHAR to nil, and set the default value for them to VAL.
(3) If IDX is an individual character, set IDX to a generic
character that represents the smallest group of characters
containing IDX, and perform (2).
I think (1) is a misfeature. The default value for all characters
should be set by specifying IDX nil. (3) is also very questionable. I
think we don't need it.
I do not know whether (2) is intended as description of the current
behavior of set-char-table-default or as a proposed new behavior. As
a description of the current behavior it is not completely accurate.
Indeed, aset and set-char-table-range both behave exactly as described
in (2) for a generic character, but currently, set-char-table-default
for a generic character just sets the default value to VAL, _without_
first setting the value for characters in GENERIC-CHAR to nil (as aset
and set-char-table-range indeed both do). See the ielm run below.
===File ~/chartable-stuff===================================
*** Welcome to IELM *** Type (describe-mode) for help.
ELISP> (setq cc (make-char-table 'translation-table))
ELISP> (aset cc (make-char 'ipa 48) 2)
2
ELISP> (aset cc (make-char 'ipa) 1)
1
ELISP> (aref cc (make-char 'ipa 48))
1
ELISP> (aset cc (make-char 'ipa 48) 2)
2
ELISP> (set-char-table-range cc (make-char 'ipa) 1)
1
ELISP> (aref cc (make-char 'ipa 48))
1
ELISP> (aset cc (make-char 'ipa 48) 2)
2
ELISP> (set-char-table-default cc (make-char 'ipa) 1)
1
ELISP> (aref cc (make-char 'ipa 48))
2
ELISP>
============================================================
next prev parent reply other threads:[~2004-03-03 3:39 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-16 0:43 char-table-range Kenichi Handa
2004-02-16 1:30 ` char-table-range Luc Teirlinck
2004-02-18 23:38 ` char-table-range Richard Stallman
2004-02-19 1:28 ` char-table-range Luc Teirlinck
2004-02-19 15:40 ` char-table-range Luc Teirlinck
2004-02-20 13:42 ` char-table-range Richard Stallman
2004-02-21 0:03 ` char-table-range Luc Teirlinck
[not found] ` <200403020247.LAA16492@etlken.m17n.org>
2004-03-03 3:39 ` Luc Teirlinck [this message]
2004-03-03 4:50 ` char-table-range Kenichi Handa
2004-03-04 16:41 ` char-table-range Richard Stallman
2004-03-03 4:51 ` char-table-range Kenichi Handa
2004-02-19 1:52 ` char-table-range Luc Teirlinck
2004-02-20 13:42 ` char-table-range Richard Stallman
2004-02-16 2:12 ` char-table-range Luc Teirlinck
2004-02-16 4:08 ` char-table-range Kenichi Handa
2004-02-18 17:55 ` char-table-range Richard Stallman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200403030339.i233dJs02566@raven.dms.auburn.edu \
--to=teirllm@dms.auburn.edu \
--cc=emacs-devel@gnu.org \
--cc=handa@m17n.org \
--cc=rms@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.