Home Explore Blog CI



postgresql

20th chunk of `doc/src/sgml/charset.sgml`
bf75e3baac73833f05bef71257929e34407b21369952aa780000000100000fa2
 <title>ICU Collation Settings</title>
      <tgroup cols="4">
       <colspec colname="col1" colwidth="1*"/>
       <colspec colname="col2" colwidth="2*"/>
       <colspec colname="col3" colwidth="2*"/>
       <colspec colname="col4" colwidth="5*"/>

       <thead>
        <row>
         <entry>Key</entry>
         <entry>Values</entry>
         <entry>Default</entry>
         <entry>Description</entry>
        </row>
       </thead>

       <tbody>
        <row>
         <entry><literal>co</literal></entry>
         <entry><literal>emoji</literal>, <literal>phonebk</literal>, <literal>standard</literal>, <replaceable>...</replaceable></entry>
         <entry><literal>standard</literal></entry>
         <entry>
          Collation type. See <xref linkend="icu-external-references"/> for additional options and details.
         </entry>
        </row>

        <row>
         <entry><literal>ka</literal></entry>
         <entry><literal>noignore</literal>, <literal>shifted</literal></entry>
         <entry><literal>noignore</literal></entry>
         <entry>
          If set to <literal>shifted</literal>, causes some characters
          (e.g. punctuation or space) to be ignored in comparison. Key
          <literal>ks</literal> must be set to <literal>level3</literal> or
          lower to take effect. Set key <literal>kv</literal> to control which
          character classes are ignored.
         </entry>
        </row>

        <row>
         <entry><literal>kb</literal></entry>
         <entry><literal>true</literal>, <literal>false</literal></entry>
         <entry><literal>false</literal></entry>
         <entry>
          Backwards comparison for the level 2 differences. For example,
          locale <literal>und-u-kb</literal> sorts <literal>'àe'</literal>
          before <literal>'aé'</literal>.
         </entry>
        </row>

        <row>
         <entry><literal>kc</literal></entry>
         <entry><literal>true</literal>, <literal>false</literal></entry>
         <entry><literal>false</literal></entry>
         <entry>
          <para>
           Separates case into a "level 2.5" that falls between accents and
           other level 3 features.
          </para>
          <para>
           If set to <literal>true</literal> and <literal>ks</literal> is set
           to <literal>level1</literal>, will ignore accents but take case
           into account.
          </para>
         </entry>
        </row>

        <row>
         <entry><literal>kf</literal></entry>
         <entry>
          <literal>upper</literal>, <literal>lower</literal>,
          <literal>false</literal>
         </entry>
         <entry><literal>false</literal></entry>
         <entry>
          If set to <literal>upper</literal>, upper case sorts before lower
          case. If set to <literal>lower</literal>, lower case sorts before
          upper case. If set to <literal>false</literal>, the sort depends on
          the rules of the locale.
         </entry>
        </row>

        <row>
         <entry><literal>kn</literal></entry>
         <entry><literal>true</literal>, <literal>false</literal></entry>
         <entry><literal>false</literal></entry>
         <entry>
          If set to <literal>true</literal>, numbers within a string are
          treated as a single numeric value rather than a sequence of
          digits. For example, <literal>'id-45'</literal> sorts before
          <literal>'id-123'</literal>.
         </entry>
        </row>

        <row>
         <entry><literal>kk</literal></entry>
         <entry><literal>true</literal>, <literal>false</literal></entry>
         <entry><literal>false</literal></entry>
         <entry>
          <para>
           Enable full normalization; may affect performance. Basic
           normalization is performed even when set to
           <literal>false</literal>. Locales for languages that require full
           normalization typically enable it by default.
          </para>
  

Title: ICU Collation Settings
Summary
The ICU collation settings provide various options to customize the collation process, including collation type, ignore options, case sensitivity, and numeric sorting, with keys such as co, ka, kb, kc, kf, kn, and kk, each with specific values and default settings that can be used to tailor the collation behavior to specific needs.