doc: Better example for custom ICU rules

Use a more practical example, and also add some explanation.

Reported-by: Jeff Davis <pgsql@j-davis.com>
This commit is contained in:
Peter Eisentraut 2023-03-10 09:25:03 +01:00
parent 470103697a
commit cd42785974
1 changed files with 9 additions and 3 deletions

View File

@ -243,11 +243,17 @@ CREATE COLLATION german_phonebook (provider = icu, locale = 'de-u-co-phonebk');
</para>
<para>
To create a collation using the ICU provider, based on the English ICU
locale, with custom rules:
To create a collation using the ICU provider, based on the root ICU locale,
with custom rules:
<programlisting>
<![CDATA[CREATE COLLATION en_custom (provider = icu, locale = 'en', rules = '&a < g');]]>
<![CDATA[CREATE COLLATION custom (provider = icu, locale = 'und', rules = '&V << w <<< W');]]>
</programlisting>
With this rule, the letter <quote>W</quote> is sorted after
<quote>V</quote>, but is treated as a secondary difference similar to an
accent. Rules like this are contained in the locale definitions of some
languages. (Of course, if a locale definition already contains the desired
rules, then they don't need to be specified again explicitly.) See the ICU
documentation for further details and examples on the rules syntax.
</para>
<para>