About Business Career Interests Fun Links

Joe's Code Printer Page


Code Printer Description

    The CodePrinter is used for printing out a pretty version of your code with comments. You can selectively pick any classes, methods, and class definitions and print to either a Latex or RTF file. Extra support is provided on the UNIX environment for creating dvi and postscript files along with the ability to send output to a printer. This is based upon a version of Latex and RTF Streams developed by Carl McConnell. I worked with Jeff Barcalow on the early development. There is code for both VisualWorks 2.5.x and for VisualWorks 3.0. VisualWorks 2.5.x needs to have John Brant and Don Roberts Refactory Browser installed before you install the code printer as we used their EnvironmentsEditor to assist us with selectively choosing what we wanted to print. I am working on an html extension, an Envyised version, and an interface for VisualAge that will hopefully be done by June '98. Please email me any comments, suggestions, or bugs as I am very interested in keeping the application up-to-date.

Code Printer Installation

    To install, unzip the codeprinter.zip file into a directory. If you are installing for vw3.0, simply load the printer.pcl file. If you are installing for vw2.5.x, file in the install.st file after you have loaded John Brant's Refactory Browser. John's browser can be found at: http://st-www.cs.uiuc.edu/~brant/Refactory. After installing, execute 'CodeSelector open' to start using the tool. A LaTeX icon is put on the VisualLauncher for VW 3.0 which also starts the applications.

The Code

    The code can be found here.

    Attached is a set of fixes for the above code printer code from Pete Hatch. The RefactoryBrowser evolved and needs these files as RestrictedEnvironment doesn't exist for the VW3.0 versions (or in the 5i version). Another change was a self send of #selectedVisualBlock: in DoubleEnvironmentEditor. This should be #createSelectedVisualBlockFrom:. The following files should work as patches for 3.0 and 5.i.

Joseph Yoder Home   Webmaster