• I really dislike the smart quotes and smart ellipses. I hope in immediate future versions of WP this kind of autoformatting can be universally disabled, or just be removed!

    Plugins are so much work. WP Unformatted needs you to add custom fields for every single post on your blog for instance.

    I want full control of the ouput please. How about implementing a convert/don’t-convert-breaks option like in Movable Type?

Viewing 5 replies - 1 through 5 (of 5 total)
  • What would be your solution to the problem?

    General autoformatting options should be things that the user can disable. Anything which is post-processing the content I type in should be under my control. Move it into one general ‘default wordpress autoformat’ plugin, move it into one for autop, one for smartquotes, whatever. Or just expose activation/deactivation of those ‘features’ through the Options screens.

    -d

    in /wp-includes/functions-formatting.php starting in like 56, replace that function with the following:

    function wpautop($pee, $br = 1) {
    /* $pee = $pee . “\n”; // just to make things a little easier, pad the end
    $pee = preg_replace(‘|
    \s*
    |’, “\n\n”, $pee);
    // Space things out a little
    $pee = preg_replace(‘!(<(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|math|p|h[1-6])[^>]*>)!’, “\n$1”, $pee);
    $pee = preg_replace(‘!(</(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|math|p|h[1-6])>)!’, “$1\n”, $pee);
    $pee = str_replace(array(“\r\n”, “\r”), “\n”, $pee); // cross-platform newlines
    $pee = preg_replace(“/\n\n+/”, “\n\n”, $pee); // take care of duplicates
    $pee = preg_replace(‘/\n?(.+?)(?:\n\s*\n|\z)/s’, “\t$1\n”, $pee); // make paragraphs, including one at the end
    $pee = preg_replace(‘|\s*?|’, ”, $pee); // under certain strange conditions it could create a P of entirely whitespace
    $pee = preg_replace(‘!\s*(</?(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|hr|pre|select|form|blockquote|math|p|h[1-6])[^>]*>)\s*!’, “$1”, $pee); // don’t pee all over a tag
    $pee = preg_replace(“|(<li.+?)|”, “$1”, $pee); // problem with nested lists
    $pee = preg_replace(‘|

    ]*)>|i’, “

    “, $pee);
    $pee = str_replace(‘

    ‘, ‘

    ‘, $pee);
    $pee = preg_replace(‘!\s*(</?(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|hr|pre|select|form|blockquote|math|p|h[1-6])[^>]*>)!’, “$1”, $pee);
    $pee = preg_replace(‘!(</?(?:table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|math|p|h[1-6])[^>]*>)\s*!’, “$1”, $pee);
    if ($br) $pee = preg_replace(‘|(?<!
    )\s*\n|’, “
    \n”, $pee); // optionally make line breaks
    $pee = preg_replace(‘!(</?(?:table|thead|tfoot|caption|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|math|p|h[1-6])[^>]*>)\s*
    !’, “$1”, $pee);
    $pee = preg_replace(‘!
    (\s*</?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)>)!’, ‘$1’, $pee);
    $pee = preg_replace(‘!(<pre.*?>)(.*?)</pre>!ise’, ” stripslashes(‘$1’) . clean_pre(‘$2’) . ‘</pre>’ “, $pee);
    */
    return $pee;
    }

    And everything you type will be unformatted besides what you specify. Enjoy.

    The smart quotes in version 2.0 are provided by the wptexturize function in /wp-includes/functions-formatting.php. You can comment out the offending lines by preceding them with “//”. The lines in question are those within the wptexturize function that refer to 8216 and 8217 for single quotes, and 8220 and 8221 for double quotes. Example:

    // $curl = preg_replace(“/’s/”, ‘&#8217;s’, $curl);

    ACK – the whole removing of <br / tags in Wp2.0 editor is really driving me nutz!!!!! i added that big block of code (above) in to no avail – it didn’t work..

    also, i’m using include_page – and if i use <p tags, it seems to strip them.. so i can’t format anything!!!@?!@#1

    arg

    frustrated

Viewing 5 replies - 1 through 5 (of 5 total)
  • The topic ‘thanks but no formatting please’ is closed to new replies.