Navigation

technorati



Syndicate content

Public Class: ICool

Syndicate content
The life story of some guy who eats software engineering for breakfast.
Updated: 8 hours 42 min ago

I got in a "jam"...

Wed, 2008-11-19 12:02
Categories: Member Blogs

PalmPilot Jr

Fri, 2008-11-07 22:31
Categories: Member Blogs

Blogging resumes (and other news)

Fri, 2008-11-07 22:31
Categories: Member Blogs

Your code is suboptimal!

Fri, 2008-11-07 22:31
Categories: Member Blogs

Please turn to page F%

Fri, 2008-11-07 22:31
Categories: Member Blogs

They're more like guidelines...

Fri, 2008-11-07 22:31
Categories: Member Blogs

My name

Fri, 2008-11-07 22:31
Categories: Member Blogs

Unit tests can be fun!

Fri, 2008-11-07 22:31
Categories: Member Blogs

Backups of Subversion repositories

Fri, 2008-11-07 22:31
Categories: Member Blogs

A new oxymoron: cybersurf reliability

Fri, 2008-11-07 22:31
Categories: Member Blogs

That was easy!

Fri, 2008-11-07 22:31
Categories: Member Blogs

Say what?

Fri, 2008-11-07 22:31
Categories: Member Blogs

What are my choices for "no"?

Fri, 2008-11-07 22:31
Categories: Member Blogs

Do what Technorati tells you to...

Fri, 2008-11-07 22:31
Categories: Member Blogs

Do what the interweb tells you to

Fri, 2008-11-07 22:31
Categories: Member Blogs

$how me the Shatner!

Fri, 2008-11-07 22:31
Categories: Member Blogs

Hacking the Microsoft Natural Ergonomic Keyboard 4000, redux

Fri, 2008-11-07 22:31
Earlier I wrote about hacking IntelliType's commands.xml file to enable the use of the "Zoom slider" as a "Scroll slider". Having recently repaved my computer, I found myself installing the latest version of Microsoft IntelliType Pro (version 6.02, a.k.a. 6.02.303.0) and trying to apply the patch I posted earlier:


C:\Program Files\Microsoft IntelliType Pro>patch -p0 patching file `commands.xml'
Hunk #1 FAILED at 1606.
Hunk #2 FAILED at 1694.
Hunk #3 FAILED at 2122.
Hunk #4 FAILED at 2134.
Hunk #5 FAILED at 2152.
Hunk #6 FAILED at 2182.
patch unexpectedly ends in middle of line
Hunk #7 FAILED at 2224.
7 out of 7 hunks FAILED -- saving rejects to commands.xml.rej


B'oh! Err... I mean: D'oh! Ok, time for plan B: Zoom2Scroll.xsl


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:output method="xml" encoding="UTF-8" indent="yes" />

<!-- Pass-through (identity transform) template -->
<xsl:template match="* | @* | node()">
<xsl:copy>
<xsl:apply-templates select="* | @* | node()" />
</xsl:copy>
</xsl:template>

<xsl:template match="C319">
<C319 Type="6" Activator="ScrollUp" />
</xsl:template>

<xsl:template match="C320">
<C320 Type="6" Activator="ScrollDown" />
</xsl:template>

</xsl:stylesheet>


There. A quick trip to the command-line with my trusty xsl.exe:


C:\Program Files\Microsoft IntelliType Pro>xsl commands.old Zoom2Scroll.xsl commands.xml

C:\Program Files\Microsoft IntelliType Pro>


...and killing the IType.exe process, then re-launching that EXE again... it works! In your face, Larry Wall!

Oh, right. This post wouldn't be complete without the source code to xsl.exe. It's a JScript.NET program:


import System.Xml;
import System.Xml.Schema;

var src : String = System.Environment.GetCommandLineArgs()[1];

var transformer : System.Xml.Xsl.XslTransform = new System.Xml.Xsl.XslTransform ( );
var stylesheet : String = System.Environment.GetCommandLineArgs()[2];
transformer.Load ( stylesheet );

transformer.Transform ( src, System.Environment.GetCommandLineArgs()[3], null );


...which you can compile as follows:


C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322>jsc /nologo xsl.jsn


Thanks go out to the folks at Cute Overload for providing me with a [semi-]random web page to test the [new] scrolling capabilities of my "slider" in Internet Explorer.
Categories: Member Blogs

Announcing the web-screen-saver project

Wed, 2008-10-29 12:05
Categories: Member Blogs