99 |
|
|
100 |
(defvar idlwave-shell-have-new-custom nil) |
(defvar idlwave-shell-have-new-custom nil) |
101 |
(eval-and-compile |
(eval-and-compile |
102 |
;; Kludge to allow `defcustom' for Emacs 19. |
;; Kludge to allow `defcustom' for Emacs 19. |
103 |
(condition-case () (require 'custom) (error nil)) |
(condition-case () (require 'custom) (error nil)) |
104 |
(if (and (featurep 'custom) |
(if (and (featurep 'custom) |
105 |
(fboundp 'custom-declare-variable) |
(fboundp 'custom-declare-variable) |
106 |
(fboundp 'defface)) |
(fboundp 'defface)) |
107 |
;; We've got what we needed |
;; We've got what we needed |
108 |
(setq idlwave-shell-have-new-custom t) |
(setq idlwave-shell-have-new-custom t) |
109 |
;; We have the old or no custom-library, hack around it! |
;; We have the old or no custom-library, hack around it! |
110 |
(defmacro defgroup (&rest args) nil) |
(defmacro defgroup (&rest args) nil) |
111 |
(defmacro defcustom (var value doc &rest args) |
(defmacro defcustom (var value doc &rest args) |
112 |
(` (defvar (, var) (, value) (, doc)))))) |
`(defvar ,var ,value ,doc)))) |
113 |
|
|
114 |
;;; Customizations: idlwave-shell group |
;;; Customizations: idlwave-shell group |
115 |
|
|
2382 |
(idlwave-shell-send-command |
(idlwave-shell-send-command |
2383 |
idlwave-shell-bp-query |
idlwave-shell-bp-query |
2384 |
'(progn |
'(progn |
2385 |
(idlwave-shell-filter-bp) |
(idlwave-shell-filter-bp) |
2386 |
(setq idlwave-shell-old-bp idlwave-shell-bp-alist)) |
(setq idlwave-shell-old-bp idlwave-shell-bp-alist)) |
2387 |
'hide) |
'hide) |
2388 |
;; Get sources for IDL compiled procedures followed by setting |
;; Get sources for IDL compiled procedures followed by setting |
2389 |
;; breakpoint. |
;; breakpoint. |
2390 |
(idlwave-shell-send-command |
(idlwave-shell-send-command |
2391 |
idlwave-shell-sources-query |
idlwave-shell-sources-query |
2392 |
(` (progn |
`(progn |
2393 |
(idlwave-shell-sources-filter) |
(idlwave-shell-sources-filter) |
2394 |
(idlwave-shell-set-bp2 (quote (, bp))))) |
(idlwave-shell-set-bp2 (quote ,bp))) |
2395 |
'hide)) |
'hide)) |
2396 |
|
|
2397 |
(defun idlwave-shell-set-bp2 (bp) |
(defun idlwave-shell-set-bp2 (bp) |
2403 |
(let* |
(let* |
2404 |
((arg (idlwave-shell-bp-get bp 'count)) |
((arg (idlwave-shell-bp-get bp 'count)) |
2405 |
(key (cond |
(key (cond |
2406 |
((not (and arg (numberp arg))) "") |
((not (and arg (numberp arg))) "") |
2407 |
((= arg 1) |
((= arg 1) |
2408 |
",/once") |
",/once") |
2409 |
((> arg 1) |
((> arg 1) |
2410 |
(format ",after=%d" arg)))) |
(format ",after=%d" arg)))) |
2411 |
(line (idlwave-shell-bp-get bp 'line))) |
(line (idlwave-shell-bp-get bp 'line))) |
2412 |
(idlwave-shell-send-command |
(idlwave-shell-send-command |
2413 |
(concat "breakpoint,'" |
(concat "breakpoint,'" |
2415 |
(if (integerp line) (setq line (int-to-string line))) |
(if (integerp line) (setq line (int-to-string line))) |
2416 |
key) |
key) |
2417 |
;; Check for failure and look for breakpoint in IDL's list |
;; Check for failure and look for breakpoint in IDL's list |
2418 |
(` (progn |
`(progn |
2419 |
(if (idlwave-shell-set-bp-check (quote (, bp))) |
(if (idlwave-shell-set-bp-check (quote ,bp)) |
2420 |
(idlwave-shell-set-bp3 (quote (, bp))))) |
(idlwave-shell-set-bp3 (quote ,bp)))) |
|
) |
|
2421 |
;; do not hide output |
;; do not hide output |
2422 |
nil |
nil |
2423 |
'preempt))) |
'preempt))) |
2425 |
(defun idlwave-shell-set-bp3 (bp) |
(defun idlwave-shell-set-bp3 (bp) |
2426 |
"Find the breakpoint in IDL's internal list of breakpoints." |
"Find the breakpoint in IDL's internal list of breakpoints." |
2427 |
(idlwave-shell-send-command idlwave-shell-bp-query |
(idlwave-shell-send-command idlwave-shell-bp-query |
2428 |
(` (progn |
`(progn |
2429 |
(idlwave-shell-filter-bp) |
(idlwave-shell-filter-bp) |
2430 |
(idlwave-shell-new-bp (quote (, bp))))) |
(idlwave-shell-new-bp (quote ,bp))) |
2431 |
'hide |
'hide |
2432 |
'preempt)) |
'preempt)) |
2433 |
|
|