Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1reNn6-00B5SO-Ks for pgsql-bugs@arkaria.postgresql.org; Sun, 25 Feb 2024 23:20:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1reNn5-009Ll9-6v for pgsql-bugs@arkaria.postgresql.org; Sun, 25 Feb 2024 23:20:15 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1reNn4-009Ll0-Ux for pgsql-bugs@lists.postgresql.org; Sun, 25 Feb 2024 23:20:15 +0000 Received: from wfhigh1-smtp.messagingengine.com ([64.147.123.152]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1reNn2-000z7E-8P for pgsql-bugs@lists.postgresql.org; Sun, 25 Feb 2024 23:20:14 +0000 Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfhigh.west.internal (Postfix) with ESMTP id 8DFBB1800092; Sun, 25 Feb 2024 18:20:08 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Sun, 25 Feb 2024 18:20:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paquier.xyz; h= cc:cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm1; t=1708903208; x=1708989608; bh=SqaDzOWU70 AkYctEMKHNF08GEvrZ18bXWMb7Hco8yk4=; b=VTv73W5/xX8juujgRi206QUS/5 Ka+hvQhhTRJOyqAsuVt1+OSHHyIb4uRj+0YFNpcK+Zh9Z+auq9l6IA4fOChTytky WF7zJvRYRi93UU4DBJ9j9SuUDsduSJcURL8fh9BYLZvOIQFEzC0H3o3CT9LYVgTU VSkYmHyc1SKFoeujOu8NgOXDVxZuoBxwNQ+Sgnms8k8vh/zqPnBonom05uIMEOmj IQXOIcEzungehhWnvxPWGQxEam724aAE0wiytc0m4SWgs2KnFCilMb/N48BiBYzb xlj4jrOlOhtGJhxi0Fv81ZSn6uKSqU4F9Vw4nWyox3b3xD2/nlPCXuZu4+aA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; t=1708903208; x=1708989608; bh=SqaDzOWU70AkYctEMKHNF08GEvrZ 18bXWMb7Hco8yk4=; b=OKRWhgHApt4Xs5mL6zjEFi5pCtOopb0iO7cWo3oN1MTX PqIgXcNWEjaMtRRpI3GnsO4bKjTsTu7lY1Upzol4Lk21W2EfBlFJuIQndLebyMfz GnZDd/kINAMZoj09832FIo3316m3jCFzNkLdiI/KX3MBO2M/1xYvgkq3iFbTzubq U1K1B6Al4PkFz1LNA/H9IyD9m4Hq96rZyQdUnoLeyAn++Pv0I4ljnWGWWCJCT16r yq/9nFE/BBrgTnoUnqRUby/r8/oVdi/YKgkIQf1g8tW/8Qd4dBWSujFIc7GHKpua 3tNke9XpuNSDb4BKSoficWhgfsGh+5+LwZgZ3+2ULA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrgedugddtkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenfg hrlhcuvffnffculdefhedmnecujfgurhepfffhvfevuffkfhggtggujgesghdtreertddt jeenucfhrhhomhepofhitghhrggvlhcurfgrqhhuihgvrhcuoehmihgthhgrvghlsehprg hquhhivghrrdighiiiqeenucggtffrrghtthgvrhhnpeegieevieejgeeliedtueejhefh ieffiedtfeffudefffdvkefgiefhteduvdevvdenucffohhmrghinhepfihikhhiphgvug hirgdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhr ohhmpehmihgthhgrvghlsehprghquhhivghrrdighiii X-ME-Proxy: Feedback-ID: i0fe9450f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 25 Feb 2024 18:20:05 -0500 (EST) Date: Mon, 26 Feb 2024 08:19:53 +0900 From: Michael Paquier To: Thomas Munro Cc: cees.van.zeeland@freedom.nl, pgsql-bugs@lists.postgresql.org Subject: Re: BUG #18362: unaccent rules and Old Greek text Message-ID: References: <18362-be6d0cfe122b6354@postgresql.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="Cn15ME/WG5QQW91d" Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --Cn15ME/WG5QQW91d Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Feb 25, 2024 at 04:21:36PM +1300, Thomas Munro wrote: > On Sun, Feb 25, 2024 at 11:14=E2=80=AFAM PG Bug reporting form > wrote: >> So, there are reasons to keep the current unaccent.rules as it is, but... >> there are other reasons to add a few lines to it, f.e. after line 955 and >> insert five greek vowels with Oxia >> Please add: >> =E1=BD=B1 =CE=B1 >> =E1=BD=B3 =CE=B5 >> =E1=BD=B5 =CE=B7 >> =E1=BD=B7 =CE=B9 >> =E1=BD=B9 =CE=BF >> =E1=BD=BB =CF=85 >> =E1=BD=BD =CF=89 Correct me if I'm wrong of course, but reading a bit on the matter at [1], letters with Tonos or Oxia are actually equivalent since 1986, and we only include character with Tonos in our unaccent.rules. > We don't exactly maintain this list manually, we extract it from > Unicode source data. Can you see what needs to be adjusted in here to > achieve that goal? See commits like e3dd7c06e627 or 59f47fb98dab for some references. Unfortunately, we've been using as policy to not backpatch any changes to the in-core rules file, and you can plug in your own file. Saying that, these additions sound like a natural addition seen from here. > Perhaps a new range or something like that? It seems to me that it is a bit more complicated than that, because Unicode.data decomposes the characters with Oxia as characters with Tonos, and then characters with Tonos are decomposed with the "base" alphabet characters + Tonos. We do a recursive lookup at the unicode table in get_plain_letter() and is_letter_with_marks(), so it seems to me that we're not missing much, and I suspect that there should be no need for a new custom range of characters.. Cees, perhaps you would like to get a shot at that? [1]: https://en.wikipedia.org/wiki/Greek_diacritics#Unicode -- Michael --Cn15ME/WG5QQW91d Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEG72nH6vTowiyblFKnvQgOdbyQH0FAmXbyxkACgkQnvQgOdby QH3h8g/9FMPl46R6CplA8sfCmUjsiQEocpKAq1xaKKR4ae81idqIFysHdmgl9Q0+ gHvRQaFXTMNzY2Qh8Y0USdi7WRe7BVq2wmZWwYCTiOlWEjmP+Ll+bl9jK8GtyeJ7 jw2qjAePK3pJe9fMsJqxOUwIztFG+WwiFjk0UC9vWAZdHJVzAtNW64xXfmJUkEh3 Faw06UBY4UtDXZ7QG4N8KG67eDB0oVArmCSI254mgxGHRFK23xj2Hg69xRnsGpgJ PNI6Xrs6exj7v6GLwj4nvkSIdJ4eL5S7C6kHIxTkupmMygV9KFRlI93IIiQ9HLph gsSjlG1ERL1yVB7hjQiLb59xDMJL/maR7I6cx9j46kfeY94bDsf8a+0PBHGs7UjG eA4I1NL0s4G6LdoT94lrVyoTLO5J0XrM6PcLE4bEEfTjI3sR6tWc4NijfB0HoaOW rlyK00EvAinPENHlXNOgprcG2898jPlB5LMX7mUKzZ72SW5eOKWwwq4/ykLi4IAK fwFrcqQ9VHPVGf9IhvVEucV7bs0OS4o9t5fYBDNPgis35sCN7ClNA8bp/99tBr/+ nxd59QIEIcGVvd/jrxR2YM4F6us3qoOM1Wl9PNUwAggsdSLkwplxUpMq7vfr2j/j Y/NM0Tc4wN9JMtj5n04xoS+LjUD6JIREuEdEHuNGDC4d7Wa1Yp4= =rMXb -----END PGP SIGNATURE----- --Cn15ME/WG5QQW91d--