Форматирование qTranslate-X не одинаково для разных языков (апостроф и правильная одинарная кавычка)
Английский и голландский языки включены. У меня есть свой formatting.php, настроенный для различения апострофов (прямые, ') и правильных одинарных кавычек (фигурные,'):
$apos = _x( ''', 'apostrophe' );
$opening_single_quote = _x( '‘', 'opening curly single quote' );
$closing_single_quote = _x( '’', 'closing curly single quote' );
Это хорошо работает на английском языке, но на голландском языке вместо этого требуется правильная одинарная кавычка для апострофа. Мой вывод:
Английский: отладка сложная вещь
Голландский: отладка сложная вещь
Я попытался вставить правильную одинарную кавычку "с правильной двойной кавычкой", и она применима к обоим языкам, но я не могу понять, почему на голландском языке она всегда будет брать правильную одинарную кавычку вместо апострофа.
Любая помощь с благодарностью.
1 ответ
Регулярные выражения в formatting.php не вызывались, потому что апостроф в голландском тексте был заменен где-то между строками 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 );
Комментирование этого раздела решает проблему.