-#| -*- Mode: Scheme; Package: (elisp buffers) -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Keeps its own notion of the "current" buffer because el:set-buffer must
-change it without affecting the mapping of buffers to windows.
-%call-interactively will set and clear it. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Emacs buffer ops
+;;; package: (elisp buffers)
+
+;;; These procedures use their own notion of the "current" buffer.
+;;; El:set-buffer must change it without affecting the mapping of
+;;; buffers to windows. %call-interactively will set and clear it.
\f
(define elisp-current-buffer false)
-#| -*- Mode: Scheme; Package: (elisp syntax-extensions) -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Special syntax to help define GNUemacs functions and variables, and
-deal with Emacs' implementation of optional arguments. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Scheme Syntax Extensions
+;;; package: (elisp syntax-extensions)
\f
(define elisp-syntax-table (make-syntax-table edwin-syntax-table))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Random things from Emacs Lisp files that haven't been implemented yet.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-Some convenient Edwin commands too. |#
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-(declare (usual-integrations))
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Emacs buffer ops
+;;; package: (elisp)
+
+;;; Random things from Emacs Lisp files that haven't been implemented yet.
+;;; Some convenient Edwin commands too.
\f
;;;; keyboard.c
-#| -*- Mode: Scheme; Package: (elisp reader) -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (c) 1993, 2011 Matthew Birkholz
+This file is part of MIT/GNU Scheme.
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-Implements parse-elisp-object, which takes a port. |#
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-(declare (usual-integrations))
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Emacs buffer ops
+;;; package: (elisp reader)
+
+;;; Implements parse-elisp-object, which takes a port.
\f
(define char-set/whitespace (ascii-range->char-set #o000 #o041))
-#| -*- Mode: Scheme; Package: (elisp subrs) -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Subrs are simple structures carrying an Emacs primitive's docstring,
-interactive spec (if any), the Scheme procedure implementing the
-primitive, and a note to the Emacs Lisp interpreter about whether
-arguments should be evaluated or not. The structure is wrapped in an
-apply hook to make the Subr callable from Edwin Scheme as well as Emacs
-Lisp. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Emacs primitives
+;;; package: (elisp subrs)
+
+;;; Subrs are simple structures carrying an Emacs primitive's
+;;; docstring, interactive spec (if any), the Scheme procedure
+;;; implementing the primitive, and a note to the Emacs Lisp
+;;; interpreter about whether arguments should be evaluated or not.
+;;; The structure is wrapped in an apply hook to make the Subr
+;;; callable from Edwin Scheme as well as Emacs Lisp.
\f
(define-structure (%subr
(conc-name %subr/)
-#| -*- Mode: Scheme; Package: (elisp symbols) -*-
-
-$Id: $
-
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
-
-Emacs Lisp symbols are implemented by an object that holds the
-dynamically-scoped value, the function, and the property list of the
-symbol. Operations on the object include getting and setting its
-value, getting and setting its default value, etc. An Emacs Lisp
-symbol usually has one global value; operations on it just access
-or modify a Scheme variable. An Emacs Lisp symbol can also take on
-buffer-specific values. When this happens, an Edwin editor variable
-with the same name is found or created; the operations of the Emacs
-Lisp symbol access or modify the buffer-specific value, default value,
-and other attributes of the Edwin editor variable.
-
-The operations of the Emacs Lisp symbol are implemented by procedures
-assigned to the fields of the symbol object. The global value, or
-editor variable, is assigned to Scheme variables closed over by these
-procedures.
-
-An Emacs Lisp symbol can also be given arbitrary procedures that
-implement the operations for getting and setting the symbol's value.
-These procedures can be used to get a value from an Edwin data
-structure and convert it to the type expected by Emacs.
-
-An Emacs Lisp symbol will find or create a similarly named Edwin
-editor variable when buffer-specific behavior is required by a call to
-`el:make-variable-buffer-local' or `el:make-local-variable'. An Edwin
-editor variable is also used when the symbol is declared to be a
-variable or constant by `el:defvar' or `el:defconst'. This allows the
-Emacs variable to be examined and set using the usual Edwin commands.
-Once an Emacs Lisp symbol arranges to use an Edwin variable, it always
-uses that variable. Even if the symbol is made unassigned (by
-`el:makunbound'), the Edwin variable continues to be used. Any
-buffer-local values of the variable are removed, and it is made no
-longer buffer-local. Thus, once it appears in the list of Edwin's
-editor variables, its value is kept consistent with the value of the
-Emacs symbol. |#
-
-(declare (usual-integrations))
+#| -*-Scheme-*-
+
+Copyright (C) 1993, 2011 Matthew Birkholz
+
+This file is part of MIT/GNU Scheme.
+
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Emacs Symbols
+;;; package: (elisp symbols)
+
+;;; Emacs Lisp symbols are implemented by an object that holds the
+;;; dynamically-scoped value, the function, and the property list of the
+;;; symbol. Operations on the object include getting and setting its
+;;; value, getting and setting its default value, etc. An Emacs Lisp
+;;; symbol usually has one global value; operations on it just access
+;;; or modify a Scheme variable. An Emacs Lisp symbol can also take on
+;;; buffer-specific values. When this happens, an Edwin editor variable
+;;; with the same name is found or created; the operations of the Emacs
+;;; Lisp symbol access or modify the buffer-specific value, default value,
+;;; and other attributes of the Edwin editor variable.
+;;;
+;;; The operations of the Emacs Lisp symbol are implemented by procedures
+;;; assigned to the fields of the symbol object. The global value, or
+;;; editor variable, is assigned to Scheme variables closed over by these
+;;; procedures.
+;;;
+;;; An Emacs Lisp symbol can also be given arbitrary procedures that
+;;; implement the operations for getting and setting the symbol's value.
+;;; These procedures can be used to get a value from an Edwin data
+;;; structure and convert it to the type expected by Emacs.
+;;;
+;;; An Emacs Lisp symbol will find or create a similarly named Edwin
+;;; editor variable when buffer-specific behavior is required by a call to
+;;; `el:make-variable-buffer-local' or `el:make-local-variable'. An Edwin
+;;; editor variable is also used when the symbol is declared to be a
+;;; variable or constant by `el:defvar' or `el:defconst'. This allows the
+;;; Emacs variable to be examined and set using the usual Edwin commands.
+;;; Once an Emacs Lisp symbol arranges to use an Edwin variable, it always
+;;; uses that variable. Even if the symbol is made unassigned (by
+;;; `el:makunbound'), the Edwin variable continues to be used. Any
+;;; buffer-local values of the variable are removed, and it is made no
+;;; longer buffer-local. Thus, once it appears in the list of Edwin's
+;;; editor variables, its value is kept consistent with the value of the
+;;; Emacs symbol.
\f
;; Bummer. I liked the verbose but TAGS-visible definitions like
;; (define-integrable symbol/name (record-accessor symbol-rt 'NAME))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Primitives for word-abbrev mode.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-Only a few trivial primitives, and those used by GNUS, have been
-implemented. |#
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-(declare (usual-integrations))
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Primitives for word-abbrev mode.
+;;; package: (elisp)
+
+;;; Only a few trivial primitives, and those used by GNUS, have been
+;; implemented.
\f
#| An abbrev table is an obarray.
Each defined abbrev is represented by a symbol in that obarray
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Storage allocation and gc for GNU Emacs Lisp interpreter. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Storage allocation and gc for GNU Emacs Lisp interpreter.
+;;; package: (elisp)
\f
(DEFUN (el:cons car cdr)
"Create a new cons, give it CAR and CDR as components, and return it."
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Buffer manipulation primitives for GNU Emacs.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-This cooperates with keymap.scm to implement the bridge between Emacs
-and Edwin modes. It currently does this by getting/storing the values
-of major-mode and mode-name through special accessors/mutators. |#
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-(declare (usual-integrations))
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Buffer manipulation primitives for GNU Emacs.
+;;; package: (elisp)
+
+;;; This cooperates with keymap.scm to implement the bridge between Emacs
+;;; and Edwin modes. It currently does this by getting/storing the values
+;;; of major-mode and mode-name through special accessors/mutators.
\f
(define Qfundamental (%intern "fundamental" initial-obarray))
(define Qfundamental-mode (%intern "fundamental-mode" initial-obarray))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Execution of byte code produced by bytecomp.el. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Execution of byte code produced by bytecomp.el.
+;;; package: (elisp)
\f
;;;; Top-level
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Call a Lisp function interactively.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-The emacs subr called "call-interactively" actually has nothing to do
-with calling commands interactively, other than prompting for
-interactive arguments.
-The notion of the current buffer is not normalized to the buffer of
-the selected window, nor is the value of the variable `this-command'
-updated.
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-The real procedure for invoking commands as though the Emacs Lisp
-command dispatch mechanism had invoked them is `%call-interactively'.
-This procedure should be called with the true current buffer (the
-value returned by the Edwin procedure `current-buffer') and the
-interactive arguments, which are collected by
-`%interactive-arguments'. The procedure will set the Emacs Lisp
-emulation's notion of the current buffer, set `this-command', and
-anything else required of command dispatch. There might even be
-something it can do to help implement `interactive-p'.
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
-The Emacs Lisp function `interactive-p' returns t if it is inside an Emacs
-Lisp function that was called by Emacs' command key dispatching
-mechanism, not by `call-interactively' or by a macro. The following
-example code illustrates this behavior.
+|#
-(defun foo (arg)
- (interactive "P")
- (let ((arg (and (not (null)) (prefix-numeric-value arg))))
- (message "foo(%s)..." arg)
- (sit-for 1)
- (cond ((or (null arg) (zerop arg))
- (message "foo(%s)... (interactive-p) => %s"
- arg (interactive-p))
- (sit-for 3))
- ((< arg 0)
- (message "foo(%s)... interactively calling foo(%s)"
- arg (1+ arg))
- (sit-for 1)
- (setq prefix-arg (1+ arg))
- (call-interactively 'foo))
- (t
- (foo (1- arg))))))
+;;;; Call a Lisp function interactively.
+;;; package: (elisp)
-Show value of interactive-p after initial call.
-M-x f o o \r
-foo(nil)... (interactive-p) => t
-
-Show value of interactive-p after a recursive call.
-C-u 1 M-x f o o \r
-foo(1)...
-foo(0)... (interactive-p) => nil
-
-Using call-interactively.
-C-u - 1 M-x f o o \r
-foo(-1)... interactively calling foo(0)
-foo(-1)... interactively calling foo(0)
-foo(-1)... interactively calling foo(0)
-?
-
-Ahem. Well anyway...
-
-`interactive-p' is implemented in GNU Emacs by looking at the
-interpreter stack.
-
-To implement this efficiently in Edwin Scheme would be difficult.
-Luckily, in the entire Emacs distribution, `interactive-p' is used in
-only 5 funcalls all of which will behave acceptably if
-`interactive-p' always returns 't. |#
-
-(declare (usual-integrations))
+;;; The emacs subr called "call-interactively" actually has nothing to do
+;;; with calling commands interactively, other than prompting for
+;;; interactive arguments.
+;;; The notion of the current buffer is not normalized to the buffer of
+;;; the selected window, nor is the value of the variable `this-command'
+;;; updated.
+;;;
+;;; The real procedure for invoking commands as though the Emacs Lisp
+;;; command dispatch mechanism had invoked them is `%call-interactively'.
+;;; This procedure should be called with the true current buffer (the
+;;; value returned by the Edwin procedure `current-buffer') and the
+;;; interactive arguments, which are collected by
+;;; `%interactive-arguments'. The procedure will set the Emacs Lisp
+;;; emulation's notion of the current buffer, set `this-command', and
+;;; anything else required of command dispatch. There might even be
+;;; something it can do to help implement `interactive-p'.
+;;;
+;;; The Emacs Lisp function `interactive-p' returns t if it is inside an Emacs
+;;; Lisp function that was called by Emacs' command key dispatching
+;;; mechanism, not by `call-interactively' or by a macro. The following
+;;; example code illustrates this behavior.
+;;;
+;;; (defun foo (arg)
+;;; (interactive "P")
+;;; (let ((arg (and (not (null)) (prefix-numeric-value arg))))
+;;; (message "foo(%s)..." arg)
+;;; (sit-for 1)
+;;; (cond ((or (null arg) (zerop arg))
+;;; (message "foo(%s)... (interactive-p) => %s"
+;;; arg (interactive-p))
+;;; (sit-for 3))
+;;; ((< arg 0)
+;;; (message "foo(%s)... interactively calling foo(%s)"
+;;; arg (1+ arg))
+;;; (sit-for 1)
+;;; (setq prefix-arg (1+ arg))
+;;; (call-interactively 'foo))
+;;; (t
+;;; (foo (1- arg))))))
+;;;
+;;; Show value of interactive-p after initial call.
+;;; M-x f o o \r
+;;; foo(nil)... (interactive-p) => t
+;;;
+;;; Show value of interactive-p after a recursive call.
+;;; C-u 1 M-x f o o \r
+;;; foo(1)...
+;;; foo(0)... (interactive-p) => nil
+;;;
+;;; Using call-interactively.
+;;; C-u - 1 M-x f o o \r
+;;; foo(-1)... interactively calling foo(0)
+;;; foo(-1)... interactively calling foo(0)
+;;; foo(-1)... interactively calling foo(0)
+;;; ?
+;;;
+;;; Ahem. Well anyway...
+;;;
+;;; `interactive-p' is implemented in GNU Emacs by looking at the
+;;; interpreter stack.
+;;;
+;;; To implement this efficiently in Edwin Scheme would be difficult.
+;;; Luckily, in the entire Emacs distribution, `interactive-p' is used in
+;;; only 5 funcalls all of which will behave acceptably if
+;;; `interactive-p' always returns 't.
\f
(DEFUN (el:interactive "e . args)
"Specify a way of parsing arguments for interactive use of a function.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Synchronous subprocess invocation for GNU Emacs. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Synchronous subprocess invocation for GNU Emacs.
+;;; package: (elisp)
(DEFUN (el:call-process program #!optional infile buffer display . args)
"Call PROGRAM in separate process.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Simple built-in editing commands. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Simple built-in editing commands.
+;;; package: (elisp)
\f
(DEFUN (el:forward-char #!optional n)
"Move point right ARG characters (left if ARG negative).
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Primitive operations on Lisp data types for GNU Emacs Lisp interpreter. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Primitive operations on Lisp data types for GNU Emacs Lisp interpreter.
+;;; package: (elisp)
\f
;(define Qt (%intern "t" initial-obarray))
;(define Qquote (%intern "quote" initial-obarray))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Lisp functions for making directory listings. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Lisp functions for making directory listings.
+;;; package: (elisp)
#|(DEFUN (el:directory-files dirname #!optional full match)
"Return a list of names of files in DIRECTORY.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Lisp functions pertaining to editing. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Lisp functions pertaining to editing.
+;;; package: (elisp)
\f
(DEFUN (el:char-to-string n)
"Convert arg CHAR to a string containing that character."
#| -*-Scheme-*-
-$Id: $
-
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
-
Not generated by CREF! |#
(declare (usual-integrations))
#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved |#
+This file is part of MIT/GNU Scheme.
+
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
;;;; ELisp Packaging
\f
#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved |#
+This file is part of MIT/GNU Scheme.
+
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
(if (null? (name->package '(SCODE-OPTIMIZER TOP-LEVEL)))
(with-working-directory-pathname
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Evaluator for GNU Emacs Lisp interpreter.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-Notes: interactive-p was punted. It always returns T for now. It's unclear how
-to get the correct behavior. All (five) uses in GNU Emacs 18.58 lisp/, should
-be compatible with this behavior. |#
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-(declare (usual-integrations))
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Evaluator for GNU Emacs Lisp interpreter.
+;;; package: (elisp)
+
+;;; Notes: interactive-p was punted. It always returns T for now.
+;;; It's unclear how to get the correct behavior. All (five) uses in
+;;; GNU Emacs 18.58 lisp/, should be compatible with this behavior.
\f
(define Qand-optional (%intern "&optional" initial-obarray))
(define Qand-rest (%intern "&rest" initial-obarray))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-File IO for GNU Emacs.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-Note: filename operations only work for UN*X. |#
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
-(declare (usual-integrations))
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; File IO for GNU Emacs.
+;;; package: (elisp)
+
+;;; Note: filename operations only work for UN*X.
\f
(define Qfile-error (%intern "file-error" initial-obarray))
(%put! Qfile-error Qerror-conditions (list Qfile-error Qerror))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Random utility Lisp functions. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Random utility Lisp functions. |#
+;;; package: (elisp)
\f
(DEFVAR Qfeatures
'()
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Indentation functions. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Indentation functions.
+;;; package: (elisp)
\f
(DEFUN (el:current-column)
"Return the horizontal position of point. Beginning of line is column 0.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Manipulation of keymaps
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Manipulation of keymaps
+;;; package: (elisp)
+
+#|
In GNU Emacs, (major) modes are defined implicitly by the buffer-local
settings of variables like major-mode and mode-name, and of the
any local or global Emacs key bindings. Setting the local-map of an Emacs
mode changes the second comtab, and defining local keys will mutate the
second comtab. Edwin minor modes will not be affected. |#
-
-(declare (usual-integrations))
\f
(DEFUN (el:make-keymap)
"Construct and return a new keymap, a vector of length 128.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Fundamental definitions for GNU Emacs Lisp interpreter. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Fundamental definitions for GNU Emacs Lisp interpreter.
+;;; package: (elisp)
\f
(declare (integrate-operator CHECK-LIST))
(define (CHECK-LIST x)
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Lisp parsing and input streams. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Lisp parsing and input streams.
+;;; package: (elisp)
\f
(DEFUN (el:read-char)
"Read a character from the command input (keyboard or macro).
#| -*-Scheme-*-
-$Id: $
-
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
-
This file automatically loads the elisp package. |#
(package/system-loader "elisp" '() false)
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Markers: examining, setting and killing. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Markers: examining, setting and killing.
+;;; package: (elisp)
\f
(define (%mark->number mark)
(let ((index (mark-index mark)))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Minibuffer input and completion.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Minibuffer input and completion.
+;;; package: (elisp)
+
+#|
The basis of Emacs minibuffer interaction is read_minibuf. The basis of
Edwin minibuffer interaction is %prompt-for-string.
To handle arbitrary keymaps, keymap->mode creates an anonymous/temporary
mode object that uses the given comtab. This mode object is handed to
%prompt-for-string. |#
-
-(declare (usual-integrations))
\f
(DEFUN (el:read-from-minibuffer prompt #!optional initial-input keymap read)
"Read a string from the minibuffer, prompting with string PROMPT.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Lisp object printing and output streams. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Lisp object printing and output streams.
+;;; package: (elisp)
\f
(DEFUN (el:write-char ch #!optional printcharfun)
"Output character CHAR to stream STREAM.
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Asynchronous subprocess control for GNU Emacs.
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Asynchronous subprocess control for GNU Emacs.
+;;; package: (elisp)
+
+#|
* Notes on Emacs/Edwin subprocess status:
Emacs'. However, GNU Emacs uses sys_siglist to _describe_ a signal
(rather than just giving the signal number) and notes when core has
been dumped. |#
-
-(declare (usual-integrations))
\f
(define Qrun (%intern "run" initial-obarray))
(define Qstop (%intern "stop" initial-obarray))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-String search routines for GNU Emacs. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; String search routines for GNU Emacs.
+;;; package: (elisp)
\f
(define Qsearch-failed (%intern "search-failed" initial-obarray))
(%put! Qsearch-failed Qerror-conditions (list Qsearch-failed Qerror))
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-GNU Emacs routines to deal with syntax tables; also word and list parsing. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; GNU Emacs routines to deal with syntax tables; also word and list parsing.
+;;; package: (elisp)
\f
(DEFVAR Qparse-sexp-ignore-comments
'()
-#| -*- Mode: Scheme; Package: (elisp); Syntax: elisp-syntax-table -*-
+#| -*-Scheme-*-
-$Id: $
+Copyright (C) 1993, 2011 Matthew Birkholz
-Copyright (c) 1993 Matthew Birkholz, All Rights Reserved
+This file is part of MIT/GNU Scheme.
-Window creation, deletion and examination for GNU Emacs. |#
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
-(declare (usual-integrations))
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; Window creation, deletion and examination for GNU Emacs.
+;;; package: (elisp)
\f
(DEFUN (el:windowp obj)
"Returns t if OBJ is a window."