A couple of problems I thought about on the drive home, re: the code above;
If the variable doesn't already exist it will (should) error. So, for instance, in a drawing that has already been worked on and was saved while in Paper space. The LTSCALE, in that instance, would be 1 and the variable would not be set when switching between Paper space and Model.
The drawing in the example above, the overall "master" LTSCALE would be lost when the drawing was saved. Not any different than the way it is now, but adding the functionality to remember the "master" LTSCALE would be sweet.
I need to dig up that routine I've got from years ago which applied xdata to a zero-length line to store that kind of stuff.
I should also probably split this topic off on it's own.
By the way, Jürg, that functionality you put in there to change the crosshair color, it's one of those things that, once you see it, you wonder why Autodesk didn't include that in AutoCAD in the first place.