comparison lisp/ilisp/ilisp-chs.el @ 0:376386a54a3c r19-14

Import from CVS: tag r19-14
author cvs
date Mon, 13 Aug 2007 08:45:50 +0200
parents
children b82b59fe008d
comparison
equal deleted inserted replaced
-1:000000000000 0:376386a54a3c
1 ;;; -*- Mode: Emacs-Lisp -*-
2
3 ;;; ilisp-chs.el --
4
5 ;;; This file is part of ILISP.
6 ;;; Version: 5.7
7 ;;;
8 ;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
9 ;;; 1993, 1994 Ivan Vasquez
10 ;;; 1994, 1995 Marco Antoniotti and Rick Busdiecker
11 ;;;
12 ;;; Other authors' names for which this Copyright notice also holds
13 ;;; may appear later in this file.
14 ;;;
15 ;;; Send mail to 'ilisp-request@lehman.com' to be included in the
16 ;;; ILISP mailing list. 'ilisp@lehman.com' is the general ILISP
17 ;;; mailing list were bugs and improvements are discussed.
18 ;;;
19 ;;; ILISP is freely redistributable under the terms found in the file
20 ;;; COPYING.
21
22
23 ;;;
24 ;;; CLISP Common Lisp by Bruno Haible and XX Stoll dialect definition
25 ;;;
26
27 ;;;%%%KCL--these dialects by Tom Emerson
28 ;;; clisp-hs-check-prompt doesn't after the first break because the
29 ;;; number of ">" characters doesn't increase.
30
31 (defun clisp-hs-check-prompt (old new)
32 "Compare the break level printed at the beginning of the prompt."
33 (let* ((was-in-break (and old (string-match "Break>" old)))
34 (old-level (if was-in-break
35 (- (match-end 0) (match-beginning 0))
36 0))
37 (is-in-break (string-match "Break>" new))
38 (new-level (if is-in-break
39 (- (match-end 0) (match-beginning 0))
40 0)))
41 (<= new-level old-level)))
42
43 ;;;
44 (defdialect clisp-hs "CLISP H.S." clisp
45 (setq comint-prompt-regexp "^\\([0-9]+\\. Break>\\|>\\)"
46 ilisp-error-regexp "^\\*\\* "
47 ilisp-binary-extension "fas"
48 comint-fix-error "Abort"
49 comint-continue "Continue"
50 comint-prompt-status
51 (function
52 (lambda (old line)
53 (comint-prompt-status old line 'clisp-hs-check-prompt)))))
54
55 (if (not clisp-hs-program) (setq clisp-hs-program "clisp"))
56
57 (provide 'ilisp-chs)