May 30, 2007

Smart trick - exslt:node-set() in Internet Explorer

I found this gem in David Carlisle's blog. Smart Javascript trick allows to mask msxsl:node-set() extension function as exsl:node-set() and so you can easily write crossbrowser XSLT stylesheets using exsl:node-set() functionality. Opera 9, Internet Explorer 6-7 and Firefox 3 are covered, but sadly Firefox 2 is out of the game. Julian ...

May 27, 2007

IronXSLT: Changing the Way You Work with XSLT in Visual Studio

Yes, I'm trying to change the way you work with XSLT in Microsoft Visual Studio. It must be a pleasure to develop and rocket fast at runtime. Yes, Visual Studio already supports editing, running and even debugging XSLT, but it's still a painfully limited support. So I'm started building IronXSLT ...

Download IronXSLTIf you happens to have Visual Studio Code Name “Orcas” Beta 1 installed,  you can give IronXSLT version 0.1 a shot.

Needless to say, any comments, bug reports and feature requests are greatly appreciated on the IronXSLT Forum.

I decided not to call it Visual XSLT to avoid confusion with ActiveState Visual XSLT plugin, which was discontinued back in 2005, but still might be trademarked. And as I was obviously copying a lot from the IronPython integration sample in Visual Studio SDK, IronXSLT name became a natural choice.  I like this name.

Here are go some screenshots and information about IronXSLT.

Installation
You know, just run the installer. Once installed, IronXSLT adds itself into a list of installed products appearing on the Visual Studio splash and About dialogs:

Visual Studio Splash

 

Note: if you have lots of Visual Studio plugins installed, IronXSLT may not appear in the splash dialog, because of lack of the screen estate.

 

Visual Studio About Dialog

 

XSLT Library Project

IronXSLT adds "XSLT Library" to the list of Visual Studio project types:


XSLT Library Project Properties

XSLT Library project allows to compile XSLT stylesheets into DLL. Each XSLT stylesheets becomes a class in the DLL and can be loaded and run later using standard XslCompiledTransform class. This way you can avoiding paying XSLT compilation tax at runtime.
XSLT Library project has the following properties:

  • Assembly Name - name of the resulting DLL
  • Default Namespace - target default namespace for compiled XSLT stylesheets

XSLT Library Project Properties

Build XSLT Library project as usual. If there are any compilation error, they will appear in the Error List window, again as usual.

 

Building XSLT Library Project

Enjoy!

May 15, 2007

Compiled XSLT decompiler?

I was reading Scott's post on Reflector Addins and had this idea... Now (well, not now but in the next .NET version - Orcas) that XSLT can be compiled into dll, it must be time to think about XSLT decompiler (and appropriate Reflector addin of course). I believe that must be ...

May 9, 2007

Couple teasers on my next toy

To be continued... ...

Free Refactor! for ASP.NET 2.0

Mark Miller announced Refactor! for ASP.NET v2.2 - free code refactoring tool from Developer Express. It includes 29 refactorings, including 10 ASP.NET related ones and is available for Visual Studio 2005 and Visual Studio Orcas Beta1. ASP.NET refactorings include: Add Validator Extract ContentPlaceHolder Extract ContentPlaceHolder (and create master page) Extract Style (Class) Extract Style ...

May 6, 2007

AdSense Watch Toolbar 1.0.1 - supports Google Accounts

 Google has started to migrate AdSense users to Google Accounts and it broke my little  AdSense Watch Toolbar - it couldn't login into account. For the first time and only because I haven't coded login procedure flexible enough. The change was oneliner - just different URL. Anyway, I uploaded AdSense Watch ...

May 1, 2007

Where is eBook 2.0 aka AJAXy PDF?

Do you realize that PDF documents can contain embedded Javascript code? Yes, it can. Adobe Acrobat Reader supports Javascript 1.5 extended by Adobe and it allows such sweet things as dynamic PDF content and appearance manipulation, database-driven PDF documents, multimedia, layers, 3D, Flash in PDF (!) etc. We've seen fancy PDF ...