Mercurial > hg > xemacs-beta
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) |