Outlook Smart Quote
I know a lot of fellow hackers are stuck with Exchange at their workplace.
Using the Outlook thick client is the only real way to talk to Exchange servers
(yes, I know about OWA, and outlook's imap support, and offline-imap, and
isync, etc. They all don't scale for one reason or the other)
It turns out that on a reasonably performant box, Outlook with cached
exchange mode isn't quite so bad. You can get search folders that work (unlike
Thunderbird), a client that doesn't crash (unlike Evolution), and on with
Windows Desktop Search enabled, even a pretty good search experience. The real
remaining problem is the email composition. In particular, responding to plain
text format emails (a must for sending and recieving emails with code snippets)
and using the conventional quoting style, where each line is prefixed with a
> character.
While Outlook has the ability to insert the >'s for you, it totally falls
over when these extra characters push a line's length past the line wrap limit
(by default 76 characters). This "bug" alone makes corresponding with plain
text emails a huge pain.
Outlook Smart Quote is an outlook addin that adds better plain text mail
quoting capabilities to outlook. Along the same lines of what Outlook-QuoteFix
or the QuoteFix Macro try to do.
Releases
New .NET versions!
No python required! (installer will automatically pull in .NET dependencies)
- 04/09/2009 - version 0.7.9 - smartquote-0.7.9.zip
- Recognizes lists where whitespace after list marker is a tab
- New option to convert HTML mails to plain text when replying
- 02/24/2009 - version 0.7.8 - smartquote-0.7.8.zip
- 01/25/2009 - version 0.7.7 - smartquote-0.7.7.zip
- An improved quoting algorithm that better handles lists where the
list items start with '*' or '-' characters followed by a space. Also
better handles paragraphs where the first line is indented.
- More debugging stuff.
- 01/25/2009 - version 0.7.6 - smartquote-0.7.6.zip
- New menu item to temporarily disable smart quote.
- Code refactoring to separate quoting algorithm into a library so I can
create some unit testing around it.
- More debugging infrastructure to track down Explorer tracking bug. If
anyone has a repro case, please contact me!
- 10/19/2008 - version 0.7.5 - smartquote-0.7.5.zip
A new options panel that lets you configure two options: A new kind of "from"
that triggers Outlook's mail header highlighting, and the ability to remove the
spaces between multiple ">" characters. Also a bit more for field
debugability.
- 08/13/2008 - version 0.7.4 - smartquote-0.7.4.zip
This version has some small improvements for better field debugability. No new features.
- 08/05/2008 - version 0.7.3 - smartquote-0.7.3.zip
Fixes a bug in the quoting algorithm where sometimes adjacent words got stuck
together without a space in between in quoted text.
- 08/01/2008 - version 0.7.2 - smartquote-0.7.2.zip
Fixes a bug where a "reply" selected from a right-click context menu for an
item that's not in an Explorer's current selection does get caught by
SmartQuote.
- 07/29/2008 - version 0.7.1 - smartquote-0.7.1.zip
Installing
- Outlook 2007 is required. XP or Vista (32 or 64bit). Make sure you installed Outlook with the Programmable Interop Assemblies feature enabled!
- Download smartquote-x.y.z.zip from above.
- Manually uninstall any previous versions.
- Open zip file and pull smartquote folder out onto your desktop
- Launch the setup.exe in the folder, go through the wizard (this will install .NET 3.5 as well as the VSTO runtime for you if you don't have them already)
Using
Just reply as you normally would. SmartQuote will intercept replies to just
your plain text messages and quote them.
Warning
This is totally unsupported software. Redistribution is disallowed for now.
Compared with Outlook-QuoteFix and QuoteFixMacro
Outlook-QuoteFix has a pretty good quoting algorithm, but it seems
fundamentally flawed in that it tries to operate on text that outlook has
already quoted. This means that the algorithm never gets to see the text before
it was quoted, so there are lots of cases where it works suboptimally.
QuoteFixMacro has nice integration with the client UI because it's
implemented as a macro for which you can create toolbar buttons and menu items.
Unfortunately, the quoting algorithm itself is really basic, and produces
undesirable results very often.
Outlook Smart Quote tries to give you the best of both worlds. A good
integration with the UI through using Outlook Extensibiilty COM API's, and a
proper algorithm that hooks in to outlook at the right level in order to pull
out the pre-quoted text, and apply quoting and re-wrapping itself.
Feedback
You can email me at smartquote at kendeeter dot com.
Old python versions (unmaintained)
- 04/14/2008 - version 0.9.1 - smartquoteaddin.py
Added a SmartQuote menu to the menubar. Buttons now show same icons as standard
buttons of similar function. A little bit better cleanup on shutdown.
- 04/14/2008 - version 0.9 - smartquoteaddin.py
- 04/14/2008 - version 0.8 - smartquoteaddin.py
Development notes for the old python version
Can be found here