comparison lisp/progmodes/idlw-shell.el @ 41608:45db352a0971

Converted backquote to the new style.
author Sam Steingold <sds@gnu.org>
date Tue, 27 Nov 2001 15:52:52 +0000
parents b174db545cfd
children 49e8031d8893
comparison
equal deleted inserted replaced
41607:58e03d744b9f 41608:45db352a0971
2 ;; Copyright (c) 1999, 2000 Free Software Foundation 2 ;; Copyright (c) 1999, 2000 Free Software Foundation
3 3
4 ;; Author: Chris Chase <chase@att.com> 4 ;; Author: Chris Chase <chase@att.com>
5 ;; Maintainer: Carsten Dominik <dominik@strw.leidenuniv.nl> 5 ;; Maintainer: Carsten Dominik <dominik@strw.leidenuniv.nl>
6 ;; Version: 4.7 6 ;; Version: 4.7
7 ;; Date: $Date: 2000/12/19 11:13:34 $ 7 ;; Date: $Date: 2001/07/16 12:22:59 $
8 ;; Keywords: processes 8 ;; Keywords: processes
9 9
10 ;; This file is part of GNU Emacs. 10 ;; This file is part of GNU Emacs.
11 11
12 ;; GNU Emacs is free software; you can redistribute it and/or modify 12 ;; GNU Emacs is free software; you can redistribute it and/or modify
97 97
98 (eval-when-compile (require 'cl)) 98 (eval-when-compile (require 'cl))
99 99
100 (defvar idlwave-shell-have-new-custom nil) 100 (defvar idlwave-shell-have-new-custom nil)
101 (eval-and-compile 101 (eval-and-compile
102 ;; Kludge to allow `defcustom' for Emacs 19. 102 ;; Kludge to allow `defcustom' for Emacs 19.
103 (condition-case () (require 'custom) (error nil)) 103 (condition-case () (require 'custom) (error nil))
104 (if (and (featurep 'custom) 104 (if (and (featurep 'custom)
105 (fboundp 'custom-declare-variable) 105 (fboundp 'custom-declare-variable)
106 (fboundp 'defface)) 106 (fboundp 'defface))
107 ;; We've got what we needed 107 ;; We've got what we needed
108 (setq idlwave-shell-have-new-custom t) 108 (setq idlwave-shell-have-new-custom t)
109 ;; We have the old or no custom-library, hack around it! 109 ;; We have the old or no custom-library, hack around it!
110 (defmacro defgroup (&rest args) nil) 110 (defmacro defgroup (&rest args) nil)
111 (defmacro defcustom (var value doc &rest args) 111 (defmacro defcustom (var value doc &rest args)
112 (` (defvar (, var) (, value) (, doc)))))) 112 `(defvar ,var ,value ,doc))))
113 113
114 ;;; Customizations: idlwave-shell group 114 ;;; Customizations: idlwave-shell group
115 115
116 (defgroup idlwave-shell-general-setup nil 116 (defgroup idlwave-shell-general-setup nil
117 "General setup of the Shell interaction for IDLWAVE/Shell." 117 "General setup of the Shell interaction for IDLWAVE/Shell."
2380 2380
2381 ;; Get and save the old breakpoints 2381 ;; Get and save the old breakpoints
2382 (idlwave-shell-send-command 2382 (idlwave-shell-send-command
2383 idlwave-shell-bp-query 2383 idlwave-shell-bp-query
2384 '(progn 2384 '(progn
2385 (idlwave-shell-filter-bp) 2385 (idlwave-shell-filter-bp)
2386 (setq idlwave-shell-old-bp idlwave-shell-bp-alist)) 2386 (setq idlwave-shell-old-bp idlwave-shell-bp-alist))
2387 'hide) 2387 'hide)
2388 ;; Get sources for IDL compiled procedures followed by setting 2388 ;; Get sources for IDL compiled procedures followed by setting
2389 ;; breakpoint. 2389 ;; breakpoint.
2390 (idlwave-shell-send-command 2390 (idlwave-shell-send-command
2391 idlwave-shell-sources-query 2391 idlwave-shell-sources-query
2392 (` (progn 2392 `(progn
2393 (idlwave-shell-sources-filter) 2393 (idlwave-shell-sources-filter)
2394 (idlwave-shell-set-bp2 (quote (, bp))))) 2394 (idlwave-shell-set-bp2 (quote ,bp)))
2395 'hide)) 2395 'hide))
2396 2396
2397 (defun idlwave-shell-set-bp2 (bp) 2397 (defun idlwave-shell-set-bp2 (bp)
2398 "Use results of breakpoint and sources query to set bp. 2398 "Use results of breakpoint and sources query to set bp.
2399 Use the count argument with IDLs breakpoint command. 2399 Use the count argument with IDLs breakpoint command.
2401 Counts greater than 1 use the IDL AFTER=count keyword to break 2401 Counts greater than 1 use the IDL AFTER=count keyword to break
2402 only after reaching the statement count times." 2402 only after reaching the statement count times."
2403 (let* 2403 (let*
2404 ((arg (idlwave-shell-bp-get bp 'count)) 2404 ((arg (idlwave-shell-bp-get bp 'count))
2405 (key (cond 2405 (key (cond
2406 ((not (and arg (numberp arg))) "") 2406 ((not (and arg (numberp arg))) "")
2407 ((= arg 1) 2407 ((= arg 1)
2408 ",/once") 2408 ",/once")
2409 ((> arg 1) 2409 ((> arg 1)
2410 (format ",after=%d" arg)))) 2410 (format ",after=%d" arg))))
2411 (line (idlwave-shell-bp-get bp 'line))) 2411 (line (idlwave-shell-bp-get bp 'line)))
2412 (idlwave-shell-send-command 2412 (idlwave-shell-send-command
2413 (concat "breakpoint,'" 2413 (concat "breakpoint,'"
2414 (idlwave-shell-sources-bp bp) "'," 2414 (idlwave-shell-sources-bp bp) "',"
2415 (if (integerp line) (setq line (int-to-string line))) 2415 (if (integerp line) (setq line (int-to-string line)))
2416 key) 2416 key)
2417 ;; Check for failure and look for breakpoint in IDL's list 2417 ;; Check for failure and look for breakpoint in IDL's list
2418 (` (progn 2418 `(progn
2419 (if (idlwave-shell-set-bp-check (quote (, bp))) 2419 (if (idlwave-shell-set-bp-check (quote ,bp))
2420 (idlwave-shell-set-bp3 (quote (, bp))))) 2420 (idlwave-shell-set-bp3 (quote ,bp))))
2421 )
2422 ;; do not hide output 2421 ;; do not hide output
2423 nil 2422 nil
2424 'preempt))) 2423 'preempt)))
2425 2424
2426 (defun idlwave-shell-set-bp3 (bp) 2425 (defun idlwave-shell-set-bp3 (bp)
2427 "Find the breakpoint in IDL's internal list of breakpoints." 2426 "Find the breakpoint in IDL's internal list of breakpoints."
2428 (idlwave-shell-send-command idlwave-shell-bp-query 2427 (idlwave-shell-send-command idlwave-shell-bp-query
2429 (` (progn 2428 `(progn
2430 (idlwave-shell-filter-bp) 2429 (idlwave-shell-filter-bp)
2431 (idlwave-shell-new-bp (quote (, bp))))) 2430 (idlwave-shell-new-bp (quote ,bp)))
2432 'hide 2431 'hide
2433 'preempt)) 2432 'preempt))
2434 2433
2435 (defun idlwave-shell-find-bp (frame) 2434 (defun idlwave-shell-find-bp (frame)
2436 "Return breakpoint from `idlwave-shell-bp-alist' for frame. 2435 "Return breakpoint from `idlwave-shell-bp-alist' for frame.