comparison lisp/packages/cmuscheme.el @ 2:ac2d302a0011 r19-15b2

Import from CVS: tag r19-15b2
author cvs
date Mon, 13 Aug 2007 08:46:35 +0200
parents 376386a54a3c
children 0293115a14e9
comparison
equal deleted inserted replaced
1:c0c6a60d29db 2:ac2d302a0011
20 20
21 ;; You should have received a copy of the GNU General Public License 21 ;; You should have received a copy of the GNU General Public License
22 ;; along with XEmacs; see the file COPYING. If not, write to the Free 22 ;; along with XEmacs; see the file COPYING. If not, write to the Free
23 ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 23 ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24 24
25 ;;; Synched up with: FSF 19.30. 25 ;;; Synched up with: FSF 19.34.
26 26
27 ;;; Commentary: 27 ;;; Commentary:
28 28
29 ;;; This is a customisation of comint-mode (see comint.el) 29 ;; This is a customisation of comint-mode (see comint.el)
30 ;;; 30 ;;
31 ;;; Written by Olin Shivers (olin.shivers@cs.cmu.edu). With bits and pieces 31 ;; Written by Olin Shivers (olin.shivers@cs.cmu.edu). With bits and pieces
32 ;;; lifted from scheme.el, shell.el, clisp.el, newclisp.el, cobol.el, et al.. 32 ;; lifted from scheme.el, shell.el, clisp.el, newclisp.el, cobol.el, et al..
33 ;;; 8/88 33 ;; 8/88
34 ;;; 34 ;;
35 ;;; Please send me bug reports, bug fixes, and extensions, so that I can 35 ;; Please send me bug reports, bug fixes, and extensions, so that I can
36 ;;; merge them into the master source. 36 ;; merge them into the master source.
37 ;;; 37 ;;
38 ;;; The changelog is at the end of this file. 38 ;; The changelog is at the end of this file.
39 ;;; 39 ;;
40 ;;; NOTE: MIT Cscheme, when invoked with the -emacs flag, has a special user 40 ;; NOTE: MIT Cscheme, when invoked with the -emacs flag, has a special user
41 ;;; interface that communicates process state back to the superior emacs by 41 ;; interface that communicates process state back to the superior emacs by
42 ;;; outputting special control sequences. The gnumacs package, xscheme.el, has 42 ;; outputting special control sequences. The gnumacs package, xscheme.el, has
43 ;;; lots and lots of special purpose code to read these control sequences, and 43 ;; lots and lots of special purpose code to read these control sequences, and
44 ;;; so is very tightly integrated with the cscheme process. The cscheme 44 ;; so is very tightly integrated with the cscheme process. The cscheme
45 ;;; interrupt handler and debugger read single character commands in cbreak 45 ;; interrupt handler and debugger read single character commands in cbreak
46 ;;; mode; when this happens, xscheme.el switches to special keymaps that bind 46 ;; mode; when this happens, xscheme.el switches to special keymaps that bind
47 ;;; the single letter command keys to emacs functions that directly send the 47 ;; the single letter command keys to emacs functions that directly send the
48 ;;; character to the scheme process. Cmuscheme mode does *not* provide this 48 ;; character to the scheme process. Cmuscheme mode does *not* provide this
49 ;;; functionality. If you are a cscheme user, you may prefer to use the 49 ;; functionality. If you are a cscheme user, you may prefer to use the
50 ;;; xscheme.el/cscheme -emacs interaction. 50 ;; xscheme.el/cscheme -emacs interaction.
51 ;;; 51 ;;
52 ;;; Here's a summary of the pros and cons, as I see them. 52 ;; Here's a summary of the pros and cons, as I see them.
53 ;;; xscheme: Tightly integrated with inferior cscheme process! A few commands 53 ;; xscheme: Tightly integrated with inferior cscheme process! A few commands
54 ;;; not in cmuscheme. But. Integration is a bit of a hack. Input 54 ;; not in cmuscheme. But. Integration is a bit of a hack. Input
55 ;;; history only keeps the immediately prior input. Bizarre 55 ;; history only keeps the immediately prior input. Bizarre
56 ;;; keybindings. 56 ;; keybindings.
57 ;;; 57 ;;
58 ;;; cmuscheme: Not tightly integrated with inferior cscheme process. But. 58 ;; cmuscheme: Not tightly integrated with inferior cscheme process. But.
59 ;;; Carefully integrated functionality with the entire suite of 59 ;; Carefully integrated functionality with the entire suite of
60 ;;; comint-derived CMU process modes. Keybindings reminiscent of 60 ;; comint-derived CMU process modes. Keybindings reminiscent of
61 ;;; Zwei and Hemlock. Good input history. A few commands not in 61 ;; Zwei and Hemlock. Good input history. A few commands not in
62 ;;; xscheme. 62 ;; xscheme.
63 ;;; 63 ;;
64 ;;; It's a tradeoff. Pay your money; take your choice. If you use a Scheme 64 ;; It's a tradeoff. Pay your money; take your choice. If you use a Scheme
65 ;;; that isn't Cscheme, of course, there isn't a choice. Xscheme.el is *very* 65 ;; that isn't Cscheme, of course, there isn't a choice. Xscheme.el is *very*
66 ;;; Cscheme-specific; you must use cmuscheme.el. Interested parties are 66 ;; Cscheme-specific; you must use cmuscheme.el. Interested parties are
67 ;;; invited to port xscheme functionality on top of comint mode... 67 ;; invited to port xscheme functionality on top of comint mode...
68 68
69 ;;; Code: 69 ;;; Code:
70 70
71 (require 'scheme) 71 (require 'scheme)
72 (require 'comint) 72 (require 'comint)