0

English and Dutch languages enabled. I have my formatting.php set up to differentiate apostrophes (straight, ') and right single quotes (curly, ’):

$apos = _x( ''', 'apostrophe' );
$opening_single_quote = _x( '‘', 'opening curly single quote' );
$closing_single_quote = _x( '’', 'closing curly single quote' );

This works fine in English, but in Dutch it instead takes the right single quote for the apostrophe as well. My output:

English: Debugging's a ‘tricky’ thing

Dutch: Debugging’s a ‘tricky’ thing

I've tried subbing the right single quote ’ with right double quote ”, and it does apply to both languages, but I can't figure out why, in Dutch, it will always take the right single quote instead of the apostrophe.

Any help is greatly appreciated.

user1886563
  • 31
  • 1
  • 2

1 Answers1

0

The regexes in formatting.php weren't getting called because the apostrophe in the Dutch text was replaced somewhere between lines 113 - 130.

// if a plugin has provided an autocorrect array, use it
        if ( isset($wp_cockneyreplace) ) {
            $cockney = array_keys( $wp_cockneyreplace );
            $cockneyreplace = array_values( $wp_cockneyreplace );
        } else {
            /* translators: This is a comma-separated list of words that defy the syntax of quotations in normal use,
             * for example...  'We do not have enough words yet' ... is a typical quoted phrase.  But when we write
             * lines of code 'til we have enough of 'em, then we need to insert apostrophes instead of quotes.
             */
            $cockney = explode( ',', _x( "'tain't,'twere,'twas,'tis,'twill,'til,'bout,'nuff,'round,'cause,'em",
                'Comma-separated list of words to texturize in your language' ) );

            $cockneyreplace = explode( ',', _x( '’tain’t,’twere,’twas,’tis,’twill,’til,’bout,’nuff,’round,’cause,’em',
                'Comma-separated list of replacement words in your language' ) );
        }

        $static_characters = array_merge( array( '...', '``', '\'\'', ' (tm)' ), $cockney );
        $static_replacements = array_merge( array( '…', $opening_quote, $closing_quote, ' ™' ), $cockneyreplace );

Commenting this section out solves the problem.

user1886563
  • 31
  • 1
  • 2