Function: guiler

guiler is an autoloaded, interactive and byte-compiled function defined in gud.el.gz.

Signature

(guiler COMMAND-LINE)

Documentation

Run guiler on program FILE in buffer *gud-FILE*.

The directory containing FILE becomes the initial working directory and source-file directory for your debugger.

View in manual

Probably introduced at or before Emacs version 31.1.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/gud.el.gz
;;;###autoload
(defun guiler (command-line)
  "Run guiler on program FILE in buffer `*gud-FILE*'.
The directory containing FILE becomes the initial working directory
and source-file directory for your debugger."
  (interactive
   (list
    (gud-query-cmdline
     'guiler nil
     (when-let* ((file (buffer-file-name)))
       (list (concat gud-guiler-command-name " "
                     (shell-quote-argument file)))))))

  (gud-common-init command-line nil 'gud-guiler-marker-filter)
  (setq-local gud-minor-mode 'guiler)

;; FIXME: absolute file-names are not grokked yet by Guile's ,break-at-source
;; and relative file names only when relative to %load-path.
;;  (gud-def gud-break  ",break-at-source %d%f %l"  "\C-b" "Set breakpoint at current line.")
  (gud-def gud-break  ",break-at-source %f %l"  "\C-b" "Set breakpoint at current line.")
;; FIXME: remove breakpoint with file-line not yet supported by Guile
;;  (gud-def gud-remove ",delete ---> %d%f:%l"  "\C-d" "Remove breakpoint at current line")
  (gud-def gud-step   ",step"         "\C-s" "Step one source line with display.")
  (gud-def gud-next   ",next"         "\C-n" "Step one line (skip functions).")
;;  (gud-def gud-cont   "continue"     "\C-r" "Continue with display.")
  (gud-def gud-finish ",finish"       "\C-f" "Finish executing current function.")
  (gud-def gud-up     ",up"           "<" "Up one stack frame.")
  (gud-def gud-down   ",down"         ">" "Down one stack frame.")
  (gud-def gud-print  "%e"            "\C-p" "Evaluate Guile expression at point.")

  (gud-set-repeat-map-property 'gud-guiler-repeat-map)

  (setq comint-prompt-regexp "^scheme@([^>]+> ")
  (setq paragraph-start comint-prompt-regexp)
  (run-hooks 'guiler-mode-hook))