Revert changes to wptexturize() until test cases pass. Reverts [16280], [16378]. see #4539 and #15241.
git-svn-id: https://develop.svn.wordpress.org/trunk@16409 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
e8ea01b4dc
commit
32069ead9d
|
@ -56,24 +56,8 @@ function wptexturize($text) {
|
|||
$static_characters = array_merge(array('---', ' -- ', '--', ' - ', 'xn–', '...', '``', '\'\'', ' (tm)'), $cockney);
|
||||
$static_replacements = array_merge(array('—', ' — ', '–', ' – ', 'xn--', '…', $opening_quote, $closing_quote, ' ™'), $cockneyreplace);
|
||||
|
||||
$dynamic_map = array(
|
||||
'/\'(\d)/' => '’$1', // '99
|
||||
|
||||
'/\'([^\']*)\'([^\']*)\'/' => '‘$1’$2’', // 'test's'
|
||||
|
||||
'/(\w)\'(\w)/' => '$1’$2', // test's
|
||||
|
||||
'/\'([^\']*)\'/' => '‘$1’', // 'asd'
|
||||
'/"([^"]*)"/' => $opening_quote . '$1' . $closing_quote, // "qwe"
|
||||
|
||||
'/(\d)"/' => '$1″', // 9" -> 9″
|
||||
'/(\d)\'/' => '$1′', // 9' -> 9′
|
||||
|
||||
'/\b(\d+)x(\d+)\b/' => '$1×$2' // 10. 97x34 => 97×34
|
||||
);
|
||||
|
||||
$dynamic_characters = array_keys($dynamic_map);
|
||||
$dynamic_replacements = array_values($dynamic_map);
|
||||
$dynamic_characters = array('/\'(\d\d(?:’|\')?s)/', '/\'(\d)/', '/(\s|\A|[([{<]|")\'/', '/(\d)"/', '/(\d)\'/', '/(\S)\'([^\'\s])/', '/(\s|\A|[([{<])"(?!\s)/', '/"(\s|\S|\Z)/', '/\'([\s.]|\Z)/', '/\b(\d+)x(\d+)\b/');
|
||||
$dynamic_replacements = array('’$1','’$1', '$1‘', '$1″', '$1′', '$1’$2', '$1' . $opening_quote . '$2', $closing_quote . '$1', '’$1', '$1×$2');
|
||||
|
||||
$static_setup = true;
|
||||
}
|
||||
|
@ -86,9 +70,6 @@ function wptexturize($text) {
|
|||
$no_texturize_tags_stack = array();
|
||||
$no_texturize_shortcodes_stack = array();
|
||||
|
||||
$single_quote_state = '‘';
|
||||
$double_quote_state = $opening_quote;
|
||||
|
||||
for ( $i = 0; $i < $stop; $i++ ) {
|
||||
$curl = $textarr[$i];
|
||||
|
||||
|
@ -99,15 +80,6 @@ function wptexturize($text) {
|
|||
$curl = str_replace($static_characters, $static_replacements, $curl);
|
||||
// regular expressions
|
||||
$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
|
||||
// quotes that span multiple tags & shortcodes
|
||||
while (($pos = strpos($curl, '\'')) !== FALSE) {
|
||||
$curl = preg_replace('/\'/', $single_quote_state, $curl);
|
||||
$single_quote_state = (($single_quote_state == '‘') ? '’' : '‘');
|
||||
}
|
||||
while (($pos = strpos($curl, '"')) !== FALSE) {
|
||||
$curl = preg_replace('/"/', $double_quote_state, $curl);
|
||||
$double_quote_state = (($double_quote_state == $opening_quote) ? $closing_quote : $opening_quote);
|
||||
}
|
||||
} elseif (!empty($curl)) {
|
||||
/*
|
||||
* Only call _wptexturize_pushpop_element if first char is correct
|
||||
|
|
Loading…
Reference in New Issue