Windows Live Writer 1.0 Beta Update

Software Comments

Today an update for Windows Live Writer 1.0 Beta was published:

The following is a summary of the changes in the Writer 1.0 (Beta) Update:

  • Tagging support
  • Support for Blogger Beta
  • Categories are sorted by name and support scrolling, plus improved support for reading categories from your blog
  • Improved startup performance
  • Paste is enabled for Title region and TAB/SHIFT+TAB navigation between title and body supported
  • Insert hyperlink added to context menu when text is selected
  • Title attribute in Insert Link dialog
  • Custom date support for Community Server
  • Improved keyboard shortcuts for switching views
  • Change spell-check shortcut key to F7
  • Add "png" to insert image dialog file type filter
  • More robust image posting to Live Spaces
  • Improved style detection for blogs 
  • Fixed issues with pasting URLs and links
  • Remember last window size and position when opening a new post
  • Open post dialog retrieves more than 25 old posts

Updated coComment support for Community Server 2.1

Yesterday the guys at coComment updated their scripts. They also refreshed the example for Community Server, but that's targetting CS 2.0. There are some breaking changes in the API of CS 2.1, so that code won't work with Telligent's latest release. Keyvan Nayyeri updated the code some time ago. I polished it a little bit and incorporated the latest changes from coComment:

<%@ Import Namespace="CommunityServer.Components" %>
<%@ Import Namespace="CommunityServer.Blogs.Components" %>

<% CSContext context = CSContext.Current; %>
<% Weblog currentBlog = Weblogs.GetWeblog(context.ApplicationKey); %>
<% BlogThreadQuery query = new BlogThreadQuery(); %>
<% query.PostID = context.PostID; %>
<% if (context.PostName != null) { %>
<%   query.PostName = context.PostName; %>
<% } %>
<% query.IncludeCategories = false; %>
<% query.ReturnFullThread = false; %>
<% query.SectionID = currentBlog.SectionID; %>
<% PostSet postSet = WeblogPosts.GetPosts(query, true); %>
<% postSet.Organize(); %>
<% WeblogPost blogPost = postSet.ThreadStarter as WeblogPost; %>
<% bool isAuthor = context.IsAuthenticated; %>

<script type="text/javascript">
coco =
    tool       : "<%= SiteStatistics.CommunityServerVersionVersionInfo %>",
    siteurl    : "<%= Globals.FullPath(currentBlog.Url) %>",
    sitetitle  : "<%= currentBlog.Name %>",
    pageurl    : "<%= Globals.FullPath(BlogUrls.Instance().Post(blogPost)) %>",
    pagetitle  : "<%= blogPost.Subject %>",<% if (isAuthor) { %>
    author     : "<%= context.User.DisplayName %>",<% } else{ %>
    authorID   : "<%= tbName.UniqueID %>",<% } %>
    formID     : "aspnetForm",
    textareaID : "<%= tbComment.UniqueID %>",
    buttonID   : "<%= btnSubmit.UniqueID %>"
<script id="cocomment-fetchlet" src=""

If you run CS 2.1 on ASP.NET 1.1, you have to change formID from aspnetForm to __aspnetForm.

What I don't understand however is why the xxxID variables require the name of the related control instead of the ID.

Inline Search for Internet Explorer

Tools, Internet Explorer Comments

From Omar Shahine's blog post entitled InlineSearch for Internet Explorer we learn

*This is simply a musthave add-in for IE. For those of us that used the FireFox Find feature and werelike "OMG", you can now have the same thing in IE. *

You can see in the screen shot below how this works:

[Source: PaulThurrott's Internet Nexus]

As an Emacs user, I've grown usedto having inline search as a feature and often get frustrated when the applicationI'm using doesn't support its. It's great to see this feature added to Internet Explorer.I just downloaded it and it works great with the most recent beta of InternetExplorer 7. Give it a shot.

By the way, Jeremy Epling and JoshuaAllen who both work on the IE team also told me to check out if I'm interested in tricking out my Internet Explorer install. I've added the site tomy bookmark list and will check it out later today to see if there any other interesting IE extensions I've been missing out on.

[via Dare Obasanjo]

I fully agree. For the same reason I switched from Notepad2 to Notepad++. However, I changed the shortcut for Incremental Search from Ctrl-Alt-I to Ctrl-I which I'm accustomed to by Visual Studio.

Another release of Akismet spam rule

My Akismet spam rule has a second home. Originally I contributed it to CSMVP's CSModules package aka Alabaster. A couple of days ago José Lema informed me that Telligent wants to release a free dedicated spam rule package, and they would like to include my rule as well. First I hesitated relinquishing my baby, but hey, the more users get easier access to that rule, the less spam they'll get. So finally I agreed José to include my rule in their package.

Yesterday José announced the availability of that spam rule package, and indeed my spam rule is not included in it, but available on its own. That means I still have full control over it and more people will use it. So if you don't want to use Alabaster (though you might miss other great CSModules) you can get the Akismet spam rule as a stand-alone component.

Happy spam-fighting.

KDE Mouse Emulator

Software, Tools Comments

Jörgen Sigvardsson published his KDE Mouse Emulator at CodeProject:

In KDE (a desktop environment for Unix operating systems), windows can be moved and resized without having to click on window edges or going through menus. To move a window, simply press ALT and press left mouse button and reposition the window by moving the mouse. To resize a window, press the right mouse button instead, and adjust the position of the bottom right corner by moving the mouse.

I installed it only a few hours ago and am already used to it.