WordPress.org

Make WordPress Core

Ticket #37086: 37086.patch

File 37086.patch, 2.0 KB (added by SergeyBiryukov, 5 years ago)
  • src/wp-includes/formatting.php

     
    14841484 * | U+00C5   | Å     | Aa          | Latin capital letter A with ring above  |
    14851485 * | U+00E5   | å     | aa          | Latin small letter a with ring above    |
    14861486 *
     1487 * Catalan (`ca`) locale:
     1488 *
     1489 * |   Code   | Glyph | Replacement |               Description               |
     1490 * | -------- | ----- | ----------- | --------------------------------------- |
     1491 * | U+00B7   | l·l   | ll          | Flown dot (between two Ls)              |
     1492 *
    14871493 * @since 1.2.1
    1488  * @since 4.6.0 Locale support was added for `de_CH` and `de_CH_informal`.
     1494 * @since 4.6.0 Locale support was added for `de_CH`, `de_CH_informal`, and `ca`.
    14891495 *
    14901496 * @param string $string Text that might have accent characters
    14911497 * @return string Filtered string with replaced "nice" characters.
     
    16891695                        $chars[ chr(195).chr(184) ] = 'oe';
    16901696                        $chars[ chr(195).chr(133) ] = 'Aa';
    16911697                        $chars[ chr(195).chr(165) ] = 'aa';
     1698                } elseif ( 'ca' === $locale ) {
     1699                        $chars[ chr(108).chr(194).chr(183).chr(108) ] = 'll';
    16921700                }
    16931701
    16941702                $string = strtr($string, $chars);
  • tests/phpunit/tests/formatting/RemoveAccents.php

     
    110110                remove_filter( 'locale', array( $this, '_set_locale_to_danish' ) );
    111111        }
    112112
     113        public function _set_locale_to_catalan() {
     114                return 'ca';
     115        }
     116
     117        /**
     118        * @ticket 37086
     119        */
     120        public function test_remove_catalan_middot() {
     121                add_filter( 'locale', array( $this, '_set_locale_to_catalan' ) );
     122
     123                $this->assertEquals( 'allallalla', remove_accents( 'al·lallaŀla' ) );
     124               
     125                remove_filter( 'locale', array( $this, '_set_locale_to_catalan' ) );
     126               
     127                $this->assertEquals( 'al·lallalla', remove_accents( 'al·lallaŀla' ) );
     128        }
    113129}