annotate lisp/ilisp/ilisp-luc.el @ 205:92f8ad5d0d3f r20-4b1

Import from CVS: tag r20-4b1
author cvs
date Mon, 13 Aug 2007 10:02:46 +0200
parents b82b59fe008d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 ;;; -*- Mode: Emacs-Lisp -*-
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 ;;; ilisp-luc.el --
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 ;;; This file is part of ILISP.
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
6 ;;; Version: 5.8
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 ;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 ;;; 1993, 1994 Ivan Vasquez
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
10 ;;; 1994, 1995, 1996 Marco Antoniotti and Rick Busdiecker
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
11 ;;; 1996 Marco Antoniotti and Rick Campbell
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 ;;; Other authors' names for which this Copyright notice also holds
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 ;;; may appear later in this file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 ;;;
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
16 ;;; Send mail to 'ilisp-request@naggum.no' to be included in the
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
17 ;;; ILISP mailing list. 'ilisp@naggum.no' is the general ILISP
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 ;;; mailing list were bugs and improvements are discussed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 ;;; ILISP is freely redistributable under the terms found in the file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 ;;; COPYING.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 ;;; ILISP Lucid Common Lisp dialect definition
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 ;;;%%%Lucid
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 (defvar ilisp-lucid-init-file "lucid.lisp")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 (defun lucid-check-prompt (old new)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 "Compare the break level printed at the beginning of the prompt."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 (let* ((old-level (if (and old (eq 0 (string-match "\\(->\\)+" old)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 (- (match-end 0) (match-beginning 0))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 0))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39 (new-level (if (eq 0 (string-match "\\(->\\)+" new))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40 (- (match-end 0) (match-beginning 0))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 0)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 (<= new-level old-level)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 (defdialect lucid "Lucid Common LISP"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 clisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 (ilisp-load-init 'lucid ilisp-lucid-init-file)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48 (setq comint-prompt-regexp "^\\(->\\)+ \\|^[^> ]*> "
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 comint-fix-error ":a"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50 ilisp-reset ":a :t"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 comint-continue ":c"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 comint-interrupt-regexp ">>Break: Keyboard interrupt"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 comint-prompt-status
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 (function (lambda (old line)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 (comint-prompt-status old line 'lucid-check-prompt))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56 (setq ilisp-error-regexp "ILISP:[^\"]*\\|>>[^\n]*")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 (setq ilisp-source-types (append ilisp-source-types '(("any"))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58 (setq ilisp-find-source-command
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59 "(ILISP:ilisp-source-files \"%s\" \"%s\" \"%s\")")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60 (setq ilisp-binary-command
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61 "(first (last lucid::*load-binary-pathname-types*))"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63 (if (not lucid-program) (setq lucid-program "lisp"))