From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Kenichi Handa Newsgroups: gmane.emacs.devel,gmane.emacs.pretest.bugs Subject: Re: case-table functions clobbering extra slots Date: Wed, 2 Feb 2005 11:57:51 +0900 (JST) Message-ID: <200502020257.LAA19480@etlken.m17n.org> References: <200501260656.PAA16289@etlken.m17n.org> <200501270316.MAA20608@etlken.m17n.org> <200501280007.JAA24856@etlken.m17n.org> <200501290053.JAA00216@etlken.m17n.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 (generated by SEMI 1.14.3 - "Ushinoya") Content-Type: text/plain; charset=US-ASCII X-Trace: sea.gmane.org 1107314011 12591 80.91.229.2 (2 Feb 2005 03:13:31 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 2 Feb 2005 03:13:31 +0000 (UTC) Cc: emacs-pretest-bug@gnu.org, fx@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Feb 02 04:13:31 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1CwAwD-00029l-LW for ged-emacs-devel@m.gmane.org; Wed, 02 Feb 2005 04:12:17 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1CwB9G-00043p-6X for ged-emacs-devel@m.gmane.org; Tue, 01 Feb 2005 22:25:46 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1CwB7Z-0003JD-Bu for emacs-devel@gnu.org; Tue, 01 Feb 2005 22:24:03 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1CwB7O-0003Dt-HO for emacs-devel@gnu.org; Tue, 01 Feb 2005 22:23:52 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1CwB7N-0003AU-J8; Tue, 01 Feb 2005 22:23:49 -0500 Original-Received: from [192.47.44.130] (helo=tsukuba.m17n.org) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.34) id 1CwAiI-0001Y5-Pm; Tue, 01 Feb 2005 21:57:55 -0500 Original-Received: from nfs.m17n.org (nfs.m17n.org [192.47.44.7]) by tsukuba.m17n.org (8.12.3/8.12.3/Debian-7.1) with ESMTP id j122vq2Q005385; Wed, 2 Feb 2005 11:57:52 +0900 Original-Received: from fs.m17n.org (fs.m17n.org [192.47.44.2]) by nfs.m17n.org (8.12.3/8.12.3/Debian-7.1) with ESMTP id j122vqES030891; Wed, 2 Feb 2005 11:57:52 +0900 Original-Received: from etlken.m17n.org (etlken.m17n.org [192.47.44.125]) by fs.m17n.org (8.11.6p2/8.11.6) with ESMTP id j122vpp03319; Wed, 2 Feb 2005 11:57:51 +0900 (JST) Original-Received: (from handa@localhost) by etlken.m17n.org (8.8.8+Sun/3.7W-2001040620) id LAA19480; Wed, 2 Feb 2005 11:57:51 +0900 (JST) Original-To: rms@gnu.org In-reply-to: (message from Richard Stallman on Sat, 29 Jan 2005 11:21:20 -0500) User-Agent: SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/21.3.50 (sparc-sun-solaris2.6) MULE/5.0 (SAKAKI) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org X-MailScanner-To: ged-emacs-devel@m.gmane.org Xref: main.gmane.org gmane.emacs.devel:32743 gmane.emacs.pretest.bugs:5731 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:32743 In article , Richard Stallman writes: > Downcase of dotted-I is dotted-i (`i'), but, in > lang. env. other than Turkish, upcase of dotted-i must be > dotless-I (`I'). So we need > (set-downcase-syntax dotted-I dotted-i table) > Ok, if we need them both, please add both. I've just installed these changes: o lisp/case-table.el Add set-upcase-syntax and set-downcase-syntax, modify th other function to maintain upcase table. o lisp/international/characters.el, lisp/international/latin-5.el: Setup cases of GREEK-FINAL-SIGMA, Y-WITH-DIAERESIS, I-WITH-DOT-ABOVE, DOTLESS-i. o src/casefiddle.c: Enable casify_object to change characters of different byte size. Fix casify_region to work on such a case correctly. o src/insdel.c Fix bugs of replace_range_2. Now, upcase/downcase commands on the above characters seems to work correctly. But, I found case-fold searching and regexp matching doesn't work as expected. For instance, searching for DOTLESS-i ignores `i' and `I' but find I-WITH-DOT-ABOVE. On the other hand, all of the following returns nil: (staring-match "DOTLESS-i" "i") (staring-match "DOTLESS-i" "I") (staring-match "DOTLESS-i" "I-WITH-DOT-ABOVE") It seems that this behaviour is because compile-pattern is given a downcase table and search_buffer is given a canon table and an equiv table, but I still don't understand the underlying logic of this difference. --- Ken'ichi HANDA handa@m17n.org