Monday, March 23, 2009

Windows Live Writer

I recently upgraded my MSN Messenger to the latest version, and Microsoft was kind enough to ask me if I wanted to install a bunch of other crap applications with it! Well, it was kind of them to ask; not every company does (lookin' at you, Real Player). Anyway, one of the apps it asked about (and the only one I installed) was Windows Live Writer, which is essentially a WYSIWYG editor for blog postings. It has all your standard Word-like buttons for formatting text and adding images, lists (numbered and bullet), hyperlinks, tables, etc. as well as undo/redo. It also allows you to keep drafts, preview what the posting will look like when published, spell-check the article, and even add categories. It knows about the blog software you use so it can (presumably) tailor itself to what you're using. If you're using Wordpress rather than Blogger (which I use), some Wordpress-specific options may show up while Blogger-specific options would not be shown. Once you're done, you can even publish your article directly from Live Writer – just click a button, enter your password (if you haven't saved it), and you're done.

One of the coolest features is the preview pane. Live Writer will download your blog's template, and use it to generate the preview so that while you're writing your posting, you can see exactly what it will look like once published. Blogger has a preview option as well, but it sucks. I mean it really sucks. Really. It's just hopelessly broken. It does basic HTML formatting so that <em>italics</em> shows up as italics, but the font it uses is different from the one that the blog uses, tables and images aren't formatted the same way, the width of the text area is different, it just looks nothing like the final product. Google (which owns blogger) doesn't get much wrong with their software, but this is one area where they've really dropped the ball. Live Writer, on the other hand, shows the preview exactly as it will show up on the blog, complete with the sidebar, previous posts, dates, labels, links, the blog title, everything. I'm very impressed.

Before using Live Writer, I would write my blog entries in emacs using markdown format, then run it through a perl script I wrote that called markdown and did some other formatting and wrote the output to an html file. I could then preview the html file in the browser for formatting and when it was done, copy-and-paste the contents of the html file into the blogger "Create Post" page. Going from the text I was editing to the html was a two-step process – I would switch from emacs to a command shell and run fix <file> and then start <file>.html which would launch Firefox. From then on, I would save my edits, then go to the command shell and run fix again, then switch to Firefox and hit CTRL-R to refresh the page. This was not that big a deal, but the WYSIWYG thing is much easier and I love the accurate preview window.

I've used it so far to write a few blog entries (including this one) and I'm really starting to like it. The preview thing is awesome, it does spell-checking which neither emacs nor markdown do (after pasting the html on the blogger page, Firefox will do it, though I'd have to remember to actually check it before publishing), and there are plug-ins you can get to add other capabilities. For example, if you post lots of pictures or video to your blog, there are plug-ins to make those easier. One thing I don't particularly like is font support. If you choose a different font, it uses the <FONT> html tag to specify it. I don't like the font tag – I prefer using CSS – but I rarely change fonts anyway.

Interesting note: Over the past week, I have found a couple of interesting spelling suggestions for technical words from the spell checker:

  • "Unix" for "unix"
  • "Xbox" for "XBox"
  • "VMware" for "VMWare"
  • "Perl" for "perl"
  • It doesn't know what "emacs" is (suggested "maces")

While testing the font thing out, I found another cool feature: if you do want to do something that the editor doesn't directly support (like <tt>fixed width text</tt>), you can just switch over to the Source window and enter the HTML directly. This also allows you to add other html stuff as well as custom styles, and even JavaScript (which actually runs in the preview window). Just for fun, I even tried the <blink> and <marquee> tags – though I truly believe that anyone using either of those should be shot – and marquee worked but blink did not. I don't care about that though, since I'll never use either of those on a blog entry. If I did, according to what I said before, I'd have to shoot myself. And I would.

Anyway, if you have a blog, and you use Windows (I kind of doubt that there will be Linux or Mac versions anytime soon), you may want to check this out. And by the way, in case you think this is a paid endorsement or that I'm posting this because I have friends at Microsoft or something, it's not and I don't. I did work at Microsoft for a four-month work term over seventeen years ago (holy crap, I'm old), and I know the guy who created Xbox Live (though he doesn't work for Microsoft anymore), and I listen to Scott Hanselman's podcast, but that's about the extent of my association with Microsoft. But if anyone at Microsoft wanted to pay me after the fact for writing such a glowing review, I'd gladly take an Xbox 360. Feel free to contact me for my address.

No comments: