Revision 4 as of 2005-08-02 12:21:10

Clear message


The Linguistic User Interface (LUI) is an on-going project to build a visualization tool for the most common object types in constraint-based grammars, i.e. trees, feature structures, MRSs, charts, et al. While the LKB comes with built-in browsers for all of these, the current use of the CLIM (Common-Lisp Interface Manager) toolkit in the LKB severely limits portability and ease of use (and programmatic extension). Thus, portability and royalty-free delivery are among the primary motivations for the LUI project; at the same time, LUI attempts to `conservatively' improve over the existing LKB tools, for example in terms of layout options, scalability, user parameterization, display effiency. While preserving all existing LKB display functionality, LUI adds some new facilities, including drag-and-drop interactive unification, display of, and navigation through multiple feature structure incompatibilities, and creation of screen dumps in (for now) PostScript or !LaTeX formats.

LUI is an application of the [ YZ Windows] API, developed mainly by WoodleyPackard, who is also the main LUI developer (with LKB-side support by StephanOepen).

Keyboard Conventions




Any browser


Close this window

Any browser


Close all windows of this type

Any browser


Save PostScript to /tmp/

Any browser


Save LaTeX to /tmp/

AVM browser


Next Unification Failure

AVM browser


Previous Unification Failure

Mouse Conventions


Left Click

Right Click or Control-Click

Mini-tree Background

Expand Tree

Menu (same as top tree-node)

Tree Node

Feature Structure


Chart Node

Feature Structure


AVM Node

Expand / Collapse


Existing LUI Browsers

LUI currently provides browsers for four types of linguistic structures: trees, AVMs, MRSs, and parse charts.

Tree Browsing

AVM and MRS browsing

Chart Browsing

Obtaining and Running LUI

Recent LUI binaries for Linux-x86 and Mac OS X are part of the LKB CVS repository. To enable LUI during an LKB session, run the Lisp command (lui-initialize), and to disable LUI, run (lui-shutdown).

LUI can also run in remote mode, communicating with an LKB host on a different machine. First, the LKB host must be told to accept connections. This is accomplished by the command (lui-initialize :port 4001). Then, LUI must be launched with a special commandline option. The executable lives in the "bin/linux.x86.32/yzlui" location inside the LKB directory for Linux, and the "bin/macos.ppc.32/" location for Mac OS X. A remote connection is established by running $YZLUI -c remote_host:4001 (or of course any other port which you choose to use).

Unexpected behavior may comprise a bug. LUI maintains a log file describing your session in the file /tmp/yzlui.debug.username.

Ongoing Development

Screen Shots

(The DELPH-IN infrastructure is hosted at the University of Oslo)