Browse Prior Art Database

Incrementally Imbedded Messages in an Edit View

IP.com Disclosure Number: IPCOM000116853D
Original Publication Date: 1995-Nov-01
Included in the Prior Art Database: 2005-Mar-31
Document File: 4 page(s) / 142K

Publishing Venue

IBM

Related People

Baker, BR: AUTHOR [+2]

Abstract

Some editors provide language-specific functionality to help users write programs. A typical function is incremental verification, such as incremental syntax checking, which will periodically display messages warning the user of syntax errors. A mechanism for incrementally imbedded messages is presented here. It applies to an editor live parser and its incremental analysis functions and tools, which generate error messages or informational text, such as: lexical, syntactical, and program verification warnings and errors, coding suggestions, spelling, grammar, and style warnings and suggestions.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 38% of the total text.

Incrementally Imbedded Messages in an Edit View

      Some editors provide language-specific functionality to help
users write programs.  A typical function is incremental
verification,
such as incremental syntax checking, which will periodically display
messages warning the user of syntax errors.  A mechanism for
incrementally imbedded messages is presented here.  It applies to an
editor live parser and its incremental analysis functions and tools,
which generate error messages or informational text, such as:
lexical,
syntactical, and program verification warnings and errors, coding
suggestions, spelling, grammar, and style warnings and suggestions.

      This method processes and presents those messages generated and
destroyed interactively during an edit session, as opposed to e.g.,
batch compile errors.  It imbeds the messages into the original text
displayed in the edit view without the messages becoming part of the
actual text being edited, and distinguished visually from it, in the
proximity of the affected text, and in a manner that provides good
visual feedback on the results of the verifications carried out.  It
lets the user navigate and manipulate the messages easily and
intuitively, more so than a separate error list or monitor window.

      A live-parsing editor has a parser-trigger mechanism that
causes a language parser to be automatically invoked when the user
changes a line in the file, and then moves the cursor off the changed
line.  This allows the parser to examine the changed text and perform
incremental functions such as token highlighting and syntax checking.
It checks the area surrounding the changed text to establish the
appropriate range to reparse.  It then removes all of the messages in
this range that belong to the error class(es) it handles, reparses
the said range of text, and inserts any new messages as necessary.
Other incremental tools invoked by the parser operate similarly for
the error classes that apply to them.

      Messages are inserted into the edit view as special (SHOW
attribute) lines, that are protected from editing and are not saved
with the file.  A message line is colored differently so that it is
easily visible in the file.  The severity of the message is also
reflected in its color.  Each message refers to the text immediately
above.  To enhance its visibility, the parser may also highlight the
text in error.  After the user has corrected the error, the message
is removed once the parser is triggered.  During the course of
editing a program the file will often be in a temporarily incorrect
state; the message reporting mechanism is not too intrusive and does
not interfere with the editing.

      The messages are added to the edit session as edit buffer
elements, so the base editor features are available to enhance
usability.  The messages are assigned an editor class of MESSAGE,
which allows navigation between the messages through the editor
commands NEX...