Looks like the definitive method for formatting source for blogs has been made! The new version adds a whole lot of stuff (from Colin's blog):
- You can turn word wrapping on and off. If "wrap words" is checked, lines are rendered in <p> blocks. Otherwise, lines are rendered in <pre> blocks. Check this if your blog layout isn't wide enough for your code.
- You can strip line breaks from the generated HTML. Handy if your blog software converts newlines automatically.
- You can add additional RSS rules to the file, line, and block styles. Use this to add borders, scroll bars, etc. to your code.
- You can embed styles or use a stylesheet. If "embed styles" is checked, tags have style attributes. If "embed styles" is unchecked, tags have class attributes, and the generated HTML includes a style block.
- You can change which menu items are added to the context menus from within the add-in.
- The generated HTML is copied to the clipboard in text and CF_HTML formats.
- The code is cleaner and more modular, and the object model should make it easy to add new features in future versions.
- There's an "About" tab with the version, copyright, license, my contact information, and my Amazon.com wish list (just kidding :).
Also added is using the defined colouring from VS.NET for the colouring (not Resharper coluring though - but I suspect Resharper uses some sort of hack for this anyway...)
Anyway, an example of what this awesome tool can output is below (just a simple object serialization routine):
using System.IO;
using System.Text;
using System.Xml.Serialization;
Â
namespace Notifier
{
   /// <summary>
   /// Summary description for Deserializer.
   /// </summary>
   public class Deserializer
   {
      public static string Serialize(Template theTemplate)
      {
         XmlSerializer xSer = new XmlSerializer(typeof(Template));
         MemoryStream writer = new MemoryStream();
            xSer.Serialize(writer,theTemplate);
            string outStr = ASCIIEncoding.ASCII.GetString(writer.ToArray());
            writer.Close();
            return outStr;
      }
Â
      public static Template DeSerialize(string serializedTemplate)
      {
         XmlSerializer xSer = new XmlSerializer(typeof(Template));
         byte[] bytArr = ASCIIEncoding.ASCII.GetBytes(serializedTemplate);
         using(MemoryStream stream= new MemoryStream(bytArr))
         {
            return xSer.Deserialize(stream) as Template;
         }
      }
   }
}
Â