SmartyPants is a text modifier that can be used to turn straight quotes to "curly quotes", dashes to em-dashes -- as they say -- dots to ellipses ... etc. I've used it for quite some time on my regular MT install, and it lends an air of polish and pretentiousness professionalism to the output.
It works just fine under MT 3.11 with static publishing. However, as expected, it doesn't work with dynamic publishing (since all the non-standard tags need to be handled as separate PHP modules). It doesn't cause an error, it just doesn't do anything.
Thereby hangs a tale ...
Of course, I have no directory by that name. Which, given my screwy install, isn't a surprise. So, create one, and try putting smartypants.php into that plugins directory.
Nada.
Over on an 6A/MT article on PHP and dynamic publishing, I find "And with the Smarty framework, there are even more ways to customize the rendering of your page. Another feature available through Smarty is the output filter. An output filter is something that runs after the template has been executed. If, for example, you want to apply a text filtering process over your entire page (not just individual entry text), you can load an output filter to do that" and instructions on creating an an outputfilter.smartypants.php file that goes in the mt/php/plugins directory.
So I create file as defined, and put it and smartypants.php into the mt/php/plugins directory. Then I make the mods specified in the mtview.php file, reopen the file and ...
Note 1: This approach makes SmartyPants pretty ubiquitous through all the text of the (dynamic) blog pages, which means you don't have to put the smarty_pants="1" statement in the MT tags of your templates (except on static page templates), but which also means you can't easily turn it off except through the mechanisms that SmartyPants gives you.
Still, I'm pleased to have gotten that bit figured out.
Note 2: SmartyPants does its processing on the fly. Thus the static/Perl version slows down your page rebuilds as the text has to be processed at each rebuild (i.e., the text is not stored with curly-quotes in the database, just in the HTML file). The dynamic/PHP version is the same, which means that it will slow down your dynamic page displays by some (minor, server-dependent) increment.
Filed under :: Blogging