Tycho is an object-oriented syntax manager with
an underlying heterogeneous technical rationale.
It provides a number of editors and graphical widgets
in an extensible, reusable framework.
The editors for textual syntaxes are modeled after
emacs in
the sense the emacs key bindings are used when possible.
Editors for visual syntaxes will be more diverse.
The system documentation is integrated, using a hypertext
system compatible with the worldwide web.
Tycho has been designed primarily for use with the
Ptolemy system, a heterogeneous design environment
from U.C. Berkeley, but it is also useful on its own.
Version 0.1.1 is the second public release of Tycho as a stand-alone system.
It runs under the vanilla Itcl 2.1 with no changes to the executable.
(Note that Ptolemy0.6 was shipped with Itcl2.0. Tycho0.1.1 will not
work with Itcl2.0)
Tycho0.1.1 includes both textual and graphical editors, though the
textual editors are more developed.
Tycho0.1.1 can be obtained from
http://ptolemy.eecs.berkeley.edu/tycho/Tycho.html
Here is a summary of the capabilities:
Tycho Kernel
-
A family of dialog windows, including basic message windows
(both modal and non-modal), yes-no queries, queries for text entry,
and queries with radio buttons.
-
A list browser and derived file browser and index browser.
These browsers support pattern-based search.
-
An Emacs-like text editing widget that significantly extends
the capabilities of the Tk text widget, including a sophisticated
search capability, undo/redo, text filling, and carefully designed menus
and key bindings.
-
A shell-like console for interacting with Tcl with a thorough
history mechanism fashioned after the Unix tcsh.
-
An integrated documentation system based on HTML with automatic
index generation and an index search mechanism.
-
Support for hyperlinks from any Tycho editor or display to any other Tycho
editor or display.
-
A context-sensitive spelling checker (for example, it checks the spelling
only in comments when editing code).
-
Interfaces to SCCS and RCS revision control systems.
-
A font management system that includes an interactive dialog for
selecting fonts.
-
A user preferences system.
-
A Glimpse index browser.
-
Error handling with a stack display.
-
Auto-save and crash recovery (although the crash recovery
will only work with modifications to the executable, currently
only available with the Ptolemy distribution).
-
Some elementary data structures: Stack, CircularList, Graph,
DirectedAcyclicGraph, Forest.
Textual Editors and Shells
In addition to the basic emacs-like text editor described above and
the Tcl shell, a number of additional editors and shells have been
designed.
The editors provide capabilities similar to those of emacs modes,
although the potential goes beyond what emacs can do because of
the future inclusion of graphical elements.
The editors and shells included in release 0.1.1 are:
- C and C++ editors. These color and fill comments and
handle indentation.
- HTML editor. This editor parses HTML commands, supports
hyperlinks, and provides a command to check the validity of
hyperlinks.
- HTML viewer. This viewer is based on Stephen Uhler's
html_library3.0, but has been tuned for performance. The HTML
viewer will start netscape if it is passed a non-local URL.
- Itcl and Tcl editors. These editors color and fill
comments, handle indentation, and color class, procedure, and
method names. They also support "evaluate" commands, where
either a selected region or the entire file can be evaluated.
- Makefile editor. This editor colors comments, variable
definitions, variable references, rules, and various
directives.
- Ptlang editor. This is an editor for designing blocks in
Ptolemy.
- Ptlang editor. This is an editor for designing universes in
Ptolemy.
- Java editor. This editor is new in 0.1.1. It includes a
menu choice that will run
appletviewer
.
- Esterel editor.
- Matlab and Mathematica consoles. These will only appear
if the appropriate Tcl extensions for interaction with Matlab
and Mathematica have been installed.
- CommandShell console. This tool allows the user to type
commands at their shell (sh, tcsh etc.). The CommandShell is
new in 0.1.1 is a prototype and has serious bugs.
Graphical Editors
- EditBubbleAndArc
- EditDAG - Directed Acyclic Graph Editor
- EditForest - Forest Editor (a forest is a collection of trees)
- EditPalette - Prototype of a Ptolemy Palette editor
- EditSTD - State Transition Diagram editor
- GanttView - Gantt Chart Viewer
- ProfileTcl - Tcl Profiler that uses the TclX profiler
A patch to make tclXProfiler.c Itcl aware is included.
- SlateView - Slate viewer
tydoc
- The Tycho documentation system
Tycho0.1.1 also includes tydoc
, a script that converts
itcl to html.
Changes between Tycho0.1 and Tycho0.1.1
- 0.1.1 has the following new functionality in the Tycho kernel:
- View/Displayer In this architecture, the Display always
provides the top-level window, the View provides a widget that
displays or edits data, and a Filter connects a view to the
underlying data structures.
- Popup menus
- Menubar
- Glimpse Index Browser
- Graphical Itcl Class browser
- Preferences
- Exec class which can be used to run remote programs like
make
- Print Dialog
- 0.1.1 includes Slate, an infrastructure for visual programming.
- 0.1.1 includes Graphical editors.
- The following text editors are new in 0.1.1:
- CommandShell - A prototype of a shell interface
- Java mode
- The HTML viewer has been tuned for performance.
- 0.1.1 has been modified to be less Unix-centric.
Tycho0.1.1 runs under NT, but not all features work underNT.
0.1.1 has been started up on the Mac, but the Itcl2.1 port
to the Mac is substantially incomplete.
- 0.1.1 can handle hierarchical index, so a key in an index can have more
than one hyperlink.
- 0.1.1 has more tests.
Backward compatiblity issues between 0.1 and 0.1.1
- 0.1.1 will not work under Itcl2.0, you must have Itcl2.1.
- 0.1.1 uses the View and Displayer classes to implement Tycho specific
mega-widgets. The
*Text
classes found in 0.1 have been removed.
- The Dismiss and the TychoWidget classes have been removed.
- TclConsole has been renamed TclShell.
Tycho Limitations and Bugs
Up to: Tycho Introduction -
Previous: Release Notes -
Next: Install Tycho -
Tycho Home Page
Copyright © 1996, The Regents of the University of California.
All rights reserved.
Last updated: 96/12/17,
comments to: tycho@eecs.berkeley.edu