X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/03f2fa83c13c1b532284205fa7efcab9b8b2c41f..HEAD:/wp-admin/js/editor.js diff --git a/wp-admin/js/editor.js b/wp-admin/js/editor.js index 8602b140..e3fbaab9 100644 --- a/wp-admin/js/editor.js +++ b/wp-admin/js/editor.js @@ -118,20 +118,29 @@ // Replace paragraphs with double line breaks function removep( html ) { - var blocklist = 'blockquote|ul|ol|li|table|thead|tbody|tfoot|tr|th|td|h[1-6]|fieldset', + var blocklist = 'blockquote|ul|ol|li|dl|dt|dd|table|thead|tbody|tfoot|tr|th|td|h[1-6]|fieldset', blocklist1 = blocklist + '|div|p', blocklist2 = blocklist + '|pre', preserve_linebreaks = false, - preserve_br = false; + preserve_br = false, + preserve = []; if ( ! html ) { return ''; } - // Protect pre|script tags - if ( html.indexOf( '
]*>[\s\S]*?<\/\1>/g, function( match ) { + preserve.push( match ); + return ''; + } ); + } + + // Protect pre tags. + if ( html.indexOf( ' ]*>[\s\S]+?<\/\1>/g, function( a ) { + html = html.replace( /]*>[\s\S]+?<\/pre>/g, function( a ) { a = a.replace( /
(\r\n|\n)?/g, '' ); a = a.replace( /<\/?p( [^>]*)?>(\r\n|\n)?/g, ' ' ); return a.replace( /\r?\n/g, ' ' ); @@ -170,7 +179,7 @@ html = html.replace( new RegExp('\\s*<((?:' + blocklist2 + ')(?: [^>]*)?)\\s*>', 'g' ), '\n<$1>' ); html = html.replace( new RegExp('\\s*(' + blocklist2 + ')>\\s*', 'g' ), '$1>\n' ); - html = html.replace( / ]*)>/g, '\t ' ); + html = html.replace( /<((li|dt|dd)[^>]*)>/g, ' \t<$1>' ); if ( html.indexOf( '