Peepeye Browser

Copyright © 2006 Stoney Jackson, <hjackson@wnec.edu>

Distributed under the GPL

 

See: http://peephole.cs.ucdavis.edu/

 

Peepeye is not the evil twin brother of Popeye, but is the merger of peephole and fisheye views. The Peepeye Browser is a Java code browser that provides customizable fisheye views in an auto-formatting peephole. It was created to demonstrate some of the capabilities and uses of the Peephole Framework. Peepeye needs JavaML, also available from the website above.

Installing Peepeye

Add full path to ppp/bin to your CLASSPATH.

Running Peepeye

Before running Peepeye, run JavaML on the files you want to brows.

 

            $ javaml /some/project/*.java

 

Then change to the root of the directory tree you want to brows, and run peepeye.

 

            $ cd /some/project

            $ java peepeye.Main

Using Peepeye

Use the tree view on the left to navigate the directory tree to find a file your interested in, and then to drill into that file’s abstract syntax tree. One an element of a file is selected, a peephole will be printed in the peephole view. The selected element is the focus for the purpose of printing the peephole and for measuring fisheye distances. The focus will be shown near the top of the peephole. Select a different element to see a different part of the file.

 

The code in the peephole is formatted to fit the width of the peephole. As you change the width of the window, the code will be reformatted to make the most of the available space.

 

At the bottom is the fisheye control panel. Use this to customize your view. Check the “Enable fisheye” checkbox to turn on the fisheye engine and to gain you access to the other controls. Set the severity of the fisheye view with the “Degree” slider. The higher the degree is set, the more code that will be elided, and the smaller code that is far from the focus. Check “Enable elision” to turn on elision style fisheye. Check “Enable multiple font sizes” and then set the minimum and maximum sizes to turn on and configure a multiple-font-size fisheye.

 

peepeye screen shot