Thu Jul  1 20:45:32 1999  Norbert Nemec  <nobbi@gnu.org>

	* Did some editing for the license transition. The files here are 
	under GPL now.
	
Mon Jun  3 16:54:41 1996  Kevin K. Lewis  <kkl>

	* sather.el (sather-language-version): Now uses symbols like
 	`sather-1.1', `sather-1.0', etc, instead of the float values that
 	didn't evaluate correctly on SPARCs.
	(sather-add-highlighting): Now supports several highlighting
 	levels.
	(sather-add-highlighting): Now sets `font-lock-defaults' so that
 	GNU Emacs will use sather-mode's patterns (stupid change in
 	19.31).
	(sather-header): Now a `1.1' header is inserted to identify Sather
	1.1 modules.
	(sather-comment-fill-break-regexp): Now defaults to `nil', like I
	originally intended.

Tue May 28 06:20:22 1996  Kevin K. Lewis  <kkl>

	* sample.emacs: Now built-in faces are the same face as types.
	Also added a default value for `sather-comment-fill-break-regexp'
	to support Ben's new comment style.

	* sather.el (sather-comment-prefix): Added
	`sather-comment-fill-across-blanks', which allows blank comments
	to be absorbed in comment filling.  Also added
	`sather-comment-fill-break-regexp', which defines a comment leader
	that breaks comments and prevents filling.

Tue May 28 06:19:01 1996  Kevin K. Lewis  <kkl>

	* sather.el (sather-build-non-nil-face-list): Now checks for a
	`nil' face variable, and a valid face with `facep'.

Mon May 27 16:09:06 1996  Kevin K. Lewis  <kkl>

	* sather-mode.texinfo (Inserting Comments): Added the definitions
	of `sather-comment-fill-across-blanks' and
	`sather-comment-fill-break-regexp'.

Mon May 13 15:55:36 1996  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added `immutable' to `sather-class-face-regexp',
	`sather-keyword-face-regexp', and `sather-class-regexp', and in
	the code of `sather-new-class'.  However, `value' is still
	supported.
	
	* `sather-language-version' now defaults to `1.1'.

Thu Feb 29 18:33:10 1996  Kevin K. Lewis  <kkl>

	* sather.el (sather-comment-prefix): Now empty comment lines
	separate comment blocks (so filling does not cross these
	boundaries).

Sat Feb 24 14:42:15 1996  Kevin K. Lewis  <kkl>

	* sather.el (sather-mode-map): Now the bug report keys are `C-c
	C-r c' and `C-c C-r m' because they were clashing with the binding
	for `sather-backward-class'.

Mon Feb 12 16:30:20 1996  Kevin K. Lewis  <kkl>

	* sather-lib.el: Fixed the `search-string' call in
	`sather-po-goto-location'.  It needed a `nil' before the final `t'
	parameter.

Sat Feb 10 07:48:09 1996  Kevin K. Lewis  <kkl>

	* sample.emacs: Changed some of the colors and attributes of some
	font-lock stuff.

	* sather-lib.el: Added `sather-po-goto-location' which parses the
	output of the `-PO' flag from the Sather Compiler, and moves to
	that buffer:location.  Contributed by Ben Gomes.

	* sather.el: Modified the highlighting of `attr's, `shared's, and
	`include's.  Now, instead of highlighting the keywords, the
	variables or types are highlighted.  It doesn't work perfectly,
	but it's pretty good.  Contributed by Ben Gomes.

Mon Jan 22 13:24:10 1996  Kevin K. Lewis  <kkl>

	* sather.el: Added `sather-describe-mode', which calls
	`describe-mode' on `sather-mode'.  This went into the "Sather"
	menu under "Documentation".

Sat Jan 20 18:32:56 1996  Kevin K. Lewis  <kkl>

	* sather-module.el:

	* Split `sather-module-file-name-face-regexp' into two variables:
	`sather-module-module-file-name-face-regexp', for highlighting
	module files, and `sather-module-sather-file-name-face-regexp',
	for highlighting Sather program files.

	* Added keymap for `sather-module-mode-submit-bug-report', `C-c
	C-b m'.

	* Added keymap for `recompile', `C-c C-r'.

	* sather-mode.texinfo:  Added section on `sather-module-mode'.

Sat Dec 30 13:57:04 1995  Kevin K. Lewis  <kkl>

	* sather-module.el (sather-module-file-name-face-regexp): Fixed so
 	that the `.' was escaped with two `\'s instead of one.

Thu Dec 14 21:06:14 1995  Kevin K. Lewis  <kkl>

	* sather-module.el: First release of a mode to handle Sather
 	module files.

	* sample.emacs: No longer requires `sather' and `sather-lib' (this
 	was causing a bug with `sather-site' because it used
 	`user-mail-address', which was only evaluated after init files,
 	but was called through `sample.emacs' from peoples init files).
  	Also added autoloading for pSather files and module files for the
 	new Sather Module mode.

	* sather.el: Fixed the syntax entry for comments.

Sat Nov 18 06:00:50 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Fixed `sather-routine-regexp' so that it would match single
	lined routines.  Strange I didn't notice this before.

	* Added support for Emacs Abbrev tables.  I didn't define any.
	Maybe soon.

	* Added `sather-forward/backward-class/routine', with keys.

Sat Nov 11 08:15:21 1995  Kevin K. Lewis  <kkl>

	* sather.el (sather-mode-map): Added "\C-c\C-r" binding for
 	`recompile'.

Tue Oct 24 18:07:50 1995  Kevin K. Lewis  <kkl>

	* sather-mode.texinfo:

	* Added a chapter on "Running Compiled Programs".

	* Added further explanations on setting up font-lock support.

	* Fixed some RCS tag problems (boy, that's a pain!).

	* sather.el:

	* Removed most of the documentation in the header comment.

	* Replaced `sather-compile-now' with `recompile', because it's now
	standard in XEmacs.

	* Fixed the `defun' pattern in the hl319 support.

	* Fixed a use of `sather-language-version' in `sather-new-class'.
  	It was still treating it as an integer, when it's now a symbol.

	* Added some comments.

	* sample.emacs: Added font-lock faces for dark backgrounds, and
	used `sather-highlight-background-mode' to condition their use.

Mon Oct 23 19:35:51 1995  Kevin K. Lewis  <kkl>

	* sather-mode.texinfo: Added to version control.

	* sample.emacs: Added to version control.

	* README: Added to version control.

	* sather.el:

	* Changed `sather-routine-face-regexp' so that it now highlights
	routines even in abstract types.  However, this required it
	depending on routines being indented 3, 4, or 5 spaces.  The doc
	string for `sather-indent' now recommends these settings.

	* Changed `sather-constant-value-face-regexp' no longer includes
 	`#' in its pattern, because that's not really a constant (and it
 	clashed with some of the other new faces).

	* Changed `sather-class-regexp' so that it no longer finds classes
	that don't start in the first column (for simplicity).

	* Added a "Run Program" menu entry for consistency.

	* Added `font-lock-class-face' for highlighting the opening clause
	of class definitions.

	* Added `sather-build-non-nil-face-list' to remove `nil'ed faces
 	from `sather-font-lock-keywords' in an attempt to speedup
 	highlighting.

	* Added the new data modifier patterns to the hl319 support.

	* Removed the ``overwrite'' flag from all of the patterns, because
	everything should be ordered nicely now.

	* Broke up the RCS tags onto multiple lines so that CVS wouldn't
 	mistake them for the real thing.

	* Simplified the main conditional in `sather-comment-indent'.

Sun Oct 15 15:14:57 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added specific faces for `private', `attr', `shared', and
 	`include' keywords.

	* Rearranged the patterns for `font-lock-keywords' so that the new
	patterns would have better effect.

	* Optimized `sather-comment-indent' because design regions were
	taking entirely too long.

	* Changes for `sather-in-design-region-p', to make it faster, and
	actually work most of the time.

	* Replaced calls of `beginning-of-buffer' with `(goto-char
 	(point-min))'.

	* Added `sather-hide-comments' and `sather-show-comments'.

Wed Oct 11 20:04:16 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added the variable, `sather-indent-design-comments-correctly'.
	If non-`nil', sather-mode will indent comments in the design
	region by `sather-indent', relative to the surrounding block.

	* Changed `sather-language-version' to hold a symbol, instead of
	an integer.

	* Removed a strange `p'.

	* Discovered what "... that weird place" was.  It's not weird
 	anymore.

	* Fixed `sather-routine-is-p', so that it's no longer fooled by
	comments and quoted strings.

	* Fixed `sather-in-design-region-p' so that it will always? work.
	Unfortunately, it's also always slow.

Fri Oct  6 20:14:57 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Removed a sub-expression from `sather-routine-face-regexp' so it
	wouldn't highlight the `private' keyword.  This also involved
	changing the sub-expression number in the font-lock list to 2.

	* Added `sather-in-design-region-p' to test for point within a
	Sather class or routine design region.  This was so that design
	comments could be indented correctly.

	* Changed the `re-search-forward' to `search-forward' in
	`sather-in-quoted-string-p'.

Sat Sep 30 19:45:00 1995  Kevin K. Lewis  <kkl>

	* sather.el: Fixed `sather-starts-with-end-p' so that it would
 	only match `end' followed by a `;', the end of the line, or
 	whitespace.

Mon Sep 11 18:53:38 1995  Kevin K. Lewis  <kkl>

	* sather-lib.el: Added code from Mark Bolstad as
 	`sather-make-interface-document', which creates a buffer
 	containing the interfaces of the files within a class.

Sat Sep  9 13:19:09 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added `sather-insert-file-header-with-class-stub'.

	* Added `sather-language-version'.

	* Changed `sather-new-class' to depend on
 	`sather-insert-file-header-with-class-stub' and
 	`sather-language-version' so that it creates class stubs in the
 	desired fashion.

	* Changed `sather-new-abstract-class' to depend on
 	`sather-language-version'.

Fri Aug 25 15:58:55 1995  Kevin K. Lewis  <kkl>

	* sather.el: Fixed `sather-continued-line-p' so that it wouldn't
	count `;'s inside quoted strings or comments.

Mon Aug 21 20:13:39 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added more keywords for Sather 1.1.

	* Fixed a font-lock support bug.

Thu Aug 17 18:08:25 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Made some documentation changes.

	* Fixed `sather-class-regexp' for external classes.

	* Fixed `sather-error-regexp' so it wouldn't match across lines.

	* Added some information to the doc-string in `sather-mode'.

	* Added some intelligence to `sather-new-class'.

	* Added constants for the sub-expressions for the various regular
 	expressions so I wouldn't have to remember and recount what
 	sub-expression was desired.  It also reminds me to change the
 	value when the regexp changes (and not forget to change it in some
 	places).

	* sather-lib.el:

	* Added some document creation functions from Mark Bolstad.

	* Changed the name of function calls to correspond with the
	changes in `sather.el'.

	* Changed the name of `sather-hide-region' to
	`sather-hide-active-region', and `sather-show-region' to
	`sather-show-active-region' to avoid name clashes.

Wed Aug 16 16:24:20 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added the `inout', `out', and `once' keywords to
 	`sather-keyword-face-regexp'.

	* Added the language identifier to the `external' match in
 	`sather-class-regexp'.

	* Used the predefined `*-face-regexp's for the `hilit19' patterns.

	* Fixed the list structure for `sather-font-lock-keywords' so that
	Emacs versions less than 19.29 could read it.

Mon Aug 14 16:00:09 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added `(> emacs-minor-version 28)' to the condition for
 	appending the Sather-specific font-lock keywords for font-lock
 	highlighting.

Thu Aug 10 19:18:06 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Fixed the doc string for `sather-continued-line-indent'.

	* Changed the names of the regexps for the highlight patterns.

	* Changed the `class' finding regexps to constants.

	* Changed the key definition for `sather-comment' so XEmacs would
	understand it.

	* Conditioned the key definition for `sather-mouse-hide-something'
	because XEmacs can't handle the function the way it's defined.

	* Added variable definitions for the additional font-lock faces
 	used by `sather-mode'.

	* Fixed font-lock for XEmacs (I broke it a few revs ago).

Sun Jul 16 19:38:27 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added `sather-mouse-hide-something' and bound it to S-mouse-2.

	* Added some menu entries for quick-reference to the Sather
	manual, and the Sather Eclectic Tutorial.

	* Removed the routine `end' unindent stuff.

	* Added support for some pSather constructs, including `fork',
	`lock', `par', `parloop', and the `do' construct.

Wed Jul  5 18:21:13 1995  Kevin K. Lewis  <kkl>

	* sather-lib.el (sather-server-buffer-undone): New function to
	release buffers from the Emacs server.  Experimental version.

	* sather.el:

	* Now all user options are `defvar'ed, and other variables are
 	`defconst'ed.

	* Fix for `s-in-sexp-p' so that it works with hard tabs.

Tue Jun 27 16:05:56 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* More font-lock fixes.

	* Change for comment indentation.  Now, comments that are in the
 	first column stay there.  Also, comments that follow a class `end'
 	(ie, are outside of any class) are now indented to the first
 	column.

	* More fixes for `sather-site'.  Getting kind of kludgey.
	
Wed Jun 21 16:08:07 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Fix for `sather-font-lock-keywords' craziness.  Still not sure
	if I have it right.

	* Added some kludges to the definition of `sather-site'.

	* Fix for indentation of empty lines.  Now uses new form,
	`s-in-sexp-p' to indent argument lists and other parenthetical
	groupings according to the inner-most s-expression.

	* Made some regexp fixes to `s-continued-line-p'.

Sun Jun 11 06:55:38 1995  Kevin K. Lewis  <kkl>

	* sather-lib.el (sather-create-stubs): New function to create
	routine stubs from an abstract class (or similar code).

	* sather.el: `site-init.el' should have been `default.el'.

Sat Jun 10 18:18:14 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Fixed a comment indent mis-feature that kept comments from
	indenting correctly around pre and post conditions.

	* Added Mark Bolstad's note to XEmacs users.  Adjusted the new
	`easymenu'-style menus.

Sun Jun  4 14:20:22 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Incorporated changes to support XEmacs by Mark Bolstad.  The
	constant `sather-xemacs' is non-nil if sather-mode is running in
	XEmacs.  Converted to the `easymenu.el' package.  Added XEmacs
	keymaps.  Added some intelligence to `sather-site', and made
	`sather-site', `sather-short-copyright', and
	`sather-long-copyright' variables instead of constants (to
	facilitate site-level assignments).  The "Compile Now!" menu entry
	is now bound to the `recompile' function.  Added an "Options" menu
	entry.  Various and sundry other improvements.

	* Moved some more doc-strings to comments.

Sun Apr 30 19:57:52 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Added `sather-topic-lookup', to use with the info version of the
	Sather Specification, for on-line language help.  Bound to C-c
	C-l.  Names subject to change.

Sun Apr 23 08:11:56 1995  Kevin K. Lewis  <kkl>

	* sather.el: 

	* Fixed the menu separator so that it actually shows up.

Sat Apr 22 12:11:34 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* sather-mode now only sets `sather-font-lock-keywords' if it's
	not already set.

	* Removed the `eval-when-compile' for font-lock because it was
	screwing up some byte-compiles from batch.

	* Added checks to `s-continued-line-p' to make sure keywords
	found weren't in comments or quoted strings.

Sat Apr 15 18:01:15 1995  Kevin K. Lewis  <kkl>

	* sather.el: 

	* Some header documentation, and doc-string changes.

Wed Apr 12 20:14:22 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* Fixed some spelling errors in comments.

	* In `s-find-matching-end', `me' is now set to `(match-end 1)'
	instead of `(match-end 0)' to leave more room for finding the next
	expression.

Wed Apr  5 18:34:10 1995  Kevin K. Lewis  <kkl>

	* sather.el:

	* `sather-toggle-hungry-state' was spelled wrong.

	* Fixed doc-string for `sather-toggle-newline-state'.

Tue Apr  4 18:30:34 1995  Kevin K. Lewis  <kkl>

	* sather.el: 

	* More header documentation modifications.

	* Needed a `save-excursion' around the prefix indent check in
	`sather-return'.

	* Added an `elsif' in the `looking-at' call in
	`s-continued-line-p' so it wasn't considered a non-terminating
	clause.

Sun Apr  2 16:03:08 1995  Kevin K. Lewis  <kkl>

	* sather.el: 

	* More hacks to the routine highlighting patterns so that the
	correct things are highlighted.

	* Made the order of the mode feature list alphabetical.

Thu Mar 30 09:47:39 1995  Kevin K. Lewis  <kkl>

	* sather.el: 

	* Added better support for font-lock-mode.

	* Improved the hl319 pattern for highlighting routines.

Sun Mar 19 16:30:34 1995  Kevin K. Lewis  <kkl>

	* sather.el: 

	* Removed a couple of old, unused forms.

	* Refined some of the header documentation.

	* Added the `sather-hilit-type' variable so reports could
	communicate the type of highlighting in use.

	* Changed some of the function doc strings into comments so that
	sather-mode uses less space.

	* Added a couple more status messages that display when hiding
	things.

	* Rewrote `sather-hide-routines'.

	* Reorganized the physical location of some of the functions in
	the file for logical grouping.

Sat Mar 11 14:33:51 1995  Kevin K. Lewis  <kkl>

	* sather-lib.el:

	* Moved the `sexp' stuff to sather.el.

	* Changed the header comments to be like sather.el, and added some
	info on how to use sather-lib.el.

	* Commented out some of the tags stuff.

	* sather.el:

	* Changed a bunch of headers for more maintainability and
	readability.  Changed a bunch of the version control headers, as
	well, so that things would work better when submitting to ICSI.
	Also, got rid of the log entry, and went to this ChangeLog file.
	A copy of the log is at the end of this file.

	* Added a hungry delete key (by request).  Stole most of the stuff
	for this from cc-mode.

	* The hungry delete changes inspired me to add a minor feature
	list in the mode line, and toggle functions for turning them on
	and off.  Again, stole much of this from cc-mode.

	* Changed the highlight pattern for string literals.  Sather
	strings cannot cross lines, and the old pattern didn't know that.
	* Also added a highlight for one-line routines.

	* More adjustments to `sather-block-regexp' and
	`sather-routine-regexp', and to how they are used.  Many functions
	weren't using the match expressions correctly.

	* Fixed `sather-newline-prefix-indent' functionality so that it
	wouldn't leave icky trailing whitespace on "blank" lines.

	* Some adjustments to `s-continued-line-p', `s-ends-with-end-p',
	`s-find-matching-end', and `sather-hide-routines'.

	* Rewrote `s-in-quoted-string-p' because it was time it was
	working and useful.

	* Simplified `s-get-block-indent'.

	* Rewrote `sather-hide-current-routine'.  Should be simpler and
	faster.

	* By request, added some `sexp' type stuff.  `sather-indent-sexp'
	will allow you to indent an entire class, routine, loop, etc, by
	just executing it on the first line of the expression.  Seems to
	work okay.

---
The log that used to be in the sather.el source.

Revision 1.15  1995/02/24  01:38:38  kkl
Rewrote `s-in-quoted-string-p' because the old version didn't work,
and was obsolete, anyway.  Removed `s-short-version' because I found a
better way.

Revision 1.14  1995/02/23  01:33:16  kkl
Added hilighting for exceptions.  Fixed constant hilighting for hex
numbers.  Fixed string hilighting support.  Fixed font-lock stuff.
Added bug report menu and key defs, and automated (sort-of) compiler
bug report support.  Moved tags stuff and documentation stuff to
sather-lib.  Added `sather-newline-prefix-indent' variable that helps
indent things like `else' keywords.  Fixed a lot of the routine hiding
forms.  Added `s-short-version'.

Revision 1.13  1995/02/07  02:27:12  kkl
Added automated bug reporting for sather-mode.  Fixed a bug in
`s-continued-line-p' that resulted in an infinite loop when at the
beginning of the buffer.  Also, `s-continued-line-p' didn't handle
`when' clauses.  Fixed `s-ends-with-end/is-p' so that it's nil within
a comment.  Also escaped the RCS log headers used in Sather code
documentation.

Revision 1.12  1995/02/06  01:47:23  kkl
Added some more documentation for the hilighting support, and added
some support for font-lock mode.  Removed selective-display
conditional because the code seems stable.  Renamed references to
`feature' to read `routine'.  Rewrote `sather-which-class' to be more
friendly.

Revision 1.11  1995/01/18  02:37:42  kkl
Added some documentation for use of selective-display.  Changed a
couple of key definitions and some function names.  Hopefully fixed
code for hilighting with hilit19.  Fixed several of the class/feature
hiding functions, including a rewrite of `s-find-matching-end'.  Added
some experimental code for using etags to find classes, features and
member data (there may be a better way to do it; will investigate
before I release the modified version of etags).

Revision 1.10  1995/01/13  03:49:01  kkl
Added support for syntax hilighting with Stig's hl319 or hilit19
package.  Fixed a bug in `sather-hide-current-feature'.  More remain.

Revision 1.9  1995/01/11  02:37:25  kkl
Fixed `sather-error-regexp' for the new error format (v1.0.3).  Added
`sather-continued-line-indent' for broken statements.  Added status
display to `sather-hide-features' because it takes a long time.
Needed a `!' in `sather-feature-regexp' to match iters.  Comments now
indent a bit differently (may get in trouble for this).

Revision 1.8  1995/01/09  02:11:55  kkl
Modified the syntax table to conform to the Sather language (mostly
for comments).  Added variable definitions for `sather-compile' and
`sather-error-regexp'.

Revision 1.7  1995/01/05  23:44:36  kkl
Removed some useless code from `s-comment-prefix'.  Formatted comments
for use with `outline-minor-mode'.

Revision 1.6  1994/12/19  02:21:38  kkl
Fixed `sather-feature-regexp' so that it finds features that are
hidden (first line ends with `^M').  Also, `sather-show-features'
needed a `b-o-l' call after the search.

Revision 1.5  1994/11/20  04:36:38  kkl
Added forms to fill comment paragraphs.  Updated some of the form
documentation to account for my hacks.  Fixed `s-in-comment-p' to
check for the end of the line (should always be correct, now).
`sather-hide-current-feature' now checks `s-in-comment-p' when
searching.

Revision 1.4  1994/10/25  02:49:08  kkl
Changed the key bindings (they were C-c followed by a character).
Those keys should be reserved for users.  Changed them to C-c followed
by another control character (which is reserved for major modes).

Revision 1.3  1994/10/23  04:06:23  kkl
Found a bug in s-in-comment-p.  It didn't work at the end of a line,
so I removed the (and...) expression.  This fixed my problem with
class/feature hiding, so I decided it could be enabled by default.
Also changed the (defconst...) of some variables to (defvar...)
because they're not really user options.

Revision 1.2  1994/10/23  00:25:21  kkl
The first addition of a bunch of hacks.  Added the variables
`sather-auto-indent', and `sather-auto-newline', and more
`sather-*-regexp' variables.  When indenting, white space is only
deleted if the current indentation will be changed.  Added a bunch of
code to support class/feature hiding, but disabled it because it
doesn't work quite right.  Added menus to support Emacs 19.  Did a
bunch of other stuff for no good reason.

Revision 1.1  1994/10/23  00:11:29  kkl
Initial revision
