I think you could do something at the theme level using the Rewrite API. Since it's an API, it's not likely to break as readily as a plugin with a full interface and everything. Should be a an easy little script addition.
http://codex.wordpress.org/Function_Reference/WP_RewriteCan't you just manually tweak the .htaccess file and make this happen?
.htaccess doesn't create URLs, it just acts as a traffic cop for incoming URLs. The problem is that WP gives very little flexibility over URL patterns.
You can do %category%/%postname% but you can't do any if/then logic. What gimpie needs is
if %category% == 'news'
pattern = /%category%/%monthnum%-%day%-%year%/
elseif %category == 'reviews'
pattern = %category%/%postname%.htm
I gotta ask, why .htm? Do you have legacy URLs to deal with?
I would go with
- extensionless URLs
- yyyy-mm-dd dates or, distant second choice, dd-mm-yyyy. The former simplifies sorting if you ever need to output and sort URLs by date.