From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#74155: upcasing strings =?UTF-8?Q?doesn=E2=80=99t?= respect standard-case-table Date: Fri, 01 Nov 2024 16:07:38 +0200 Message-ID: <865xp711zp.fsf@gnu.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14022"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 74155@debbugs.gnu.org To: "Thomas Voss" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Nov 01 15:12:50 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1t6sOM-0003HY-TQ for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 01 Nov 2024 15:12:46 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1t6sOG-0006Ab-TV; Fri, 01 Nov 2024 10:12:40 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t6sMh-0002pK-GC for bug-gnu-emacs@gnu.org; Fri, 01 Nov 2024 10:11:04 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1t6sMg-0006gq-Pg for bug-gnu-emacs@gnu.org; Fri, 01 Nov 2024 10:11:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-version:References:In-Reply-To:From:Date:To:Subject; bh=98PkMbqio73bOC++HPJWgZMb1LFCTzIIH+dmYca06ng=; b=gQ0q9f2ouXya+3w9xZ2TJdyAJ4Z/GSGyEsIEhe3Xnd8P1fkq3GpuLI5KGkrwuyDRNXw/4XchEGNunvHg+DXwMMuzO4XjJGLPUKvDQS1V0xV7uqrh3nyNal4a0GegejHqtIC+Uq96afHi9APiv4Y8XRXoipWzSOYOIMdnqfuOE/JHtc5ZIGoHNMJRs+v/f3vWW2iQv7wndKCZuy4Hi/HI8dO1lv6tAvIZalPI/OoMP4QM2FEeBZ2dkmsVuPyLNhotE3fRRcVCSkFzsjsqAuuu538HEQVnEoMKz17bbh4iQ2Rk75CEXsAgC+I4FftBIe4LrZYyvqr7y0T166WcwzSvQA==; Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1t6sMg-0002Su-Dy for bug-gnu-emacs@gnu.org; Fri, 01 Nov 2024 10:11:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 01 Nov 2024 14:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74155 X-GNU-PR-Package: emacs Original-Received: via spool by 74155-submit@debbugs.gnu.org id=B74155.17304702199457 (code B ref 74155); Fri, 01 Nov 2024 14:11:02 +0000 Original-Received: (at 74155) by debbugs.gnu.org; 1 Nov 2024 14:10:19 +0000 Original-Received: from localhost ([127.0.0.1]:49754 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t6sLz-0002ST-Dj for submit@debbugs.gnu.org; Fri, 01 Nov 2024 10:10:19 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:59434) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t6sLw-0002SJ-Qx for 74155@debbugs.gnu.org; Fri, 01 Nov 2024 10:10:17 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t6sJl-0005Xf-JI; Fri, 01 Nov 2024 10:08:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=98PkMbqio73bOC++HPJWgZMb1LFCTzIIH+dmYca06ng=; b=bkwV+Y0Kn4Ov1+iJbjOV 03mEs93iYGCZcXODF5dvsYs9OECSG5mjDECw9c+DdSftX7vLNDaisyuRdkkpsTSertp/bzqpirH+h ykFE/ZpRBNz2mtmVEzIU+b2ad5hhKnP4BpXVs342tDXXaN7+4ZOncngt53Y+lHaqLP5a9VkRR9sOv GIeowBg24VYRl8hprfIkg9A1vg07L1LsOJf5pKUyfIkjolmhxaoUmMljJdaiwqKQTIww1sfg2gyzn sgpS6i1KbGJq96OKhj+glghRp9C+lbLNJdm5UkNb6qLBakvBRClbrZVnW2VK78dyBmWSUJ1jZJ1GZ o4tYUxRl1BU6gw==; In-Reply-To: (bug-gnu-emacs@gnu.org) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:294683 Archived-At: > Date: Fri, 01 Nov 2024 13:33:13 +0100 > From: "Thomas Voss" via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > As of 2017 (I believe), the capital eszett (ẞ) was adopted into the > German alphabet as the uppercase variable of ß which was previously (and > which still can be) uppercased to ‘SS’. Since I prefer to use the newer > ẞ to the older SS, I have the following line in my configuration: > > (set-case-syntax-pair ?ẞ ?ß (standard-case-table)) > > When working with characters, this behaves as intended: > > (upcase ?ß) > ⇒ ?ẞ > > However when working with strings, it doesn’t: > > (upcase "ß") > ⇒ "SS" > > The same goes for the ‘upcase-word’ and ‘upcase-dwim’ functions which > still upcase ß to SS. It seems that whatever code that is handling > case-conversions for multi-character inputs is not respecting the current > case table. This is a feature: characters which have the 'special-uppercase' property defined for them by the Unicode Standard use their special upper-case rules that override the case-table. If you don't want that, force the special-uppercase property of ß to be nil: (upcase "ß") => "SS" (put-char-code-property ?ß 'special-uppercase nil) (upcase "ß") => "ẞ"