[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 2068170 195/215: Merge branch 'master' into enable-disable
From: |
Rocky Bernstein |
Subject: |
[elpa] master 2068170 195/215: Merge branch 'master' into enable-disable |
Date: |
Sat, 30 Jul 2016 14:49:05 +0000 (UTC) |
branch: master
commit 2068170cf1fb14f7ed587bb5490b0cdf2ac6c861
Merge: bc3fa20 bc1f4ba
Author: rocky <address@hidden>
Commit: rocky <address@hidden>
Merge branch 'master' into enable-disable
---
.gitignore | 1 +
Cask | 7 +
INSTALL | 2 +-
README.md | 115 +++-
THANKS | 6 +
etc/realgud-logo-square.png | Bin 0 -> 8702 bytes
etc/realgud-logo.png | Bin 0 -> 10806 bytes
etc/realgud-logo.svg | 106 +++
etc/realgud.png | Bin 0 -> 100651 bytes
etc/screenshot.el | 84 +++
realgud-recursive-autoloads.el | 1300 ++++++++++++++++++++++++++++++++++++
realgud.el | 62 +-
realgud/common/bp.el | 53 +-
realgud/common/buffer/source.el | 45 +-
realgud/common/cmds.el | 288 +++++---
realgud/common/file.el | 28 +-
realgud/common/follow.el | 2 +-
realgud/common/fringe-utils.py | 3 +-
realgud/common/fringe.el | 14 +-
realgud/common/run.el | 6 +-
realgud/common/send.el | 28 +-
realgud/common/shortkey.el | 109 ++-
realgud/common/track.el | 113 ++--
realgud/debugger/bashdb/init.el | 3 +
realgud/debugger/gdb/init.el | 16 +-
realgud/debugger/ipdb/core.el | 92 ++-
realgud/debugger/ipdb/init.el | 5 +-
realgud/debugger/ipdb/ipdb.el | 2 +-
realgud/debugger/nodejs/init.el | 5 +-
realgud/debugger/pdb/core.el | 23 +-
realgud/debugger/pdb/init.el | 3 +-
realgud/debugger/pdb/pdb.el | 4 +-
realgud/debugger/perldb/init.el | 25 +-
realgud/debugger/remake/init.el | 18 +-
realgud/debugger/trepan.pl/init.el | 3 +
realgud/debugger/trepanjs/init.el | 6 +-
realgud/debugger/zshdb/init.el | 5 +-
realgud/lang/posix-shell.el | 2 +-
realgud/lang/python.el | 2 +-
test/Makefile.am | 4 +-
test/test-regexp-bashdb.el | 2 +-
test/test-regexp-zshdb.el | 8 +-
42 files changed, 2183 insertions(+), 417 deletions(-)
diff --git a/.gitignore b/.gitignore
index c3d7bcd..9b78308 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,3 +22,4 @@ Makefile.in
elc-stamp
elc-temp
script
+/realgud-autoloads.el
diff --git a/Cask b/Cask
index dcfdc80..8ffc929 100644
--- a/Cask
+++ b/Cask
@@ -2,3 +2,10 @@
(source melpa)
(package-file "realgud.el")
+
+(depends-on "load-relative")
+(depends-on "loc-changes")
+(depends-on "list-utils")
+
+(development
+ (depends-on "test-simple"))
diff --git a/INSTALL b/INSTALL
index 8101860..0ea147f 100644
--- a/INSTALL
+++ b/INSTALL
@@ -18,7 +18,7 @@ the package. However on some systems you may need root
privileges, you
may have to use `sudo make install' or perhaps `su root' beforehand.
- See http://wiki.github.com/rocky/emacs-dbgr/how-to-install for more
+ See http://wiki.github.com/realgud/realgud/how-to-install for more
detail as to how to install this package.
Generic Information
diff --git a/README.md b/README.md
index 5155738..4cc06f1 100644
--- a/README.md
+++ b/README.md
@@ -1,23 +1,110 @@
[![Build Status][travis-image]][travis-url]
-[![MELPA Stable][melpa-image]][melpa-stable]
+[![MELPA][melpa-image]][melpa]
+[![MELPA Stable][melpa-stable-image]][melpa-stable]
-A modular GNU Emacs front-end for interacting with external debuggers.
+![RealGUD logo](etc/realgud-logo.png)
-See https://github.com/rocky/emacs-dbgr/wiki/Debuggers-Supported for a list of
debuggers supported.
+**A modular GNU Emacs front-end for interacting with external debuggers**,
brought to you by **Rocky Bernstein**
(address@hidden(https://github.com/rocky)) and **Clément Pit-Claudel**
(address@hidden(https://github.com/cpitclaudel)).
-A debugger can be run out of a *comint* process buffer, or you can use a
-`M-x realgud-track-mode` inside an existing
[shell](http://www.gnu.org/software/emacs/manual/html_node/emacs/Shell.html),
or [eshell](https://www.gnu.org/software/emacs/manual/html_mono/eshell.html)
buffer.
+![RealGUD screenshot](etc/realgud.png)
-To install, you'll need a couple of other Emacs packages installed. See
-[the installation
instructions](http://wiki.github.com/rocky/emacs-dbgr/how-to-install)
-for details.
+# Setup
-To get started using, see the
-[notes on using realgud](http://wiki.github.com/rocky/emacs-dbgr/how-to-use).
+You can install RealGUD from [MELPA](http://melpa.org/#/getting-started), a
repository of Emacs packages. If you don't have MELPA set up, add the following
to your `.emacs` and restart Emacs:
-*Author:* Rocky Bernstein <address@hidden>
+```elisp
+(require 'package)
+(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
+(package-initialize)
+```
-[travis-image]:
https://img.shields.io/travis/rocky/emacs-dbgr.svg?style=flat-square
-[travis-url]: https://travis-ci.org/rocky/emacs-dbgr
-[melpa-image]: http://stable.melpa.org/packages/realgud-badge.svg
+You can then run the following commands to install RealGUD:
+
+```
+M-x package-refresh-contents RET (to refresh your package database)
+M-x package-install RET realgud RET (to install and compile `realgud` and
its dependencies)
+```
+
+Alternatively, you can install RealGUD using
[el-get](http://www.emacswiki.org/emacs/el-get) or from source directly. See
[this article](https://github.com/realgud/realgud/wiki/How-to-Install) in our
wiki for more info.
+
+# Quick start
+
+Use `M-x load-library RET realgud RET` to load RealGUD.
+
+## Launching the debugger
+
+Open a source file, then use `M-x realgud:<debugger-name>` to start your
favorite debugger (for example, you can use `M-x realgud:pdb` to launch PDB, a
Python debugger). RealGUD opens two windows: the *command window* (showing the
debugger's REPL), and the *source window*, showing your code (with some
debuggers, such as `realgud:gdb`, this window does not appear until you type
`start` in the *command window*). An solid arrow `▶` indicates the current
line in the source window. Grayed [...]
+
+## Using the debugger
+
+All usual debugger commands work in the command window: for example, you can
type `n RET` in the command window to step forward one source line. But
RealGUD's power lies in the source window: in it, most single keys correspond
to a debugger action. For example, you can press `n` in the source window to
step forward.
+
+## Source window commands
+
+Here is a quick rundown of the most useful commands. “🐁” indicates mouse
commands (commands that can be run by clicking on a variable or in the
margins). Many of the commands are accessible from the tool bar
(`tool-bar-mode`) and the menu (`menu-bar-mode`).
+
+* **Motion commands**
+
+ | Command | Action
|
+ | --------------------------------------------- |
--------------------------------------------- |
+ | <kbd>n</kbd>, <kbd>F10</kbd> | Next (aka “step over”,
“step through”) |
+ | <kbd>s</kbd>, <kbd>SPC</kbd>, <kbd>F11</kbd> | Step (aka “step into”)
|
+ | <kbd>f</kbd>, <kbd>S-F11</kbd> | Finish (aka “step out”,
“return”) |
+ | <kbd>c</kbd>, <kbd>F5</kbd> | Continue (run to next
break point) |
+
+* **Using breakpoints**
+
+ | Command | Action
|
+ | --------------------------------------------- |
--------------------------------------------- |
+ | <kbd>b</kbd>, <kbd>F9</kbd> | Set breakpoint 🐁
|
+ | <kbd>D</kbd> | Clear breakpoint 🐁 (by
number) |
+
+* **Inspecting variables**
+
+ | Command | Action
|
+ | --------------------------------------------- |
--------------------------------------------- |
+ | <kbd>mouse-2</kbd> (middle button) | Inspect variable under
cursor (in tooltip) 🐁 |
+ | <kbd>e</kbd> | Evaluate expression
|
+
+* **Control commands**
+
+ | Command | Action
|
+ | --------------------------------------------- |
--------------------------------------------- |
+ | <kbd>q</kbd>, <kbd>S-F5</kbd> | Quit
|
+ | <kbd>R</kbd>, <kbd>r</kbd> | Run (aka “restart”)
|
+ | <kbd>S</kbd> | Go to command window
|
+
+# Supported debuggers
+
+RealGUD supports [many external
debuggers](https://github.com/realgud/realgud/wiki/Debuggers-Supported). Help
us [support even
more](https://github.com/realgud/realgud/wiki/How-to-add-a-new-debugger)!
+
+# Advanced topics
+
+## Extra commands
+
+“⚙” indicates a work-in-progress (contributions welcome!)
+
+| Command | Action
|
+| -------------------------------------------- |
---------------------------------------------- |
+| <kbd>U</kbd> | Until (run to a greater
source line) |
+| <kbd>u</kbd>, <kbd>></kbd> | Up stack (move to older stack
frame) |
+| <kbd>d</kbd>, <kbd><</kbd> | Down stack (move to younger
stack frame) |
+| <kbd>X</kbd> | Clear breakpoint (by line)
|
+| <kbd>j</kbd> | Jump to current line ⚙
|
+| <kbd>-</kbd> | Disable breakpoint ⚙
|
+| <kbd>+</kbd> | Enable breakpoint ⚙
|
+
+## Tracking an existing debugger process
+
+Use `M-x realgud-track-mode` inside an existing
[shell](http://www.gnu.org/software/emacs/manual/html_node/emacs/Shell.html),
or [eshell](https://www.gnu.org/software/emacs/manual/html_mono/eshell.html)
buffer to track an already-running debugger process.
+
+### RealGUD's wiki
+
+Browse the [wiki](http://wiki.github.com/realgud/realgud/) for more
information about [setting
up](http://wiki.github.com/realgud/realgud/how-to-install), [using
realgud](http://wiki.github.com/realgud/realgud/how-to-use), [exploring
features](https://github.com/realgud/realgud/wiki/Features), and lots more.
+
+[travis-image]: https://api.travis-ci.org/realgud/realgud.svg?branch=master
+[travis-url]: https://travis-ci.org/realgud/realgud
+[melpa-stable-image]: http://stable.melpa.org/packages/realgud-badge.svg
[melpa-stable]: http://stable.melpa.org/#/realgud
+[melpa-image]: http://melpa.org/packages/realgud-badge.svg
+[melpa]: http://melpa.org/#/realgud
diff --git a/THANKS b/THANKS
index bacb71c..3bdda08 100644
--- a/THANKS
+++ b/THANKS
@@ -9,3 +9,9 @@ NYC Emacs Meetup and Nicolas Dudebout - straightening me out on
set-keymap-paren
Kilian Kilger - gdb fixes
Sean Farley - ipdb support
+
+Clément Pit-Claudel - improvements, bug fixes, and emacs compliance too varied
to categorize.
+ See git commits for details
+
+
+amelio-vazquez-reina - documentation
diff --git a/etc/realgud-logo-square.png b/etc/realgud-logo-square.png
new file mode 100644
index 0000000..d6a5d40
Binary files /dev/null and b/etc/realgud-logo-square.png differ
diff --git a/etc/realgud-logo.png b/etc/realgud-logo.png
new file mode 100644
index 0000000..c1349ce
Binary files /dev/null and b/etc/realgud-logo.png differ
diff --git a/etc/realgud-logo.svg b/etc/realgud-logo.svg
new file mode 100644
index 0000000..99ad3fc
--- /dev/null
+++ b/etc/realgud-logo.svg
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xml:space="preserve"
+ id="svg4768"
+ viewBox="0.171 0.201 2880.0002 640"
+ height="60"
+ width="270"
+ version="1.0"
+ inkscape:version="0.91 r"
+ sodipodi:docname="realgud.svg"
+ inkscape:export-filename="/home/clement/desktop/realgud.png"
+ inkscape:export-xdpi="180"
+ inkscape:export-ydpi="180"><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1920"
+ inkscape:window-height="1030"
+ id="namedview72"
+ showgrid="false"
+ inkscape:zoom="4"
+ inkscape:cx="115.47042"
+ inkscape:cy="38.714008"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg4768"
+ fit-margin-top="3"
+ fit-margin-left="3"
+ fit-margin-right="3"
+ fit-margin-bottom="3" />
+<!-- Parts of this image extracted from GNU Emacs' icon (the white wave-like
shape) -->
+<defs
+ id="defs4770" /><rect
+ style="display:none;fill:none"
+ id="rect4772"
+ y="101.52715"
+ x="-665.96661"
+ height="512"
+ width="512" /><g
+ style="display:none"
+ id="g4788"
+ transform="translate(-666.13763,101.32614)"><g
+ style="display:inline"
+ id="g4790" /></g><g
+ style="display:none"
+ id="g4806"
+ transform="translate(-666.13763,101.32614)"><g
+ style="display:inline"
+ id="g4808"><path
+ style="display:none;fill:#050505"
+ id="path4810"
+ d="m 349.098,256.651 c -0.265,-0.254 37.637,27.605 39.421,25.012
6.362,-9.252 82.046,-93.137 84.784,-116.236 0.242,-2.003 -0.516,-4.096
-0.516,-4.096 0,0 -1.19,-0.144 -6.325,-4.314 -2.692,-2.192 -5.483,-4.581
-5.483,-4.581 -16.054,0.998 -57.885,41.559 -111.062,103.568"
+ inkscape:connector-curvature="0" /></g></g><text
+ xml:space="preserve"
+
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:688.39953613px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu
Medium';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="-25.458374"
+ y="569.73444"
+ id="text3492"
+ sodipodi:linespacing="125%"><tspan
+ sodipodi:role="line"
+ id="tspan3494"
+ x="-25.458374"
+ y="569.73444"
+
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu
Medium';fill:#000000">R</tspan></text>
+<g
+ id="g3515"
+ transform="matrix(0.89624184,0,0,0.89624184,406.60585,174.82476)"
+ inkscape:export-xdpi="349.85999"
+ inkscape:export-ydpi="349.85999"><path
+
style="opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:13.33816814;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4235-9"
+ d="m 501.09769,256.201 c 0,136.65118 -109.6574,247.42885
-244.92663,247.42885 -135.26924,0 -244.92675,-110.77767 -244.92675,-247.42886
0,-136.6512 109.65751,-247.4288435 244.92675,-247.4288435 135.26923,0
244.92663,110.7776435 244.92663,247.4288435 z"
+ inkscape:connector-curvature="0" /><path
+
style="opacity:1;fill:#a40000;fill-opacity:1;stroke:#ffffff;stroke-width:13.33816814;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4235"
+ d="m 489.28614,256.20099 c 0,130.06122 -104.36919,235.49665
-233.11509,235.49665 -128.7459,0 -233.1152,-105.43543 -233.1152,-235.49665
0,-130.06122 104.3693,-235.496645 233.1152,-235.496645 128.7459,0
233.11509,105.435425 233.11509,235.496645 z"
+ inkscape:connector-curvature="0" /><path
+
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4237"
+ d="m 175.0003,422.31057 c 0,0 19.7385,1.39634 45.1312,-0.84159
10.2834,-0.9063 49.3267,-4.74128 78.5169,-11.14289 0,0 35.5899,-7.61669
54.6301,-14.63335 19.9225,-7.34185 30.7636,-13.57304 35.6433,-22.40243
-0.2128,-1.80907 1.5024,-8.22438 -7.685,-12.07788 -23.4887,-9.85199
-50.73,-8.06998 -104.6338,-9.21285 -59.7772,-2.05391 -79.6627,-12.05971
-90.2556,-20.11838 -10.1579,-8.17519 -5.05,-30.79254 38.4742,-50.71499
21.9244,-10.60898 107.8705,-30.18698 107.8705,-30.18698 -28.9451,-14 [...]
+ inkscape:connector-curvature="0" /></g><text
+ xml:space="preserve"
+
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:688.3994751px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu
Medium';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="860.70557"
+ y="569.73444"
+ id="text3492-3"
+ sodipodi:linespacing="125%"><tspan
+ sodipodi:role="line"
+ id="tspan3494-6"
+ x="860.70557"
+ y="569.73444"
+
style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu
Medium';fill:#000000">alGUD</tspan></text>
+</svg>
diff --git a/etc/realgud.png b/etc/realgud.png
new file mode 100644
index 0000000..6e8c4e9
Binary files /dev/null and b/etc/realgud.png differ
diff --git a/etc/screenshot.el b/etc/screenshot.el
new file mode 100644
index 0000000..e43ee88
--- /dev/null
+++ b/etc/screenshot.el
@@ -0,0 +1,84 @@
+;;; Prepare a RealGUD screenshot
+
+;; Run ‘cask exec emacs -Q -L . -l etc/screenshot.el’ from the project's root
to
+;; build a screenshot.
+
+(defvar my/fringe-width 12)
+
+(defun my/cleanup ()
+ (dolist (buffer (buffer-list))
+ (kill-buffer buffer)))
+
+(defun my/prepare-UI ()
+ "Prepare UI for taking a screenshot."
+ (ido-mode)
+ (tool-bar-mode)
+ (menu-bar-mode -1)
+ (scroll-bar-mode -1)
+ (column-number-mode)
+ (fringe-mode (cons my/fringe-width my/fringe-width))
+ (blink-cursor-mode -1)
+ (setq-default cursor-type 'bar
+ split-width-threshold 80
+ truncate-partial-width-windows t
+ frame-title-format (format "RealGUD:PDB @ Emacs %s"
emacs-version)
+ x-gtk-use-system-tooltips nil)
+ (load-theme 'tango t)
+ ;; (set-face-attribute 'tooltip nil :height 60)
+ (set-face-attribute 'match nil :background "yellow1")
+ (set-face-attribute 'default nil :family "Ubuntu Mono" :height 90)
+ (set-face-attribute 'mode-line nil :foreground "gray60" :background "black")
+ (set-face-attribute 'mode-line-inactive nil :foreground "gray60" :background
"#404045")
+ (set-face-attribute 'mode-line-buffer-id nil :foreground "#eab700")
+ (set-fontset-font t 'unicode "Ubuntu Mono")
+ (set-frame-size nil 140 20)
+ (redisplay t))
+
+(defun my/load-RealGUD ()
+ "Load RealGUD."
+ (package-initialize)
+ (load-library "realgud")
+ (setq realgud-bp-fringe-indicator-style
+ '(realgud-bp-filled . realgud-bp-hollow)))
+
+(defvar my/source-buffer nil)
+(defvar my/command-buffer nil)
+
+(defun my/load-example ()
+ "Prepare an example file and start the debugger."
+ (save-window-excursion
+ (find-file "realgud/common/fringe-utils.py")
+ (setq my/source-buffer (current-buffer))
+ (hl-line-mode 1)
+ (realgud:pdb (format "python3 -m pdb %S" buffer-file-name))
+ (sit-for 3) ;; Give PDB some time to start
+ (setq my/command-buffer (current-buffer))
+ (font-lock-add-keywords ;; Hide default directory
+ nil `((,(regexp-quote default-directory) 0 '(face nil display "<demo>/")
append)) t)
+ (font-lock-mode 1))
+ (switch-to-buffer my/source-buffer)
+ (set-window-buffer (split-window-horizontally) my/command-buffer))
+
+(defun my/prepare-screenshot-1 ()
+ "Prepare for taking a screenshot."
+ (my/prepare-UI)
+ (my/load-RealGUD)
+ (my/load-example)
+ (with-current-buffer my/source-buffer
+ (dolist (line '(4 12 17))
+ (goto-char (point-min))
+ (forward-line (1- line))
+ (realgud:cmd-break nil)
+ (sit-for 1)))
+ (goto-char (point-min))
+ (recenter-top-bottom 0)
+ (realgud:cmd-next)
+ (sit-for 1)
+ (realgud:cmd-continue)
+ (sit-for 1)
+ (hl-line-highlight)
+ (set-window-start (get-buffer-window my/command-buffer) 1)
+ (message nil))
+
+(print default-directory)
+(run-with-idle-timer 0 nil #'my/prepare-screenshot-1)
diff --git a/realgud-recursive-autoloads.el b/realgud-recursive-autoloads.el
new file mode 100644
index 0000000..63539c5
--- /dev/null
+++ b/realgud-recursive-autoloads.el
@@ -0,0 +1,1300 @@
+;;; realgud-recursive-autoloads.el --- automatically extracted autoloads
+;;
+;;; Code:
+
+
+;;;### (autoloads nil "realgud/common/backtrace-mode"
"realgud/common/backtrace-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/backtrace-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/backtrace-mode" '("realgud-backtrace-mode-map"
"realgud-backtrace-mode" "realgud:frames-menu")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/backtrack-mode"
"realgud/common/backtrack-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/backtrack-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/backtrack-mode" '("realgud-backtrack-set-debugger"
"realgud-backtrack-mode" "realgud-backtrack-mode-map"
"realgud-backtrack-mode-vars")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/bp" "realgud/common/bp.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/bp.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/bp" '("realgud-bp-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/bp-image-data"
"realgud/common/bp-image-data.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/bp-image-data.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/bp-image-data" '("realgud-bp-disabled-"
"realgud-bp-enabled-tiff-data" "realgud-bp-enabled-svg-data"
"realgud-bp-enabled-pbm-data" "realgud-bp-xpm-data")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/buffer/backtrace"
"realgud/common/buffer/backtrace.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/buffer/backtrace.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/buffer/backtrace" '("realgud-backtrace-" "realgud-goto-"
"realgud:backtrace-" "realgud-track-divert-string" "realgud-backtrace?")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/buffer/command"
"realgud/common/buffer/command.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/buffer/command.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/buffer/command" '("realgud-cmdbuf-"
"realgud:cmdbuf-buffers-describe" "realgud:cmdbuf-info-describe"
"realgud-cmdbuf?")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/buffer/helper"
"realgud/common/buffer/helper.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/buffer/helper.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/buffer/helper" '("realgud:srcbuf-info-describe"
"realgud-get-process" "realgud-get-srcbuf-from-cmdbuf"
"realgud-get-cmdbuf-from-srcbuf" "realgud-get-cmdbuf-from-backtrace")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/buffer/info"
"realgud/common/buffer/info.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/buffer/info.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/buffer/info" '("realgud:info-mode-hook" "realgud:info-mode"
"realgud-backtrace-info")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/buffer/source"
"realgud/common/buffer/source.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/buffer/source.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/buffer/source" '("realgud-srcbuf-" "realgud-srcbuf?")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/cmds" "realgud/common/cmds.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/cmds.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/cmds" '("realgud-safe-mode" "realgud:cmd-quit"
"realgud:cmd-terminate")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/core" "realgud/common/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/core" '("realgud-" "realgud:")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/custom" "realgud/common/custom.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/custom.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/custom" '("realgud-srcbuf-lock" "realgud-key-prefix")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/eval" "realgud/common/eval.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/eval.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/eval" '("realgud:tooltip-eval" "realgud:eval-process-output")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/file" "realgud/common/file.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/file.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/file" '("realgud-file-remap")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/fringe" "realgud/common/fringe.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/fringe.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/fringe" '("realgud-overlay-"
"realgud-fringe-erase-history-arrows" "realgud-fringe-history-set"
"realgud-fringe-set-arrow")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/helper" "realgud/common/helper.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/helper.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/helper" '("realgud-" "with-current-buffer-safe"
"buffer-killed?" "realgud:debugger-name-transform" "fn-p-to-fn?-alias")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/init" "realgud/common/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/init" '("realgud-line-number-face"
"realgud-backtrace-number-face" "realgud-file-name-face")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/key" "realgud/common/key.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/key.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/key" '("realgud-populate-src-buffer-map-plain"
"realgud-populate-common-keys" "realgud-populate-common-fn-keys-function"
"realgud-populate-common-fn-keys-standard")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/lang" "realgud/common/lang.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/lang.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/lang" '("realgud-suggest-lang-file" "realgud-lang-mode?"
"realgud:suggest-file-from-buffer")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/loc" "realgud/common/loc.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/loc.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/loc" '("realgud-loc?" "realgud-loc" "realgud:loc-describe")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/lochist" "realgud/common/lochist.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/lochist.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/lochist" '("realgud-loc-hist-" "realgud-loc-hist")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/menu" "realgud/common/menu.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/menu.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/menu" '("realgud-menu-item" "realgud-populate-debugger-menu")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/regexp" "realgud/common/regexp.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/regexp.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/regexp" '("realgud:regexp-captured-num"
"realgud:variable-basename-hash" "realgud-loc-pat" "realgud-pat-hash"
"realgud-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/reset" "realgud/common/reset.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/reset.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/reset" '("realgud:reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/run" "realgud/common/run.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/run.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/run" '("realgud:run-debugger")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/send" "realgud/common/send.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/send.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/send" '("realgud:send-" "realgud-send-"
"comint-output-filter-orig" "realgud-expand-format" "realgud-command")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/shortkey" "realgud/common/shortkey.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/shortkey.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/shortkey" '("realgud:goto-loc-hist-" "realgud-short-key-"
"realgud:shortkey-mode-map" "realgud-get-short-key-mode-map"
"realgud-populate-src-buffer-map")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/track" "realgud/common/track.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/track.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/track" '("realgud-goto-line-for-" "realgud-track-"
"realgud:goto-" "realgud-short-key-on-tracing?" "realgud:track-set-debugger")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/track-mode"
"realgud/common/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/track-mode" '("realgud-track-mode" "realgud:tool-bar-map"
"realgud-track-mode-map" "realgud-track-mode-setup" "realgud-track-mode-vars")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/utils" "realgud/common/utils.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/utils.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/utils" '("realgud:strip" "realgud:flatten")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/common/window" "realgud/common/window.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/common/window.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/common/window" '("realgud:window-bt-undisturb-src"
"realgud-window-cmd-undisturb-src" "realgud-window-src-undisturb-cmd"
"realgud-window-src" "realgud-window-update-position")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/bashdb/bashdb"
"realgud/debugger/bashdb/bashdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/bashdb/bashdb.el
+
+(autoload 'realgud:bashdb "realgud/debugger/bashdb/bashdb" "\
+Invoke the bashdb shell debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run bash. You will be prompted
+for a command line is one isn't supplied.
+
+OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `bashdb-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/bashdb/bashdb" '("realgud:bashdb-command-name" "bashdb")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/bashdb/core"
"realgud/debugger/bashdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/bashdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/bashdb/core" '("realgud:bashdb-" "bashdb-query-cmdline"
"bashdb-parse-cmd-args" "bashdb-suggest-invocation" "bashdb-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/bashdb/init"
"realgud/debugger/bashdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/bashdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/bashdb/init" '("realgud:bashdb-pat-hash"
"realgud:bashdb-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/bashdb/track-mode"
"realgud/debugger/bashdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/bashdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/bashdb/track-mode" '("bashdb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gdb/core"
"realgud/debugger/gdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gdb/core" '("realgud:gdb-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gdb/gdb" "realgud/debugger/gdb/gdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gdb/gdb.el
+
+(autoload 'realgud:gdb "realgud/debugger/gdb/gdb" "\
+Invoke the gdb debugger and start the Emacs user interface.
+
+OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gdb/gdb" '("realgud:gdb-pid-associate"
"realgud:gdb-pid-command-buffer" "realgud:gdb-pid"
"realgud:gdb-find-command-buffer" "realgud:gdb-command-name")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gdb/init"
"realgud/debugger/gdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gdb/init" '("realgud:gdb-frame-num-regexp"
"realgud:gdb-frame-start-regexp" "realgud:gdb-frame-file-regexp"
"realgud:gdb-command-hash" "realgud:gdb-pat-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gdb/track-mode"
"realgud/debugger/gdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gdb/track-mode" '("realgud:gdb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gub/core"
"realgud/debugger/gub/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gub/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gub/core" '("realgud:gub-" "gub-query-cmdline"
"gub-parse-cmd-args" "gub-suggest-invocation" "gub-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gub/gub" "realgud/debugger/gub/gub.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gub/gub.el
+
+(autoload 'realgud-gub "realgud/debugger/gub/gub" "\
+Invoke the Go SSA debugger, gub and start the Emacs user interface.
+
+String COMMAND-LINE specifies how to run gub.
+
+Normally command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset.
+
+\(fn &optional OPT-COMMAND-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gub/gub" '("realgud:gub-command-name" "realgud-gub-fn"
"gub")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gub/init"
"realgud/debugger/gub/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gub/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gub/init" '("realgud:gub-frame-" "realgud:gub-command-hash"
"realgud:gub-selected-frame-arrow" "realgud:gub-pat-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/gub/track-mode"
"realgud/debugger/gub/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/gub/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/gub/track-mode" '("realgud:gub-goto-panic-location"
"realgud:gub-goto-location" "gub-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/ipdb/core"
"realgud/debugger/ipdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/ipdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/ipdb/core" '("realgud:ipdb-" "ipdb-parse-" "ipdb-reset"
"ipdb-suggest-invocation" "ipdb-query-cmdline")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/ipdb/init"
"realgud/debugger/ipdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/ipdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/ipdb/init" '("realgud:ipdb-pat-hash"
"realgud:ipdb-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/ipdb/ipdb"
"realgud/debugger/ipdb/ipdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/ipdb/ipdb.el
+
+(autoload 'realgud:ipdb "realgud/debugger/ipdb/ipdb" "\
+Invoke the ipdb Python debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run ipdb. You will be prompted
+for a command line is one isn't supplied.
+
+OPT-COMMAND-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `ipdb-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(autoload 'realgud:ipdb-remote "realgud/debugger/ipdb/ipdb" "\
+Invoke the ipdb Python debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run ipdb. You will be prompted
+for a command line is one isn't supplied.
+
+OPT-COMMAND-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `ipdb-parse-remote-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/ipdb/ipdb" '("realgud:ipdb-command-name" "ipdb")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/ipdb/track-mode"
"realgud/debugger/ipdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/ipdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/ipdb/track-mode" '("ipdb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/jdb/backtrack-mode"
"realgud/debugger/jdb/backtrack-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/jdb/backtrack-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/jdb/backtrack-mode" '("realgud:jdb-goto-control-frame-line"
"jdb-backtrack-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/jdb/core"
"realgud/debugger/jdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/jdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/jdb/core" '("realgud:jdb-" "jdb-reset"
"jdb-suggest-invocation")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/jdb/file"
"realgud/debugger/jdb/file.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/jdb/file.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/jdb/file" '("gud-jdb-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/jdb/init"
"realgud/debugger/jdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/jdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/jdb/init" '("realgud:jdb-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/jdb/jdb" "realgud/debugger/jdb/jdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/jdb/jdb.el
+
+(autoload 'realgud:jdb "realgud/debugger/jdb/jdb" "\
+Invoke the Java jdb debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `jdb-parse-cmd-args' and path elements found by that
+are expanded using `expand-file-name'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/jdb/jdb" '("realgud:jdb-command-name" "jdb")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/jdb/track-mode"
"realgud/debugger/jdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/jdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/jdb/track-mode" '("realgud:jdb-track-mode"
"realgud:jdb-goto-control-frame-line" "realgud:jdb-goto-syntax-error-line")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/kshdb/core"
"realgud/debugger/kshdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/kshdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/kshdb/core" '("realgud:kshdb-" "kshdb-query-cmdline"
"kshdb-parse-cmd-args" "kshdb-suggest-invocation" "kshdb-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/kshdb/init"
"realgud/debugger/kshdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/kshdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/kshdb/init" '("realgud:kshdb-pat-hash"
"realgud:kshdb-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/kshdb/kshdb"
"realgud/debugger/kshdb/kshdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/kshdb/kshdb.el
+
+(autoload 'realgud:kshdb "realgud/debugger/kshdb/kshdb" "\
+Invoke the Korn shell debugger, kshdb, and start the Emacs user interface.
+
+String COMMAND-LINE specifies how to run kshdb.
+
+Normally command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset.
+
+\(fn &optional OPT-COMMAND-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/kshdb/kshdb" '("realgud:kshdb-command-name" "kshdb")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/kshdb/track-mode"
"realgud/debugger/kshdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/kshdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/kshdb/track-mode" '("kshdb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/nodejs/core"
"realgud/debugger/nodejs/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/nodejs/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/nodejs/core" '("realgud:nodejs-" "nodejs-query-cmdline"
"nodejs-parse-cmd-args")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/nodejs/init"
"realgud/debugger/nodejs/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/nodejs/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/nodejs/init" '("realgud:nodejs-frame-"
"realgud:nodejs-pat-hash" "realgud:nodejs-debugger-name"
"realgud:nodejs-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/nodejs/nodejs"
"realgud/debugger/nodejs/nodejs.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/nodejs/nodejs.el
+
+(autoload 'realgud:nodejs "realgud/debugger/nodejs/nodejs" "\
+Invoke the nodejs shell debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run nodejs.
+
+OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `nodejs-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/nodejs/nodejs" '("realgud:nodejs-command-name")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/nodejs/track-mode"
"realgud/debugger/nodejs/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/nodejs/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/nodejs/track-mode" '("realgud:nodejs-track-mode-internal"
"nodejs-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/pdb/core"
"realgud/debugger/pdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/pdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/pdb/core" '("realgud:pdb-" "pdb-parse-" "pdb-reset"
"pdb-suggest-invocation" "pdb-query-cmdline")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/pdb/init"
"realgud/debugger/pdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/pdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/pdb/init" '("realgud:pdb-pat-hash"
"realgud:pdb-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/pdb/pdb" "realgud/debugger/pdb/pdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/pdb/pdb.el
+
+(autoload 'realgud:pdb "realgud/debugger/pdb/pdb" "\
+Invoke the pdb Python debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run pdb. You will be prompted
+for a command line is one isn't supplied.
+
+OPT-COMMAND-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `pdb-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(autoload 'realgud:pdb-remote "realgud/debugger/pdb/pdb" "\
+Invoke the pdb Python debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run pdb. You will be prompted
+for a command line is one isn't supplied.
+
+OPT-COMMAND-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `pdb-parse-remote-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/pdb/pdb" '("realgud:pdb-command-name" "pdb")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/pdb/track-mode"
"realgud/debugger/pdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/pdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/pdb/track-mode" '("pdb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/perldb/core"
"realgud/debugger/perldb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/perldb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/perldb/core" '("realgud:perldb-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/perldb/init"
"realgud/debugger/perldb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/perldb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/perldb/init" '("realgud:perldb-loc-regexp"
"realgud:perldb-loc-noeval-regexp" "realgud:perldb-loc-eval-regexp"
"realgud:perldb-command-hash" "realgud:perldb-pat-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/perldb/perldb"
"realgud/debugger/perldb/perldb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/perldb/perldb.el
+
+(autoload 'realgud:perldb "realgud/debugger/perldb/perldb" "\
+Invoke the Perl debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run nodejs.
+
+OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `perldb-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/perldb/perldb" '("realgud:perldb-command-name")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/perldb/track-mode"
"realgud/debugger/perldb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/perldb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/perldb/track-mode" '("perldb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/rdebug/core"
"realgud/debugger/rdebug/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/rdebug/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/rdebug/core" '("realgud:rdebug-" "rdebug-query-cmdline"
"rdebug-parse-cmd-args" "rdebug-suggest-invocation" "rdebug-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/rdebug/init"
"realgud/debugger/rdebug/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/rdebug/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/rdebug/init" '("realgud-rdebug-pat-hash"
"realgud-rdebug-command-hash" "realgud-rdebug-frame-file-line-regexp"
"realgud-rdebug-frame-start-regexp" "realgud-rdebug-frame-num-regexp")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/rdebug/rdebug"
"realgud/debugger/rdebug/rdebug.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/rdebug/rdebug.el
+
+(autoload 'realgud:rdebug "realgud/debugger/rdebug/rdebug" "\
+Invoke the rdebug Ruby debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `trepan8-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/rdebug/rdebug" '("realgud:rdebug-command-name"
"rdebug-get-script-name" "rdebug")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/rdebug/track-mode"
"realgud/debugger/rdebug/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/rdebug/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/rdebug/track-mode" '("rdebug-track-mode"
"rdebug-track-mode-internal")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/remake/core"
"realgud/debugger/remake/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/remake/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/remake/core" '("realgud:remake-" "remake-suggest-"
"remake-query-cmdline" "remake-parse-cmd-args" "remake-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/remake/init"
"realgud/debugger/remake/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/remake/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/remake/init" '("realgud:remake-frame-"
"realgud:remake-command-hash" "realgud:remake-selected-frame-arrow"
"realgud:remake-pat-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/remake/remake"
"realgud/debugger/remake/remake.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/remake/remake.el
+
+(autoload 'realgud:remake "realgud/debugger/remake/remake" "\
+See `realgud:remake' for details
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/remake/remake" '("realgud:remake-run-debugger"
"realgud:remake-command-name" "remake")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/remake/track-mode"
"realgud/debugger/remake/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/remake/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/remake/track-mode" '("remake-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan.pl/backtrack-mode"
+;;;;;; "realgud/debugger/trepan.pl/backtrack-mode.el" (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan.pl/backtrack-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan.pl/backtrack-mode"
'("realgud:trepanpl-goto-control-frame-line" "trepanpl-backtrack-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan.pl/core"
"realgud/debugger/trepan.pl/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan.pl/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan.pl/core" '("realgud:trepanpl-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan.pl/init"
"realgud/debugger/trepan.pl/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan.pl/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan.pl/init" '("realgud:trepanpl-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan.pl/track-mode"
"realgud/debugger/trepan.pl/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan.pl/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan.pl/track-mode"
'("realgud:trepanpl-goto-syntax-error-line" "realgud:trepanpl-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan.pl/trepanpl"
"realgud/debugger/trepan.pl/trepanpl.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan.pl/trepanpl.el
+
+(autoload 'realgud:trepan\.pl "realgud/debugger/trepan.pl/trepanpl" "\
+Invoke the trepan.pl Perl debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run trepan.pl. You will be prompted
+for a command line is one isn't supplied.
+
+OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `realgud:trepanpl-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan.pl/trepanpl" '("realgud:trepanpl-command-name"
"trepan.pl")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan/backtrack-mode"
"realgud/debugger/trepan/backtrack-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan/backtrack-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan/backtrack-mode"
'("realgud:trepan-goto-control-frame-line" "trepan-backtrack-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan/core"
"realgud/debugger/trepan/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan/core" '("realgud:trepan-" "trepan-reset"
"trepan-suggest-invocation")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan/init"
"realgud/debugger/trepan/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan/init" '("realgud:trepan-command-hash"
"realgud:trepan-debugger-name" "realgud:trepan-frame-file-regexp"
"realgud:trepan-selected-frame-indicator" "realgud:trepan-pat-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan/track-mode"
"realgud/debugger/trepan/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan/track-mode" '("trepan-track-mode"
"realgud:trepan-goto-control-frame-line"
"realgud:trepan-goto-syntax-error-line")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan/trepan"
"realgud/debugger/trepan/trepan.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan/trepan.el
+
+(autoload 'realgud:trepan "realgud/debugger/trepan/trepan" "\
+Invoke the trepan Ruby debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `trepan-parse-cmd-args' and path elements found by that
+are expanded using `expand-file-name'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan/trepan" '("realgud:trepan-command-name" "trepan")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan2/core"
"realgud/debugger/trepan2/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan2/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan2/core" '("realgud:trepan2-" "trepan2-query-cmdline"
"trepan2-parse-cmd-args" "trepan2-suggest-invocation" "trepan2-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan2/init"
"realgud/debugger/trepan2/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan2/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan2/init" '("realgud:trepan2-pat-hash"
"realgud:trepan2-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan2/track-mode"
"realgud/debugger/trepan2/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan2/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan2/track-mode" '("trepan2-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan2/trepan2"
"realgud/debugger/trepan2/trepan2.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan2/trepan2.el
+
+(autoload 'realgud:trepan2 "realgud/debugger/trepan2/trepan2" "\
+Invoke the trepan2 Python debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `trepan2-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan2/trepan2" '("realgud:trepan2-command-name" "trepan2")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan3k/core"
"realgud/debugger/trepan3k/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan3k/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan3k/core" '("realgud:trepan3k-" "trepan3k-query-cmdline"
"trepan3k-parse-cmd-args" "trepan3k-suggest-invocation" "trepan3k-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan3k/init"
"realgud/debugger/trepan3k/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan3k/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan3k/init" '("realgud:trepan3k-pat-hash"
"realgud:trepan3k-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan3k/track-mode"
"realgud/debugger/trepan3k/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan3k/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan3k/track-mode" '("trepan3k-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepan3k/trepan3k"
"realgud/debugger/trepan3k/trepan3k.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepan3k/trepan3k.el
+
+(autoload 'realgud:trepan3k "realgud/debugger/trepan3k/trepan3k" "\
+Invoke the trepan3k Python debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `trepan2-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepan3k/trepan3k" '("realgud:trepan3k-command-name"
"trepan3k")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepanjs/backtrack-mode"
+;;;;;; "realgud/debugger/trepanjs/backtrack-mode.el" (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepanjs/backtrack-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepanjs/backtrack-mode"
'("realgud:trepanjs-goto-control-frame-line" "trepanjs-backtrack-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepanjs/core"
"realgud/debugger/trepanjs/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepanjs/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepanjs/core" '("realgud:trepanjs-")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepanjs/init"
"realgud/debugger/trepanjs/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepanjs/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepanjs/init" '("realgud:trepanjs-frame-"
"realgud:trepanjs-pat-hash" "realgud:trepanjs-file-regexp"
"realgud:trepanjs-debugger-name" "realgud:trepanjs-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepanjs/track-mode"
"realgud/debugger/trepanjs/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepanjs/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepanjs/track-mode"
'("realgud:trepanjs-goto-syntax-error-line" "trepanjs-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/trepanjs/trepanjs"
"realgud/debugger/trepanjs/trepanjs.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/trepanjs/trepanjs.el
+
+(autoload 'realgud:trepanjs "realgud/debugger/trepanjs/trepanjs" "\
+Invoke the trepanjs Ruby debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `trepanjs-parse-cmd-args' and path elements found by that
+are expanded using `expand-file-name'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/trepanjs/trepanjs" '("realgud:trepanjs-command-name"
"trepanjs")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/zshdb/core"
"realgud/debugger/zshdb/core.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/zshdb/core.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/zshdb/core" '("realgud:zshdb-" "zshdb-query-cmdline"
"zshdb-parse-cmd-args" "zshdb-suggest-invocation" "zshdb-reset")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/zshdb/init"
"realgud/debugger/zshdb/init.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/zshdb/init.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/zshdb/init" '("realgud:zshdb-pat-hash"
"realgud:zshdb-command-hash")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/zshdb/track-mode"
"realgud/debugger/zshdb/track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/zshdb/track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/zshdb/track-mode" '("zshdb-track-mode")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/debugger/zshdb/zshdb"
"realgud/debugger/zshdb/zshdb.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/debugger/zshdb/zshdb.el
+
+(autoload 'realgud:zshdb "realgud/debugger/zshdb/zshdb" "\
+Invoke the zshdb Z-shell debugger and start the Emacs user interface.
+
+String OPT-CMD-LINE specifies how to run zshdb.
+
+OPT-CMD-LINE is treated like a shell string; arguments are
+tokenized by `split-string-and-unquote'. The tokenized string is
+parsed by `zshdb-parse-cmd-args' and path elements found by that
+are expanded using `realgud:expand-file-name-if-exists'.
+
+Normally, command buffers are reused when the same debugger is
+reinvoked inside a command buffer with a similar command. If we
+discover that the buffer has prior command-buffer information and
+NO-RESET is nil, then that information which may point into other
+buffers and source buffers which may contain marks and fringe or
+marginal icons is reset. See `loc-changes-clear-buffer' to clear
+fringe and marginal icons.
+
+\(fn &optional OPT-CMD-LINE NO-RESET)" t nil)
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/debugger/zshdb/zshdb" '("realgud:zshdb-command-name" "zshdb")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/lang/js" "realgud/lang/js.el" (0 0
+;;;;;; 0 0))
+;;; Generated autoloads from realgud/lang/js.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/lang/js" '("realgud:js-backtrace-loc-pat" "realgud:js-term-escape")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/lang/perl" "realgud/lang/perl.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/lang/perl.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/lang/perl" '("realgud:perl-goto-errmsg-line"
"realgud-perl-populate-command-keys" "realgud-perl-ignore-file-re"
"realgud-perl-errmsg-loc-pat" "realgud-perl-carp-loc-pat")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/lang/posix-shell" "realgud/lang/posix-shell.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/lang/posix-shell.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/lang/posix-shell" '("realgud-shell-frame-" "realgud:POSIX-debugger-"
"realgud-shell-backtrace-loc-pat" "realgud-posix-shell-populate-command-keys")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/lang/python" "realgud/lang/python.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/lang/python.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/lang/python" '("realgud:python-trepan-" "realgud-python-"
"realgud:python-debugger-font-lock-keywords" "realgud-pytest-error-loc-pat"
"realgud:pytest-goto-errmsg-line")))
+
+;;;***
+
+;;;### (autoloads nil "realgud/lang/ruby" "realgud/lang/ruby.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from realgud/lang/ruby.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"realgud/lang/ruby" '("realgud:" "realgud-ruby-" "realgud-rubinius-"
"realgud-rspec-backtrace-loc-pat" "realgud-rails-backtrace-loc-pat")))
+
+;;;***
+
+;;;### (autoloads nil "test/test-common-helper" "test/test-common-helper.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from test/test-common-helper.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"test/test-common-helper" '("realgud-test-info")))
+
+;;;***
+
+;;;### (autoloads nil "test/test-gdb" "test/test-gdb.el" (0 0 0 0))
+;;; Generated autoloads from test/test-gdb.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"test/test-gdb" '("realgud:gdb-executable")))
+
+;;;***
+
+;;;### (autoloads nil "test/test-remake" "test/test-remake.el" (0
+;;;;;; 0 0 0))
+;;; Generated autoloads from test/test-remake.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"test/test-remake" '("realgud-exec-shell")))
+
+;;;***
+
+;;;### (autoloads nil "test/test-send" "test/test-send.el" (0 0 0
+;;;;;; 0))
+;;; Generated autoloads from test/test-send.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"test/test-send" '("setup")))
+
+;;;***
+
+;;;### (autoloads nil "test/test-srcbuf" "test/test-srcbuf.el" (0
+;;;;;; 0 0 0))
+;;; Generated autoloads from test/test-srcbuf.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"test/test-srcbuf" '("temp-cmdbuf" "setup")))
+
+;;;***
+
+;;;### (autoloads nil "test/test-track-mode" "test/test-track-mode.el"
+;;;;;; (0 0 0 0))
+;;; Generated autoloads from test/test-track-mode.el
+
+(if (fboundp 'register-definition-prefixes) (register-definition-prefixes
"test/test-track-mode" '("temp-cmdbuf" "setup")))
+
+;;;***
+
+;;;### (autoloads nil nil ("realgud/common/attach.el"
"realgud/common/follow.el"
+;;;;;; "test/bt-helper.el" "test/regexp-helper.el" "test/test-bashdb.el"
+;;;;;; "test/test-bp.el" "test/test-bt-pdb.el" "test/test-bt-rdebug.el"
+;;;;;; "test/test-bt-trepan.el" "test/test-bt-trepan2.el"
"test/test-bt-trepan3k.el"
+;;;;;; "test/test-bt-zshdb.el" "test/test-buf-bt.el" "test/test-buf-cmd.el"
+;;;;;; "test/test-core.el" "test/test-file.el" "test/test-gdb-core.el"
+;;;;;; "test/test-gub-core.el" "test/test-ipdb.el" "test/test-jdb.el"
+;;;;;; "test/test-lang.el" "test/test-loc-regexp-gub.el"
"test/test-loc-regexp-nodejs.el"
+;;;;;; "test/test-loc-regexp-trepan.el" "test/test-loc-regexp-trepanpl.el"
+;;;;;; "test/test-loc.el" "test/test-lochist.el" "test/test-nodejs.el"
+;;;;;; "test/test-pdb.el" "test/test-perldb.el" "test/test-rdebug.el"
+;;;;;; "test/test-realgud.el" "test/test-regexp-bashdb.el"
"test/test-regexp-gdb.el"
+;;;;;; "test/test-regexp-gub.el" "test/test-regexp-ipdb.el"
"test/test-regexp-jdb.el"
+;;;;;; "test/test-regexp-nodejs.el" "test/test-regexp-pdb.el"
"test/test-regexp-perldb.el"
+;;;;;; "test/test-regexp-rdebug.el" "test/test-regexp-remake.el"
+;;;;;; "test/test-regexp-ruby.el" "test/test-regexp-trepan.el"
"test/test-regexp-trepan2.el"
+;;;;;; "test/test-regexp-trepan3k.el" "test/test-regexp-trepanjs.el"
+;;;;;; "test/test-regexp-trepanpl.el" "test/test-regexp-zshdb.el"
+;;;;;; "test/test-regexp.el" "test/test-remake-core.el"
"test/test-shortkey.el"
+;;;;;; "test/test-track.el" "test/test-trepan2.el" "test/test-trepan3k.el"
+;;;;;; "test/test-trepanpl.el" "test/test-utils.el" "test/test-zshdb.el")
+;;;;;; (0 0 0 0))
+
+;;;***
+
+(provide 'realgud-recursive-autoloads)
+;; Local Variables:
+;; version-control: never
+;; no-byte-compile: t
+;; no-update-autoloads: t
+;; coding: utf-8
+;; End:
+;;; realgud-recursive-autoloads.el ends here
diff --git a/realgud.el b/realgud.el
index dae4da3..96289a0 100644
--- a/realgud.el
+++ b/realgud.el
@@ -3,7 +3,7 @@
;; Author: Rocky Bernstein
;; Version: 1.3.1
;; Package-Requires: ((load-relative "1.0") (list-utils "0.4.2") (loc-changes
"1.1") (test-simple "1.0"))
-;; URL: http://github.com/rocky/emacs-dbgr
+;; URL: http://github.com/realgud/realgud/
;; Compatibility: GNU Emacs 24.x
;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
@@ -25,6 +25,14 @@
;;; Commentary:
+;; A modular GNU Emacs front-end for interacting with external debuggers.
+;;
+;; Quick start: https://github.com/realgud/realgud/
+;;
+;; See URL `https://github.com/realgud/realgud/wiki/Features' for features, and
+;; URL `https://github.com/realgud/realgud/wiki/Debuggers-Supported' for
+;; debuggers we can handle.
+;;
;; Once upon a time in an Emacs far far away and a programming-style
;; deservedly banished, there was a monolithic Cathederal-like
;; debugger front-end called gub. This interfaced with a number of
@@ -40,15 +48,9 @@
;;
;; Oh, and because global variables are largely banned, we can support
;; several simultaneous debug sessions.
-;;
-;; See URL `https://github.com/rocky/emacs-dbgr/wiki/Features' for
-;; features.
-
-;; See URL `https://github.com/rocky/emacs-dbgr/wiki/Debuggers-Supported' for
-;; debuggers we can handle.
;; If you don't see your favorite debugger, see URL
-;; `https://github.com/rocky/emacs-dbgr/wiki/How-to-add-a-new-debugger/'
+;; `https://github.com/realgud/realgud/wiki/How-to-add-a-new-debugger/'
;; for how you can add your own.
;; The debugger is run out of a comint process buffer, or you can use
@@ -59,7 +61,7 @@
;; installed. If you install via melpa (`package-install') or
;; `el-get', these will be pulled in automatically. See the
;; installation instructions URL
-;; `https://github.com/rocky/emacs-dbgr/wiki/How-to-Install' for all
+;; `https://github.com/realgud/realgud/wiki/How-to-Install' for all
;; the ways to to install and more details on installation.
;;; Code:
@@ -156,6 +158,48 @@ development version and you already have this package
loaded."
;; Load everything.
(realgud:load-features)
+
+;;; Autoloads-related code
+
+;; This section is needed because package.el doesn't recurse into
subdirectories
+;; when looking for autoload-able forms. As a workaround, we statically
+;; generate our own autoloads, and force Emacs to read them by adding an extra
+;; autoloded form.
+
+;;;###autoload
+(defconst realgud--recursive-autoloads-file-name
"realgud-recursive-autoloads.el"
+ "Where to store autoloads for subdirectory contents.")
+
+;;;###autoload
+(defconst realgud--recursive-autoloads-base-directory
+ (file-name-directory
+ (if load-in-progress load-file-name
+ buffer-file-name)))
+
+;;;###autoload
+(with-demoted-errors "Error in RealGUD's autoloads: %s"
+ (load (expand-file-name realgud--recursive-autoloads-file-name
+ realgud--recursive-autoloads-base-directory)
+ t t))
+
+(defun realgud--rebuild-recursive-autoloads ()
+ "Update RealGUD's recursive autoloads.
+This is needed because the package.el infrastructure doesn't
+process autoloads in subdirectories; instead we create an
+additional autoloads file of our own, and we load it from an
+autoloaded form. Maintainers should run this after adding
+autoloaded functions, and commit the resulting changes."
+ (interactive)
+ (let ((generated-autoload-file
+ (expand-file-name realgud--recursive-autoloads-file-name
+ realgud--recursive-autoloads-base-directory)))
+ (when (file-exists-p generated-autoload-file)
+ (delete-file generated-autoload-file))
+ (dolist (name (directory-files-recursively
+ realgud--recursive-autoloads-base-directory "" t))
+ (when (file-directory-p name)
+ (update-directory-autoloads name)))))
+
(provide-me)
;;; realgud.el ends here
diff --git a/realgud/common/bp.el b/realgud/common/bp.el
index 84a1019..159daeb 100644
--- a/realgud/common/bp.el
+++ b/realgud/common/bp.el
@@ -80,15 +80,27 @@ overlay for a realgud property."
(defface realgud-bp-enabled-face
'((t :foreground "red" :weight bold))
- "Face for enabled breakpoints."
+ "Face for enabled breakpoints (in the fringe or margin)."
:group 'realgud-bp)
(defface realgud-bp-disabled-face
'((t :foreground "grey" :weight bold))
- "Face for disabled breakpoints."
+ "Face for disabled breakpoints (in the fringe or margin).
+Only used in text terminals: fringe icons always use
+`realgud-bp-enabled-face'."
:group 'realgud-bp)
-(defcustom realgud-bp-fringe-indicator-style '(realgud-bp-filled .
realgud-bp-hollow)
+(defface realgud-bp-line-enabled-face
+ '((t :inherit diff-removed))
+ "Face for lines with enabled breakpoints."
+ :group 'realgud-bp)
+
+(defface realgud-bp-line-disabled-face
+ '((t))
+ "Face for lines with disabled breakpoints."
+ :group 'realgud-bp)
+
+(defcustom realgud-bp-fringe-indicator-style '(filled-rectangle .
hollow-rectangle)
"Which fringe icon to use for breakpoints."
:type '(choice (const :tag "Disc" (realgud-bp-filled . realgud-bp-hollow))
(const :tag "Square" (filled-square . hollow-square))
@@ -108,15 +120,14 @@ If nil, use margins instead."
(and window (car (window-fringes window)))
0)))
-(defun realgud-bp-add-fringe-icon (overlay icon face)
+(defun realgud-bp-add-fringe-icon (overlay icon)
"Add a fringe icon to OVERLAY.
-ICON is a fringe icon symbol; the corresponding icon gets
-highlighted with FACE."
+ICON is a symbol registered with `define-fringe-bitmap'."
;; Ensure that the fringe is wide enough
(unless (>= (realgud-bp--fringe-width) 8)
(set-fringe-mode `(8 . ,right-fringe-width)))
;; Add the fringe icon
- (let* ((fringe-spec `(left-fringe ,icon ,face)))
+ (let* ((fringe-spec `(left-fringe ,icon realgud-bp-enabled-face)))
(overlay-put overlay 'before-string (propertize "x" 'display
fringe-spec))))
(defun realgud-bp-add-margin-indicator (overlay text image face)
@@ -142,25 +153,29 @@ Use the fringe if available, and the margin otherwise.
Record
breakpoint status ENABLE? and breakpoint number BP-NUM in
overlay. BUF is the buffer that POS refers to; it detaults to
the current buffer."
- (let* ((margin-text) (face) (margin-icon) (fringe-icon))
+ (let* ((bp-text) (bp-face) (line-face) (margin-icon) (fringe-icon))
(realgud-set-bp-icons)
(if enable?
- (setq margin-text "B"
- face 'realgud-bp-enabled-face
+ (setq bp-text "B"
+ bp-face 'realgud-bp-enabled-face
+ line-face 'realgud-bp-line-enabled-face
margin-icon realgud-bp-enabled-icon
fringe-icon (car realgud-bp-fringe-indicator-style))
- (setq margin-text "b"
- face 'realgud-bp-disabled-face
+ (setq bp-text "b"
+ bp-face 'realgud-bp-disabled-face
+ line-face 'realgud-bp-line-disabled-face
margin-icon realgud-bp-disabled-icon
fringe-icon (cdr realgud-bp-fringe-indicator-style)))
- (let ((help-echo (format "%s%s: mouse-1 to clear" margin-text bp-num)))
- (setq margin-text (propertize margin-text 'help-echo help-echo)))
+ (let ((help-echo (format "%s%s: mouse-1 to clear" bp-text bp-num)))
+ (setq bp-text (propertize bp-text 'help-echo help-echo)))
(with-current-buffer (or buf (current-buffer))
- (realgud-bp-remove-icons pos pos bp-num)
- (let ((ov (make-overlay pos pos (current-buffer) t nil)))
+ (realgud-bp-remove-icons pos (1+ pos) bp-num)
+ (let* ((eol (save-excursion (goto-char pos) (point-at-eol)))
+ (ov (make-overlay pos (1+ eol) (current-buffer) t nil)))
(if (and realgud-bp-use-fringe (display-images-p))
- (realgud-bp-add-fringe-icon ov fringe-icon face)
- (realgud-bp-add-margin-indicator ov margin-text margin-icon face))
+ (realgud-bp-add-fringe-icon ov fringe-icon)
+ (realgud-bp-add-margin-indicator ov bp-text margin-icon bp-face))
+ (overlay-put ov 'face line-face)
(overlay-put ov 'realgud t)
(overlay-put ov 'realgud-bp-num bp-num)
(overlay-put ov 'realgud-bp-enabled enable?)))))
@@ -171,7 +186,7 @@ BUF is the buffer which pos refers to (default: current
buffer).
If BPNUM is non-nil, only remove overlays maching that breakpoint
number."
(with-current-buffer (or buf (current-buffer))
- (realgud-bp-remove-icons pos pos bpnum)))
+ (realgud-bp-remove-icons pos (1+ pos) bpnum)))
(defun realgud-bp-add-info (loc)
"Record bp information for location LOC."
diff --git a/realgud/common/buffer/source.el b/realgud/common/buffer/source.el
index cf47d83..b050014 100644
--- a/realgud/common/buffer/source.el
+++ b/realgud/common/buffer/source.el
@@ -1,11 +1,11 @@
;;; Copyright (C) 2010, 2012-2015 Rocky Bernstein <address@hidden>
;;; source-code buffer code
(eval-when-compile
- (require 'cl-lib)
(defvar realgud-srcbuf-info) ;; is buffer local
(defvar realgud-cmdbuf-info) ;; in the cmdbuf, this is buffer local
)
+(require 'cl-lib)
(require 'load-relative)
(require-relative-list '("../helper" "../key") "realgud-")
@@ -38,6 +38,7 @@ to be debugged."
;; variable. Short-key-mode may change the read-only
;; state, so we need restore this value when leaving
;; short-key mode
+ prev-local-map ;; Local map before enabling short-key-mode
loc-hist ;; ring of locations seen
@@ -54,6 +55,7 @@ to be debugged."
(realgud-struct-field-setter "realgud-srcbuf-info" "cmdproc")
(realgud-struct-field-setter "realgud-srcbuf-info" "short-key?")
(realgud-struct-field-setter "realgud-srcbuf-info" "was-read-only?")
+(realgud-struct-field-setter "realgud-srcbuf-info" "prev-local-map")
(defun realgud-srcbuf-info-set? ()
"Return non-nil if `realgud-srcbuf-info' is set."
@@ -67,6 +69,31 @@ to be debugged."
(not (buffer-killed? (realgud-sget 'srcbuf-info 'cmdproc)))
)))
+(defun realgud--read-cmd-buf (prompt)
+ "Read a command buffer, prompting with PROMPT."
+ (let* ((cmd-bufs (cl-remove-if-not #'realgud-cmdbuf? (buffer-list)))
+ (buf-names (mapcar #'buffer-name cmd-bufs))
+ (default (car buf-names)))
+ (when buf-names
+ ;; Use completing-read instead of read-buffer: annoyingly, ido's
+ ;; read-buffer ignores predicates.
+ (setq prompt (format "%s (default: %s): " prompt default))
+ (get-buffer (completing-read prompt buf-names nil t nil nil default)))))
+
+(defun realgud--ensure-attached (&optional src-buf)
+ "Try to attach SRC-BUF to a command buffer.
+If SRC-BUF is already attached, do nothing. Otherwise, prompt
+the user for a command buffer to associate SRC-BUF to. Returns
+non-nil if association was successful. SRC-BUF defaults to
+current buffer."
+ (setq src-buf (or src-buf (current-buffer)))
+ (unless (realgud-srcbuf? src-buf)
+ (let ((cmd-buf (realgud--read-cmd-buf "Command buffer to attach to")))
+ (if cmd-buf
+ (realgud-srcbuf-init src-buf cmd-buf)
+ (message "No debugger process found to attach %s to" (buffer-name)))))
+ (realgud-srcbuf? src-buf))
+
(defun realgud-srcbuf-debugger-name (&optional src-buf)
"Return the debugger name recorded in the debugger command-process buffer."
(with-current-buffer-safe (or src-buf (current-buffer))
@@ -117,18 +144,10 @@ in it with those from CMDPROC-BUFFER"
(realgud-srcbuf-info-cmdproc= cmdproc-buffer)
(realgud-srcbuf-init src-buffer cmdproc-buffer))))
-;; FIXME: rewrite to add prompt function that only suggests
-;; command buffers;
-(defun realgud:cmdbuf-associate(cmdbuf-name)
- "Associate a command buffer with for the current buffer which is
-assumed to be a source-code buffer"
- (interactive "brealgud command buffer: ")
- (let ((cmdbuf (get-buffer cmdbuf-name)))
- (unless (realgud-cmdbuf? cmdbuf)
- (error "%s doesn't smell like a command buffer" cmdbuf-name))
- (realgud-srcbuf-init-or-update (current-buffer) cmdbuf )
- (realgud-short-key-mode-setup 't)
- ))
+(defun realgud:cmdbuf-associate ()
+ "Associate a command buffer with the current (source-code) buffer."
+ ;; realgud-short-key-mode-setup will attempt to associate if needed.
+ (realgud-short-key-mode-setup t))
(defun realgud-srcbuf-bp-list(&optional buffer)
"Return a list of breakpoint loc structures that reside in
diff --git a/realgud/common/cmds.el b/realgud/common/cmds.el
index 03990f5..4b2f3eb 100644
--- a/realgud/common/cmds.el
+++ b/realgud/common/cmds.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -51,27 +51,88 @@ when command was run from a menu."
t)
t))
-(defun realgud:cmd-run-command(arg cmd-name default-cmd-template
- &optional no-record? frame-switch?
- realgud-prompts?)
- "Run debugger command CMD-NAME using DEFAULT-CMD-TEMPLATE
-if none has been set in the command hash. If key is given we'll set
-a shortcut for that key."
- (let ((buffer (current-buffer))
- (cmdbuf (realgud-get-cmdbuf))
- (cmd-hash)
- (cmd)
- )
- (with-current-buffer-safe cmdbuf
- (realgud-cmdbuf-info-in-srcbuf?= (not (realgud-cmdbuf? buffer)))
- (setq cmd-hash (realgud-cmdbuf-info-cmd-hash realgud-cmdbuf-info))
- (unless (and cmd-hash (setq cmd (gethash cmd-name cmd-hash)))
- (setq cmd default-cmd-template))
- )
- (if (equal cmd "*not-implemented*")
+(defun realgud:cmd--line-number-from-prefix-arg ()
+ "Guess or read a line number based on prefix arg.
+Returns (nil) for current line, and a list whose car is the line
+number otherwise."
+ (cond
+ ((numberp current-prefix-arg)
+ current-prefix-arg)
+ ((consp current-prefix-arg)
+ (let* ((min-line (save-excursion
+ (goto-char (point-min))
+ (line-number-at-pos)))
+ (max-line (save-excursion
+ (goto-char (point-max))
+ (line-number-at-pos)))
+ (prompt (format "Line number (%d..%d)? " min-line max-line))
+ (picked-line 0))
+ (while (not (<= min-line picked-line max-line))
+ (setq picked-line (read-number prompt)))
+ (list picked-line)))))
+
+(defmacro realgud:cmd--with-line-override (line &rest body)
+ "Run BODY with %l format specifier bound to LINE.
+This is needed because going to LINE explicitly would interfere
+with other motion initiated by debugger messages."
+ (declare (indent 1)
+ (debug t))
+ (let ((line-var (make-symbol "--line--")))
+ `(let* ((,line-var ,line)
+ (realgud-expand-format-overrides
+ (cons (cons ?l (and ,line-var (number-to-string ,line-var)))
+ realgud-expand-format-overrides)))
+ ,@body)))
+
+(defconst realgud-cmd:default-hash
+ (let ((hash (make-hash-table :test 'equal)))
+ (puthash "backtrace" "backtrace" hash)
+ (puthash "break" "break %X:%l" hash)
+ (puthash "clear" "clear %l" hash)
+ (puthash "continue" "continue" hash)
+ (puthash "delete" "delete %p" hash)
+ (puthash "disable" "disable %p" hash)
+ (puthash "down" "down %p" hash)
+ (puthash "enable" "enable %p" hash)
+ (puthash "eval" "eval %s" hash)
+ (puthash "finish" "finish" hash)
+ (puthash "frame" "frame %p" hash)
+ (puthash "jump" "jump %l" hash)
+ (puthash "kill" "kill" hash)
+ (puthash "next" "next %p" hash)
+ (puthash "repeat-last" "\n" hash)
+ (puthash "restart" "run" hash)
+ (puthash "shell" "shell" hash)
+ (puthash "step" "step %p" hash)
+ (puthash "until" "until" hash)
+ (puthash "up" "up %p" hash)
+ hash)
+ "Default hash of command name → debugger command.
+This is used as a fallback when the debugger-specific command
+hash does not specify a custom debugger command.")
+
+(defun realgud:cmd-run-command(arg cmd-name &optional
+ default-cmd-template no-record?
+ frame-switch? realgud-prompts?)
+ "Run debugger command CMD-NAME.
+If CMD-NAME isn't set in the command buffer's command hash, use
+DEFAULT-CMD-TEMPLATE and fall back to looking CMD-NAME up in
+`realgud:cmd-get-cmd-hash'."
+ (let* ((buffer (current-buffer))
+ (cmdbuf (realgud-get-cmdbuf))
+ (cmd-hash (with-current-buffer-safe cmdbuf
+ (realgud-cmdbuf-info-cmd-hash realgud-cmdbuf-info)))
+ (cmd (or (and (hash-table-p cmd-hash)
+ (gethash cmd-name cmd-hash))
+ default-cmd-template
+ (gethash cmd-name realgud-cmd:default-hash))))
+ (if (or (null cmd) (equal cmd "*not-implemented*"))
(message "Command %s is not implemented for this debugger" cmd-name)
- ;; else
(progn
+ ;; Set flag to know which buffer to jump back to
+ (with-current-buffer-safe cmdbuf
+ (realgud-cmdbuf-info-in-srcbuf?= (not (realgud-cmdbuf? buffer))))
+ ;; Run actual command
(realgud-command cmd arg no-record? frame-switch? realgud-prompts?)
;; FIXME: Figure out how to update the position if the source
;; buffer is displayed.
@@ -95,26 +156,37 @@ ARG, CMD-NAME, DEFAULT-CMD-TEMPLATE are as in
`realgud:cmd-run-command'.
KEY is ignored. NO-RECORD?, FRAME-SWITCH?, REALGUD-PROMPTS? are
as in `realgud:cmd-run-command'."
(realgud:cmd-run-command arg cmd-name default-cmd-template
- no-record? frame-switch?
- realgud-prompts?))
+ no-record? frame-switch?
+ realgud-prompts?))
(make-obsolete 'realgud:cmd-remap 'realgud:cmd-run-command "1.3.1")
(defun realgud:cmd-backtrace(arg)
- "Show the current call stack"
+ "Show the current call stack."
(interactive "p")
- (realgud:cmd-run-command arg "backtrace" "backtrace")
+ (realgud:cmd-run-command arg "backtrace")
)
-(defun realgud:cmd-break(arg)
- "Set a breakpoint at the current line"
- (interactive "p")
- (realgud:cmd-run-command arg "break" "break %X:%l"))
-
-(defun realgud:cmd-clear(line-num)
- "Delete breakpoint at the current line"
- (interactive "p")
- (realgud:cmd-run-command line-num "clear" "clear %l"))
+(defun realgud:cmd-break (&optional line-number)
+ "Set a breakpoint at the current line.
+With prefix argument LINE-NUMBER, prompt for line number."
+ (interactive (realgud:cmd--line-number-from-prefix-arg))
+ (realgud:cmd--with-line-override line-number
+ (realgud:cmd-run-command line-number
"break")))
+
+(defun realgud:cmd-clear(&optional line-number)
+ "Delete breakpoint at the current line.
+With prefix argument LINE-NUMBER, prompt for line number."
+ (interactive (realgud:cmd--line-number-from-prefix-arg))
+ (realgud:cmd--with-line-override line-number
+ (realgud:cmd-run-command line-number
"clear")))
+
+(defun realgud:cmd-jump(&optional line-number)
+ "Jump to current line.
+With prefix argument LINE-NUMBER, prompt for line number."
+ (interactive (realgud:cmd--line-number-from-prefix-arg))
+ (realgud:cmd--with-line-override line-number
+ (realgud:cmd-run-command (line-number-at-pos) "jump")))
(defun realgud:cmd-continue(&optional arg)
"Continue execution.
@@ -125,7 +197,7 @@ running."
(list (read-string "Continue args: " nil nil nil t))))
(when (or arg (realgud:prompt-if-safe-mode
"Continue to next breakpoint?"))
- (realgud:cmd-run-command arg "continue" "continue")))
+ (realgud:cmd-run-command arg "continue")))
(defun realgud:bpnum-on-current-line()
"Return number of one breakpoint on current line, if any.
@@ -153,7 +225,7 @@ numeric prefix argument, delete breakpoint with that number
instead. With prefix argument (C-u), or when no breakpoint can
be found on the current line, prompt for a breakpoint number."
(interactive (realgud:bpnum-from-prefix-arg))
- (realgud:cmd-run-command bpnum "delete" "delete %p"))
+ (realgud:cmd-run-command bpnum "delete"))
(defun realgud:cmd-disable(bpnum)
"Disable breakpoint BPNUM.
@@ -162,7 +234,7 @@ numeric prefix argument, disable breakpoint with that number
instead. With prefix argument (C-u), or when no breakpoint can
be found on the current line, prompt for a breakpoint number."
(interactive (realgud:bpnum-from-prefix-arg))
- (realgud:cmd-run-command bpnum "disable" "disable %p"))
+ (realgud:cmd-run-command bpnum "disable"))
(defun realgud:cmd-enable(bpnum)
"Enable breakpoint BPNUM.
@@ -171,7 +243,7 @@ numeric prefix argument, enable breakpoint with that number
instead. With prefix argument (C-u), or when no breakpoint can
be found on the current line, prompt for a breakpoint number."
(interactive (realgud:bpnum-from-prefix-arg))
- (realgud:cmd-run-command bpnum "enable" "enable %p"))
+ (realgud:cmd-run-command bpnum "enable"))
(defun realgud-cmds--add-remove-bp (pos)
"Add or delete breakpoint at POS."
@@ -180,7 +252,7 @@ be found on the current line, prompt for a breakpoint
number."
(let ((existing-bp-num (realgud:bpnum-on-current-line)))
(if existing-bp-num
(realgud:cmd-delete existing-bp-num)
- (realgud:cmd-break pos)))))
+ (realgud:cmd-break)))))
(defun realgud-cmds--mouse-add-remove-bp (event)
"Add or delete breakpoint on line pointed to by EVENT.
@@ -195,14 +267,14 @@ EVENT should be a mouse click on the left fringe or
margin."
(defun realgud:cmd-eval(arg)
"Evaluate an expression."
(interactive "MEval expesssion: ")
- (realgud:cmd-run-command arg "eval" "eval %s")
+ (realgud:cmd-run-command arg "eval")
)
(defun realgud:cmd-eval-region(start end)
"Evaluate current region."
(interactive "r")
(let ((text (buffer-substring-no-properties start end)))
- (realgud:cmd-run-command text "eval" "eval %s")))
+ (realgud:cmd-run-command text "eval")))
(defun realgud:cmd-eval-dwim()
"Eval the current region if active; otherwise, prompt."
@@ -217,101 +289,95 @@ EVENT should be a mouse click on the left fringe or
margin."
This command is often referred to as 'step out' as opposed to
'step over' or 'step into'."
(interactive "p")
- (realgud:cmd-run-command arg "finish" "finish")
+ (realgud:cmd-run-command arg "finish")
)
(defun realgud:cmd-frame(arg)
"Change the current frame number to the value of the numeric argument.
If no argument specified use 0 or the most recent frame."
(interactive "p")
- (realgud:cmd-run-command arg "frame" "frame %p" t t)
+ (realgud:cmd-run-command arg "frame" nil t t)
)
-(defun realgud:cmd-kill(arg)
- "kill debugger process"
- (interactive "p")
- (realgud:cmd-run-command arg "kill" "kill" nil nil t)
- )
+(defun realgud:cmd-kill()
+ "Kill debugger process."
+ (interactive)
+ (realgud:cmd-run-command nil "kill" nil nil nil t))
(defun realgud:cmd-newer-frame(&optional arg)
"Move the current frame to a newer (more recent) frame.
With a numeric argument move that many levels forward."
(interactive "p")
- (realgud:cmd-run-command arg "down" "down %p" "<" t t)
+ (realgud:cmd-run-command arg "down" nil t t)
)
-(defun realgud:cmd-next(&optional arg)
+(defun realgud:cmd-next(&optional count)
"Step one source line at current call level.
-With a numeric argument, step that many times. This command is
-often referred to as 'step through' as opposed to 'step into' or
-'step out'.
+With numeric argument COUNT, step that many times. This command is
+often referred to as `step through' as opposed to `step into' or
+`step out'.
-The definition of 'next' is debugger specific so, see the
-debugger documentation for a more complete definition of what is
-getting stepped."
+The definition of `next' is debugger specific, so see the
+documentation of your debugger for a more complete definition of
+what is getting stepped."
(interactive "p")
- (realgud:cmd-run-command arg "next" "next %p")
-)
+ (realgud:cmd-run-command count "next"))
-(defun realgud:cmd-next-no-arg(&optional arg)
- "Step one source line at current call level.
+(defun realgud:cmd-next-no-arg()
+ "Step one source line at current call level.
The definition of 'next' is debugger specific so, see the
debugger documentation for a more complete definition of what is
getting stepped."
(interactive)
- (realgud:cmd-run-command nil "next" "next")
-)
+ (realgud:cmd-next))
(defun realgud:cmd-older-frame(&optional arg)
"Move the current frame to an older (less recent) frame.
With a numeric argument move that many levels back."
(interactive "p")
- (realgud:cmd-run-command arg "up" "up %p" t t)
+ (realgud:cmd-run-command arg "up" nil t t)
)
-(defun realgud:cmd-repeat-last(&optional arg)
- "Repeat the last command (or generally what <enter> does."
- (interactive "")
- (realgud:cmd-run-command arg "repeat-last" "\n" t nil t)
-)
+(defun realgud:cmd-repeat-last()
+ "Repeat the last command (or generally what <enter> does."
+ (interactive)
+ (realgud:cmd-run-command nil "repeat-last" nil t nil t))
-(defun realgud:cmd-restart(&optional arg)
- "Restart execution."
- (interactive "")
- (realgud:cmd-run-command arg "restart" "run" t nil t)
-)
+(defun realgud:cmd-restart()
+ "Restart execution."
+ (interactive)
+ (if (realgud:prompt-if-safe-mode
+ "Restart program?")
+ (realgud:cmd-run-command nil "restart" nil t nil t)))
-(defun realgud:cmd-shell(&optional arg)
- "Drop to a shell."
- (interactive "")
- (realgud:cmd-run-command arg "shell" "shell")
-)
+(defun realgud:cmd-shell()
+ "Drop to a shell."
+ (interactive)
+ (realgud:cmd-run-command nil "shell"))
-(defun realgud:cmd-step(&optional arg)
+(defun realgud:cmd-step(&optional count)
"Step one source line.
-With a numeric argument, step that many times.
-This command is often referred to as 'step into' as opposed to
-'step over' or 'step out'.
+With a numeric prefix argument COUNT, step that many times.
+This command is often referred to as `step into' as opposed to
+`step over' or `step out'.
-The definition of 'step' is debugger specific so, see the
-debugger documentation for a more complete definition of what is
-getting stepped."
+The definition of `step' is debugger specific, so see the
+documentation of your debugger for a more complete definition of
+what is getting stepped."
(interactive "p")
- (realgud:cmd-run-command arg "step" "step %p")
-)
+ (realgud:cmd-run-command count "step"))
(defun realgud:cmd-step-no-arg()
"Step one source line.
-The definition of 'step' is debugger specific so, see the
-debugger documentation for a more complete definition of what is
-getting stepped."
+The definition of `step' is debugger specific, so see the
+documentation of your debugger for a more complete definition of
+what is getting stepped."
(interactive)
- (realgud:cmd-run-command nil "step" "step")
-)
+ (realgud:cmd-step))
(defun realgud:cmd-terminate ()
"Gently terminate source and command buffers without possibly
@@ -330,32 +396,34 @@ Continue until the current line. In some cases this is
really
two commands - setting a temporary breakpoint on the line and
continuing execution."
(interactive "p")
- (realgud:cmd-run-command arg "until" "until")
+ (realgud:cmd-run-command arg "until")
)
(defun realgud:cmd-quit (&optional arg)
"Gently terminate execution of the debugged program."
(interactive "p")
- (let ((buffer (current-buffer))
- (cmdbuf (realgud-get-cmdbuf))
- (cmd-hash)
- (cmd)
- )
- (if cmdbuf
- (progn
- (with-current-buffer cmdbuf
- (realgud-cmdbuf-info-in-srcbuf?= (not (realgud-cmdbuf? buffer)))
- (setq cmd-hash (realgud-cmdbuf-info-cmd-hash realgud-cmdbuf-info))
- (unless (and cmd-hash (setq cmd (gethash "quit" cmd-hash)))
- (setq cmd "quit"))
+ (if (realgud:prompt-if-safe-mode
+ "Quit debugger?")
+ (let ((buffer (current-buffer))
+ (cmdbuf (realgud-get-cmdbuf))
+ (cmd-hash)
+ (cmd)
)
- (realgud-command cmd arg 't)
+ (if cmdbuf
+ (progn
+ (with-current-buffer cmdbuf
+ (realgud-cmdbuf-info-in-srcbuf?= (not (realgud-cmdbuf? buffer)))
+ (setq cmd-hash (realgud-cmdbuf-info-cmd-hash
realgud-cmdbuf-info))
+ (unless (and cmd-hash (setq cmd (gethash "quit" cmd-hash)))
+ (setq cmd "quit"))
+ )
+ (realgud-command cmd arg t)
(if cmdbuf (realgud:terminate cmdbuf))
)
- ; else
- (realgud:terminate-srcbuf buffer)
- )
- )
- )
+ ;; else
+ (realgud:terminate-srcbuf buffer)
+ )
+ )
+ ))
(provide-me "realgud-")
diff --git a/realgud/common/file.el b/realgud/common/file.el
index b4c378c..5bbf8ee 100644
--- a/realgud/common/file.el
+++ b/realgud/common/file.el
@@ -29,22 +29,18 @@ found"
"Return the column of the first column position of SOURCE-TEXT
at LINE-NUMBER or nil if it is not there"
(condition-case nil
- (if (file-exists-p filename)
- (let ((file-buffer (find-file-noselect filename)))
- (with-current-buffer-safe file-buffer
- (save-excursion
- (goto-char (point-min))
- (forward-line (1- line-number))
- (unless no-strip-blanks
- (setq source-text (realgud:strip source-text)))
- (if (search-forward source-text (point-at-eol))
- (- (current-column)
- (length source-text))))))
- ;; else
- nil)
- (error nil))
-)
-
+ (when (and source-text (file-exists-p filename))
+ (let ((file-buffer (find-file-noselect filename)))
+ (with-current-buffer-safe file-buffer
+ (save-excursion
+ (goto-char (point-min))
+ (forward-line (1- line-number))
+ (unless no-strip-blanks
+ (setq source-text (realgud:strip source-text)))
+ (when (search-forward source-text (point-at-eol))
+ (goto-char (match-beginning 0))
+ (current-column))))))
+ (error nil)))
;; FIXME: should allow column number to be passed in.
(defun realgud:file-loc-from-line(filename line-number
diff --git a/realgud/common/follow.el b/realgud/common/follow.el
index a360522..7b379c9 100644
--- a/realgud/common/follow.el
+++ b/realgud/common/follow.el
@@ -27,7 +27,7 @@
))
(defun realgud:follow-point()
- (interactive "")
+ (interactive)
(realgud:follow (point)))
(defun realgud:follow-event(event)
diff --git a/realgud/common/fringe-utils.py b/realgud/common/fringe-utils.py
old mode 100644
new mode 100755
index c344e50..784cdb0
--- a/realgud/common/fringe-utils.py
+++ b/realgud/common/fringe-utils.py
@@ -1,3 +1,5 @@
+#!/usr/bin/env python3
+
def bit2char(byte, offset):
return "X" if byte & (1 << offset) else " "
@@ -14,7 +16,6 @@ def compile_bitmap(bmp_lines):
bmp_bytes = []
for line in bmp_lines:
s = sum(char2bit(c, offset) for (offset, c) in enumerate(line))
- print(s)
bmp_bytes.append(s.to_bytes(1, byteorder="big"))
return b"".join(bmp_bytes)
diff --git a/realgud/common/fringe.el b/realgud/common/fringe.el
index da6ade0..237a97f 100644
--- a/realgud/common/fringe.el
+++ b/realgud/common/fringe.el
@@ -6,7 +6,7 @@
(declare-function realgud-loc-hist-item-at 'realgud-lochist)
(declare-function buffer-killed? 'helper)
(declare-function realgud-loc-cmd-marker 'realgud-loc)
-(declare-function realgud:loc-follow 'realgud-loc)
+(declare-function realgud:follow-mark 'realgud-follow)
(declare-function realgud-loc-marker 'realgud-loc)
;; Bitmap for hollow overlay-arrow in fringe
@@ -168,14 +168,14 @@ session which should also erase those fringe arrows."
"Goto the position stored in realgud-overlay-arrow1"
(interactive "")
(if realgud-overlay-arrow1
- (realgud:loc-follow realgud-overlay-arrow1))
+ (realgud:follow-mark realgud-overlay-arrow1))
)
(defun realgud-goto-arrow2()
"Goto the position stored in realgud-overlay-arrow2"
(interactive "")
(if realgud-overlay-arrow2
- (realgud:loc-follow realgud-overlay-arrow2))
+ (realgud:follow-mark realgud-overlay-arrow2))
)
@@ -183,7 +183,7 @@ session which should also erase those fringe arrows."
"Goto the position stored in realgud-overlay-arrow3"
(interactive "")
(if realgud-overlay-arrow3
- (realgud:loc-follow realgud-overlay-arrow3))
+ (realgud:follow-mark realgud-overlay-arrow3))
)
(defun realgud-recenter-arrow1()
@@ -205,15 +205,15 @@ session which should also erase those fringe arrows."
(with-current-buffer-safe buffer
(if (and realgud-overlay-arrow3
(eq (marker-buffer realgud-overlay-arrow3) buffer))
- (realgud:loc-follow realgud-overlay-arrow3)
+ (realgud:follow-mark realgud-overlay-arrow3)
)
(if (and realgud-overlay-arrow2
(eq (marker-buffer realgud-overlay-arrow2) buffer))
- (realgud:loc-follow realgud-overlay-arrow2)
+ (realgud:follow-mark realgud-overlay-arrow2)
)
(if (and realgud-overlay-arrow1
(eq (marker-buffer realgud-overlay-arrow1) buffer))
- (realgud:loc-follow realgud-overlay-arrow1)
+ (realgud:follow-mark realgud-overlay-arrow1)
)
(redisplay)
)
diff --git a/realgud/common/run.el b/realgud/common/run.el
index 1108673..fc6268e 100644
--- a/realgud/common/run.el
+++ b/realgud/common/run.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -155,7 +155,7 @@ details of the error. The command buffer or nil is
returned."
(defun realgud:run-debugger (debugger-name query-cmdline-fn parse-cmd-args-fn
minibuffer-history
&optional opt-command-line
- no-reset)
+ no-reset opt-script-name)
"Invoke the a debugger and start the Emacs user interface.
String OPT-COMMAND-LINE specifies how to run DEBUGGER-NAME. You
@@ -174,7 +174,7 @@ Otherwise nil is returned.
(cmd-args (split-string-and-unquote cmd-str))
(parsed-args (funcall parse-cmd-args-fn cmd-args))
(script-args (caddr parsed-args))
- (script-name (car script-args))
+ (script-name (or opt-script-name (car script-args)))
(parsed-cmd-args
(remove-if 'nil (realgud:flatten parsed-args)))
)
diff --git a/realgud/common/send.el b/realgud/common/send.el
index 39ac519..c068c4f 100644
--- a/realgud/common/send.el
+++ b/realgud/common/send.el
@@ -116,11 +116,19 @@ results into the command buffer."
(defun realgud-send-command-invisible (command-str)
(realgud-send-command command-str (function realgud-send-command-process)))
+(defvar realgud-expand-format-overrides nil
+ "An alist of overrides for `realgud-expand-format'.
+Each element should have the form (KEY . VALUE). Key should be a
+single-character escape accepted by `realgud-expand-format';
+value should be a string. Every time %KEY is encountered in te
+string, it will be replaced by VALUE instead of being processed
+as usual. If VALUE is nil, the override is ignored.")
(defun realgud-expand-format (fmt-str &optional opt-str opt-buffer)
- "Expands commands format characters inside FMT-STRING using values
-from the debugging session. OPT-STR is an optional string.
-Some %-escapes in the string arguments are expanded. These are:
+ "Expands commands format characters inside FMT-STR.
+OPT-STR is an optional string (used with %p and %s). Values are
+taken from current buffer, or OPT-BUFFER if non-nil. Some
+%-escapes in the string arguments are expanded. These are:
%f -- Name without directory of current source file.
%F -- Name without directory or extension of current source file.
@@ -128,13 +136,12 @@ Some %-escapes in the string arguments are expanded.
These are:
%X -- Expanded name of current source file.
%d -- Directory of current source file.
%l -- Number of current source line.
- %p -- Numeric prefix argument converted to a string
- If no prefix argument %p is the null string.
%c -- Fully qualified class name derived from the expression
surrounding point.
- %s -- value of opt-str.
+ %p -- Value of OPT-STR, converted to string using `int-to-string'
+ %s -- Value of OPT-STR.
-"
+%p and %s are replaced by an empty string if OPT-STR is nil."
(let* ((buffer (or opt-buffer (current-buffer)))
(srcbuf (realgud-get-srcbuf buffer))
(src-file-name (and srcbuf (buffer-file-name srcbuf)))
@@ -148,6 +155,7 @@ Some %-escapes in the string arguments are expanded. These
are:
(concat
result (match-string 1 fmt-str)
(cond
+ ((cdr (assq key realgud-expand-format-overrides)))
((eq key ?d)
(or (and src-file-name
(file-name-directory src-file-name))
@@ -182,9 +190,9 @@ Some %-escapes in the string arguments are expanded. These
are:
;; (gud-read-address))
;; ((eq key ?c)
;; (gud-find-class srcbuf))
- ((eq key ?p) (if opt-str (int-to-string opt-str) ""))
- ((eq key ?s) opt-str)
- (t key)))))
+ ((eq key ?p) (if opt-str (int-to-string opt-str) ""))
+ ((eq key ?s) (or opt-str ""))
+ (t key)))))
(setq fmt-str (substring fmt-str (match-end 2))))
;; There might be text left in FMT-STR when the loop ends.
(concat result fmt-str)))
diff --git a/realgud/common/shortkey.el b/realgud/common/shortkey.el
index 987788f..ef5cb86 100644
--- a/realgud/common/shortkey.el
+++ b/realgud/common/shortkey.el
@@ -14,7 +14,7 @@
(declare-function realgud-cmdbuf?
'realgud-buffer-command)
(declare-function realgud:debugger-name-transform 'realgud-helper)
(declare-function realgud-get-cmdbuf 'realgud-buffer-helper)
-(declare-function realgud:loc-follow 'realgud-loc)
+(declare-function realgud:follow-mark 'realgud-follow)
(declare-function realgud-loc-hist-item-at 'realgud-lochist)
(declare-function realgud-cmdbuf-loc-hist 'realgud-command)
(declare-function realgud-populate-debugger-menu 'realgud-menu)
@@ -22,6 +22,7 @@
(declare-function realgud-populate-src-buffer-map-plain 'realgud-key)
(declare-function realgud-srcbuf-info-short-key?=, 'realgud-source)
(declare-function realgud-srcbuf-info-was-read-only?= 'realgud-source)
+(declare-function realgud-srcbuf-info-prev-local-map= 'realgud-source)
(declare-function realgud-srcbuf? 'realgud-buffer-source)
;; (defvar realgud::tool-bar-map) ;; fully defined in track-mode.el
@@ -42,6 +43,7 @@
(define-key map "8" 'realgud:goto-loc-hist-8)
(define-key map "9" 'realgud:goto-loc-hist-9)
(define-key map "b" 'realgud:cmd-break)
+ (define-key map "j" 'realgud:cmd-jump)
(define-key map "c" 'realgud:cmd-continue)
(define-key map "e" 'realgud:cmd-eval-dwim)
(define-key map "U" 'realgud:cmd-until)
@@ -103,58 +105,39 @@ minor mode is active.
))
(defun realgud-short-key-mode-setup (mode-on?)
- "Called when entering or leaving `realgud-short-key-mode'. Variable
-MODE-ON? a boolean which specifies if we are going into or out of this mode."
- (if (realgud-srcbuf?)
- (let* ((cmdbuf (realgud-get-cmdbuf))
- (shortkey-keymap (realgud-get-short-key-mode-map cmdbuf))
- )
-
- ;; If there's a shortkey keymap that is custom
- ;; for this debugger mode, use it.
- (when shortkey-keymap
- (cond
- (mode-on?
- (set (make-local-variable 'tool-bar-map) realgud:tool-bar-map)
- (use-local-map shortkey-keymap))
- ('t
- (kill-local-variable 'realgud:tool-bar-map)
- (use-local-map nil))
- ))
-
- ;; Ensure action only is performed when the state actually is toggled.
- ;; or when not read-only
- (when (or (not buffer-read-only)
- (not (eq (realgud-sget 'srcbuf-info 'short-key?) mode-on?)))
- ;; Save the current state, so we can determine when the
- ;; state is toggled in the future.
- (when (not (eq (realgud-sget 'srcbuf-info 'short-key?) mode-on?))
- (realgud-srcbuf-info-short-key?= mode-on?)
- (setq realgud-short-key-mode mode-on?)
- (if mode-on?
- ;; mode is being turned on.
- (progn
- (realgud-srcbuf-info-was-read-only?= buffer-read-only)
-
- ;; If there's a shortkey keymap that is custom
- ;; for this debugger mode, use it.
- (if shortkey-keymap (use-local-map shortkey-keymap))
-
- (local-set-key [m-insert] 'realgud-short-key-mode)
- (when realgud-srcbuf-lock (setq buffer-read-only t))
- (run-mode-hooks 'realgud-short-key-mode-hook))
- ;; mode is being turned off: restore read-only state.
- (setq buffer-read-only
- (realgud-sget 'srcbuf-info 'was-read-only?))))
- ;; (with-current-buffer-safe cmdbuf
- ;; (realgud-cmdbuf-info-src-shortkey?= mode-on?)
- ;; (realgud-cmdbuf-info-in-srcbuf?= mode-on?)
- ;; )
- ))
- (progn
- (setq realgud-short-key-mode nil)
- (error "buffer %s does not seem to be attached to a debugger"
- (buffer-name)))))
+ "Set up or tear down `realgud-short-key-mode'.
+MODE-ON? is a boolean indicating whether the mode should be
+turned on or off."
+ (setq realgud-short-key-mode mode-on?)
+ ;; When enabling, try to find a command buffer to attach to.
+ (when (and realgud-short-key-mode (not (realgud--ensure-attached)))
+ (setq realgud-short-key-mode nil))
+ ;; Now apply mode change
+ (cond
+ ;; Mode was just enabled
+ (realgud-short-key-mode
+ ;; Record info to restore it when disabling
+ (unless (equal (realgud-sget 'srcbuf-info 'short-key?)
realgud-short-key-mode)
+ (realgud-srcbuf-info-prev-local-map= (current-local-map))
+ (realgud-srcbuf-info-was-read-only?= buffer-read-only))
+ ;; Apply local map
+ (let ((keymap (realgud-get-short-key-mode-map (realgud-get-cmdbuf))))
+ (when keymap (use-local-map keymap)))
+ ;; Finish setting up
+ (set (make-local-variable 'tool-bar-map) realgud:tool-bar-map)
+ (local-set-key [m-insert] #'realgud-short-key-mode)
+ (setq buffer-read-only realgud-srcbuf-lock)
+ (run-mode-hooks 'realgud-short-key-mode-hook))
+ ;; Mode was just disabled
+ (t
+ (kill-local-variable 'tool-bar-map)
+ (when (realgud-srcbuf-info-set?)
+ ;; Restore previous state
+ (use-local-map (realgud-sget 'srcbuf-info 'prev-local-map))
+ (setq buffer-read-only (realgud-sget 'srcbuf-info 'was-read-only?)))))
+ ;; Record state
+ (when (realgud-srcbuf-info-set?)
+ (realgud-srcbuf-info-short-key?= realgud-short-key-mode)))
(defun realgud-short-key-mode-off ()
"Turn off `realgud-short-key-mode' in all buffers."
@@ -166,7 +149,7 @@ MODE-ON? a boolean which specifies if we are going into or
out of this mode."
(realgud-short-key-mode -1)))))
(defun realgud-populate-src-buffer-map (map)
- "Bind all common keys and menu used in the dbgr src buffers.
+ "Bind all common keys and menu used in src buffers.
This includes the keys bound to `realgud-key-prefix' (typically C-x
C-a)."
(realgud-populate-src-buffer-map-plain map)
@@ -183,7 +166,7 @@ C-a)."
(let* ((loc-hist (realgud-cmdbuf-loc-hist cmdbuf))
(loc (realgud-loc-hist-item-at loc-hist (- num)))
(loc-marker (realgud-loc-marker loc)))
- (realgud:loc-follow loc-marker))
+ (realgud:follow-mark loc-marker))
;; else
(message "No command buffer associated with this buffer")
)))
@@ -191,34 +174,32 @@ C-a)."
(defun realgud:goto-loc-hist-4 ()
"Go to position 4th from the newest position."
- (interactive "")
+ (interactive)
(realgud:goto-loc-hist 4))
(defun realgud:goto-loc-hist-5 ()
"Go to position 5th from the newest position."
- (interactive "")
+ (interactive)
(realgud:goto-loc-hist 5))
(defun realgud:goto-loc-hist-6 ()
- (interactive "")
+ "Go to position 6th from the newest position."
+ (interactive)
(realgud:goto-loc-hist 6))
(defun realgud:goto-loc-hist-7 ()
"Go to position 7th from the newest position."
- (interactive "")
+ (interactive)
(realgud:goto-loc-hist 7))
(defun realgud:goto-loc-hist-8 ()
"Go to position 8th from the newest position."
- (interactive "")
+ (interactive)
(realgud:goto-loc-hist 8))
(defun realgud:goto-loc-hist-9 ()
"Go to position 9th from the newest position."
- (interactive "")
+ (interactive)
(realgud:goto-loc-hist 9))
(provide-me "realgud-")
-
-;;; Local variables:
-;;; End:
diff --git a/realgud/common/track.el b/realgud/common/track.el
index 3cadf04..af62291 100644
--- a/realgud/common/track.el
+++ b/realgud/common/track.el
@@ -155,6 +155,16 @@ marks set in buffer-local variables to extract text"
(realgud-track-loc text (point-marker))
))
+(defun realgud:track-complain-if-not-in-cmd-buffer (&optional buf errorp)
+ "Complain if BUF (default: current buffer) is not a command buffer.
+With non-nil ERRORP, raise an exception. Otherwise, print a
+message."
+ (setq buf (or buf (current-buffer)))
+ (unless (realgud-cmdbuf? buf)
+ (funcall (if errorp #'error #'message)
+ "Buffer %s is not a debugger command buffer" buf)
+ t))
+
(defun realgud:track-from-region(from to &optional cmd-mark opt-cmdbuf
shortkey-on-tracing? no-warn-if-no-match?)
"Find and position a buffer at the location found in the marked region.
@@ -179,7 +189,7 @@ evaluating (realgud-cmdbuf-info-loc-regexp
realgud-cmdbuf-info)"
(bp-loc)
(cmdbuf (or opt-cmdbuf (current-buffer)))
)
- (if (realgud-cmdbuf? cmdbuf)
+ (unless (realgud:track-complain-if-not-in-cmd-buffer cmdbuf t)
(if (not (equal "" text))
(with-current-buffer cmdbuf
(if (realgud-sget 'cmdbuf-info 'divert-output?)
@@ -207,23 +217,18 @@ evaluating (realgud-cmdbuf-info-loc-regexp
realgud-cmdbuf-info)"
(or (not frame-num)
(eq frame-num (realgud-cmdbuf-pat
"top-frame-num")))))
(realgud-track-loc-action loc cmdbuf (not selected-frame)
- shortkey-on-tracing?)
+ shortkey-on-tracing?)
(realgud-cmdbuf-info-in-debugger?= 't)
- (realgud-cmdbuf-mode-line-update)
- )
- (progn
- (setq bp-loc (realgud-track-bp-delete text-sans-loc cmd-mark
cmdbuf))
- (if bp-loc
- (let ((src-buffer (realgud-loc-goto bp-loc)))
- (realgud-cmdbuf-add-srcbuf src-buffer cmdbuf)
- (with-current-buffer src-buffer
- (realgud-bp-del-info bp-loc)
- ))))
- )
- )
- )
- ;; else
- (error "Buffer %s is not a debugger command buffer" cmdbuf))
+ (realgud-cmdbuf-mode-line-update))
+ (dolist (bp-loc (realgud-track-bp-delete text-sans-loc
cmd-mark cmdbuf))
+ (let ((src-buffer (realgud-loc-goto bp-loc)))
+ (realgud-cmdbuf-add-srcbuf src-buffer cmdbuf)
+ (with-current-buffer src-buffer
+ (realgud-bp-del-info bp-loc)
+ ))))
+ )
+ )
+ )
)
)
@@ -378,7 +383,7 @@ Otherwise return nil."
;; can accomodate a family of debuggers -- one at a time -- for the
;; buffer process.
- (if (realgud-cmdbuf?)
+ (unless (realgud:track-complain-if-not-in-cmd-buffer)
(let
((loc-regexp (or opt-regexp
(realgud-sget 'cmdbuf-info 'loc-regexp)))
@@ -422,10 +427,8 @@ Otherwise return nil."
;; else
(and (message
(concat "Buffer variable for regular expression pattern not"
- " given and not passed as a parameter")) nil)))
- ;; else
- (and (message "Current buffer %s is not a debugger command buffer"
- (current-buffer)) nil)
+ " given and not passed as a parameter"))
+ nil)))
)
)
@@ -443,8 +446,8 @@ Otherwise return nil. CMD-MARK is set in the realgud-loc
object created.
(setq cmdbuf (or cmdbuf (current-buffer)))
(with-current-buffer cmdbuf
- (if (realgud-cmdbuf?)
- (let* ((loc-pat (realgud-cmdbuf-pat "brkpt-set")))
+ (unless (realgud:track-complain-if-not-in-cmd-buffer cmdbuf t)
+ (let* ((loc-pat (realgud-cmdbuf-pat "brkpt-set")))
(if loc-pat
(let ((bp-num-group (realgud-loc-pat-num loc-pat))
(loc-regexp (realgud-loc-pat-regexp loc-pat))
@@ -486,18 +489,15 @@ Otherwise return nil. CMD-MARK is set in the realgud-loc
object created.
loc-or-error)))
nil)))
nil))
- nil))
- (and (message "Current buffer %s is not a debugger command buffer"
- (current-buffer)) nil)
+ nil))
)
)
)
(defun realgud-track-bp-delete(text &optional cmd-mark cmdbuf ignore-file-re)
- "Do regular-expression matching see if a breakpoint has been
-deleted inside string TEXT. If we match, we will return the
-breakpoint location of the breakpoint found from in command
-buffer. Otherwise nil is returned."
+ "Do regular-expression matching to see if a breakpoint has been
+deleted inside string TEXT. Return a list of breakpoint locations
+of the breakpoints found in command buffer."
; NOTE: realgud-cmdbuf-info is a buffer variable local to the process
; running the debugger. It contains a realgud-cmdbuf-info "struct". In
@@ -507,37 +507,26 @@ buffer. Otherwise nil is returned."
(setq cmdbuf (or cmdbuf (current-buffer)))
(with-current-buffer cmdbuf
- (if (realgud-cmdbuf?)
- (let* ((loc-pat (realgud-cmdbuf-pat "brkpt-del"))
- (found-loc nil)
- )
- (if loc-pat
- (let ((bp-num-group (realgud-loc-pat-num loc-pat))
- (loc-regexp (realgud-loc-pat-regexp loc-pat))
- (loc))
- (if (and loc-regexp (string-match loc-regexp text))
- (let* ((bp-num (string-to-number (match-string bp-num-group
text)))
- (info realgud-cmdbuf-info)
- (bp-list (realgud-cmdbuf-info-bp-list info))
- )
- (while (and (not found-loc) (setq loc (car-safe bp-list)))
- (setq bp-list (cdr bp-list))
- (if (eq (realgud-loc-num loc) bp-num)
- (progn
- (setq found-loc loc)
- ;; Remove loc from breakpoint list
- (realgud-cmdbuf-info-bp-list=
- (remove loc (realgud-cmdbuf-info-bp-list info))))
- ))
- ;; return the location:
- found-loc)
- nil))
- nil))
- (and (message "Current buffer %s is not a debugger command buffer"
- (current-buffer)) nil)
- )
- )
-)
+ (unless (realgud:track-complain-if-not-in-cmd-buffer cmdbuf t)
+ (let* ((loc-pat (realgud-cmdbuf-pat "brkpt-del")))
+ (when loc-pat
+ (let ((bp-num-group (realgud-loc-pat-num loc-pat))
+ (loc-regexp (realgud-loc-pat-regexp loc-pat)))
+ (when (and loc-regexp (string-match loc-regexp text))
+ (let* ((bp-nums-str (match-string bp-num-group text))
+ (bp-num-strs (split-string bp-nums-str "[^0-9]+" t))
+ (bp-nums (mapcar #'string-to-number bp-num-strs))
+ (info realgud-cmdbuf-info)
+ (all-bps (realgud-cmdbuf-info-bp-list info))
+ (found-locs nil))
+ (dolist (loc all-bps)
+ (when (memq (realgud-loc-num loc) bp-nums)
+ (push loc found-locs)
+ ;; Remove loc from breakpoint list
+ (realgud-cmdbuf-info-bp-list=
+ (remove loc (realgud-cmdbuf-info-bp-list info)))))
+ ;; return the locations
+ found-locs))))))))
(defun realgud-track-bp-enable-disable(text loc-pat enable? &optional cmdbuf)
"Do regular-expression matching see if a breakpoint has been enabled or
disabled inside
diff --git a/realgud/debugger/bashdb/init.el b/realgud/debugger/bashdb/init.el
index 1a34b81..49a58dd 100644
--- a/realgud/debugger/bashdb/init.el
+++ b/realgud/debugger/bashdb/init.el
@@ -101,4 +101,7 @@ realgud-loc-pat struct")
(setf (gethash "quit" realgud:bashdb-command-hash) "quit")
(setf (gethash "until" realgud:bashdb-command-hash) "continue %l")
+;; Unsupported features:
+(setf (gethash "jump" realgud:bashdb-command-hash) "*not-implemented*")
+
(provide-me "realgud:bashdb-")
diff --git a/realgud/debugger/gdb/init.el b/realgud/debugger/gdb/init.el
index adef823..8b7ac86 100644
--- a/realgud/debugger/gdb/init.el
+++ b/realgud/debugger/gdb/init.el
@@ -70,24 +70,12 @@ realgud-loc-pat struct")
;; response.
;; For example:
;; Deleted breakpoint 1
+;; Deleted breakpoints 1 2 3 4
(setf (gethash "brkpt-del" realgud:gdb-pat-hash)
(make-realgud-loc-pat
- :regexp (format "^Deleted breakpoint %s.\n"
- realgud:regexp-captured-num)
+ :regexp "^Deleted breakpoints? \\(\\([0-9]+ *\\)+\\)\n"
:num 1))
-
-;; Regular expression that describes a debugger "delete" (breakpoint)
-;; list response.
-;; For example:
-;; Deleted breakpoints 1 2 3
-(setf (gethash "brkpts-del" realgud:gdb-pat-hash)
- (make-realgud-loc-pat
- :regexp (format "^Deleted breakpoints %s.\n"
- realgud:regexp-captured-num)
- :string 1))
-
-
(defconst realgud:gdb-frame-start-regexp
"\\(?:^\\|\n\\)")
diff --git a/realgud/debugger/ipdb/core.el b/realgud/debugger/ipdb/core.el
index e8a1a8c..1bd3b46 100644
--- a/realgud/debugger/ipdb/core.el
+++ b/realgud/debugger/ipdb/core.el
@@ -19,6 +19,7 @@
(eval-when-compile (require 'cl))
+(require 'comint)
(require 'load-relative)
(require-relative-list '("../../common/track"
"../../common/core"
@@ -31,6 +32,7 @@
(declare-function realgud-parse-command-arg 'realgud-core)
(declare-function realgud-query-cmdline 'realgud-core)
(declare-function realgud-suggest-invocation 'realgud-core)
+(declare-function realgud-get-cmdbuf 'realgud-buffer-helper)
;; FIXME: I think the following could be generalized and moved to
;; realgud-... probably via a macro.
@@ -42,7 +44,7 @@
(easy-mmode-defmap ipdb-minibuffer-local-map
'(("\C-i" . comint-dynamic-complete-filename))
- "Keymap for minibuffer prompting of gud startup command."
+ "Keymap for minibuffer prompting of debugger startup command."
:inherit minibuffer-local-map)
;; FIXME: I think this code and the keymaps and history
@@ -54,6 +56,15 @@
'realgud:ipdb-minibuffer-history
opt-debugger))
+;; FIXME: I think this code and the keymaps and history
+;; variable chould be generalized, perhaps via a macro.
+(defun ipdb-remote-query-cmdline ()
+ (realgud-query-cmdline
+ 'ipdb-suggest-invocation
+ ipdb-minibuffer-local-map
+ 'realgud:ipdb-remote-minibuffer-history
+ "telnet"))
+
(defun ipdb-parse-cmd-args (orig-args)
"Parse command line ORIG-ARGS for the annotate level and name of script to
debug.
@@ -161,16 +172,20 @@ For example for the following input:
'(telnet localhost 6900))
we might return:
- ((\"telnet\" \"localhost\" \"6900\") (\"ipdb\") (\"\") nil)
+ ((\"telnet\" \"localhost\" \"6900\") nil nil nil)
Note that the script name path has been expanded via `expand-file-name'.
"
- (list orig-args '("ipdb") '("") nil)
+ (list orig-args '("ipdb") nil nil nil)
)
;; To silence Warning: reference to free variable
(defvar realgud:ipdb-command-name)
+(defun ipdb-remote-suggest-invocation (debugger-name)
+ "Suggest an ipdb command invocation via `realgud-suggest-invocaton'"
+ "telnet 127.0.0.1 4000")
+
(defun ipdb-suggest-invocation (debugger-name)
"Suggest a ipdb command invocation via `realgud-suggest-invocaton'"
(realgud-suggest-invocation realgud:ipdb-command-name
@@ -195,63 +210,42 @@ breakpoints, etc.)."
;; (setcdr (assq 'ipdb-debugger-support-minor-mode minor-mode-map-alist)
;; ipdb-debugger-support-minor-mode-map-when-deactive))
+(defconst realgud:ipdb-complete-script
+ (concat
+ "from IPython import get_ipython;"
+ "comp = '''%s''';"
+ "prefix, candidates = get_ipython().Completer.complete(line_buffer = comp);"
+ "print(';'.join([prefix] + candidates))"))
+
(defun realgud:ipdb-backend-complete ()
"Send a command to the ipdb buffer and parse the output.
The idea here is to rely on the
`comint-redirect-send-command-to-process' function to send a
-python command that will return the completions for the given
-input. Specifically, here is the python code:
-
->>> from IPython import get_ipython
->>> comp = '''%s'''
->>> ';'.join(get_ipython().complete(comp.split()[-1] if len(comp)else '',
comp)[1])
-
-This returns a list of strings that match the current word (hence
-why we need the `bounds-of-thing-at-point')."
+python command `realgud:ipdb-complete-script' that will return
+the completions for the given input."
(interactive)
(let ((buffer (current-buffer))
(cmdbuf (realgud-get-cmdbuf))
(process (get-buffer-process (current-buffer)))
- (end-position (point))
- (bounds (bounds-of-thing-at-point 'word))
- )
+ (start-pos (save-excursion (comint-goto-process-mark) (point)))
+ (end-pos (point)))
;; get the input string
- (save-excursion
- (comint-goto-process-mark)
- (let* ((start-position (point))
- (input-str (buffer-substring-no-properties start-position
- end-position))
- )
- (when (not (= (length input-str) 0))
- (let* ((python-str (concat
- "from IPython import get_ipython; "
- "comp = '''%s''';"
- "';'.join(get_ipython()"
- ".complete(comp.split()[-1] if len(comp)"
- "else '', comp)[1])"))
- (command-str (format python-str input-str))
- (output-str (with-temp-buffer
- (let ((tmpbuf (current-buffer)))
- (comint-redirect-send-command-to-process
- command-str tmpbuf process nil t)
- ;; Wait for the process to complete
- (set-buffer (process-buffer process))
- (while (null comint-redirect-completed)
- (accept-process-output nil 0 5)) ;; wait 5ms
- (set-buffer tmpbuf)
- (buffer-substring (1+ (point-min))
- (1- (1- (point-max)))))))
- )
-
- ;; we need to change the start position to that of the current word
- ;; since python returns just the word (and not the whole line)
- (if (car bounds) (setq start-position (car bounds)))
-
- (list start-position
- end-position
- (split-string output-str ";"))))))))
+ (when (> end-pos start-pos)
+ (let* ((input-str (buffer-substring-no-properties start-pos end-pos))
+ (command-str (format realgud:ipdb-complete-script input-str))
+ (output-str (with-temp-buffer
+ (comint-redirect-send-command-to-process
+ command-str (current-buffer) process nil t)
+ ;; Wait for the process to complete
+ (with-current-buffer (process-buffer process)
+ (while (null comint-redirect-completed)
+ (accept-process-output nil 0 5))) ;; wait 5ms
+ (buffer-substring (point-min) (1- (point-max)))))
+ (output-values (split-string output-str ";"))
+ (prefix (car output-values)))
+ (list (- end-pos (length prefix)) end-pos (cdr output-values))))))
(defun realgud:ipdb-completion-at-point ()
(let ((ipdb (realgud:ipdb-backend-complete)))
diff --git a/realgud/debugger/ipdb/init.el b/realgud/debugger/ipdb/init.el
index 96ef9e3..07ae8ad 100644
--- a/realgud/debugger/ipdb/init.el
+++ b/realgud/debugger/ipdb/init.el
@@ -71,10 +71,11 @@ realgud-loc-pat struct")
:file-group 2
:line-group 3))
-;; Regular expression that describes a "delete breakpoint" line
+;; Regular expression that describes a "delete breakpoint" line
+;; Python 3 includes a file name and line number; Python 2 doesn't
(setf (gethash "brkpt-del" realgud:ipdb-pat-hash)
(make-realgud-loc-pat
- :regexp "^Deleted breakpoint \\([0-9]+\\)\n"
+ :regexp "^Deleted breakpoint \\([0-9]+\\)"
:num 1))
(setf (gethash "font-lock-keywords" realgud:ipdb-pat-hash)
diff --git a/realgud/debugger/ipdb/ipdb.el b/realgud/debugger/ipdb/ipdb.el
index 447aeef..27dff12 100644
--- a/realgud/debugger/ipdb/ipdb.el
+++ b/realgud/debugger/ipdb/ipdb.el
@@ -109,7 +109,7 @@ fringe and marginal icons.
(let ((cmd-buf (realgud:run-debugger "ipdb" 'ipdb-remote-query-cmdline
'ipdb-parse-remote-cmd-args
'realgud:ipdb-remote-minibuffer-history
- opt-cmd-line no-reset))
+ opt-cmd-line no-reset "remote-ipdb"))
)
(add-hook 'completion-at-point-functions
'realgud:ipdb-completion-at-point nil t)
diff --git a/realgud/debugger/nodejs/init.el b/realgud/debugger/nodejs/init.el
index 118eb22..e20211e 100644
--- a/realgud/debugger/nodejs/init.el
+++ b/realgud/debugger/nodejs/init.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -161,4 +161,7 @@ realgud-loc-pat struct")
(setf (gethash "step" realgud:nodejs-command-hash) "step")
(setf (gethash "next" realgud:nodejs-command-hash) "next")
+;; Unsupported features:
+(setf (gethash "jump" realgud:nodejs-command-hash) "*not-implemented*")
+
(provide-me "realgud:nodejs-")
diff --git a/realgud/debugger/pdb/core.el b/realgud/debugger/pdb/core.el
index 520c7c7..18ad431 100644
--- a/realgud/debugger/pdb/core.el
+++ b/realgud/debugger/pdb/core.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -41,7 +41,7 @@
(easy-mmode-defmap pdb-minibuffer-local-map
'(("\C-i" . comint-dynamic-complete-filename))
- "Keymap for minibuffer prompting of gud startup command."
+ "Keymap for minibuffer prompting of debugger startup command."
:inherit minibuffer-local-map)
;; FIXME: I think this code and the keymaps and history
@@ -53,6 +53,15 @@
'realgud:pdb-minibuffer-history
opt-debugger))
+;; FIXME: I think this code and the keymaps and history
+;; variable chould be generalized, perhaps via a macro.
+(defun pdb-remote-query-cmdline (not-used)
+ (realgud-query-cmdline
+ 'pdb-remote-suggest-invocation
+ pdb-minibuffer-local-map
+ 'realgud:pdb-remote-minibuffer-history
+ "telnet"))
+
(defun pdb-parse-cmd-args (orig-args)
"Parse command line ORIG-ARGS for the annotate level and name of script to
debug.
@@ -160,16 +169,22 @@ For example for the following input:
'(telnet localhost 6900))
we might return:
- ((\"telnet\" \"localhost\" \"6900\") (\"pdb\") (\"\") nil)
+ ((\"telnet\" \"localhost\" \"6900\") nil nil nil)
Note that the script name path has been expanded via `expand-file-name'.
"
- (list orig-args '("pdb") '("") nil)
+ (list orig-args nil nil nil)
)
;; To silence Warning: reference to free variable
(defvar realgud:pdb-command-name)
+(defun pdb-remote-suggest-invocation (debugger-name)
+ "Suggest a pdb command invocation via `realgud-suggest-invocaton'"
+ "telnet 127.0.0.1 4000"
+ )
+
+
(defun pdb-suggest-invocation (debugger-name)
"Suggest a pdb command invocation via `realgud-suggest-invocaton'"
(realgud-suggest-invocation realgud:pdb-command-name
diff --git a/realgud/debugger/pdb/init.el b/realgud/debugger/pdb/init.el
index 9aa5b0b..ac346b8 100644
--- a/realgud/debugger/pdb/init.el
+++ b/realgud/debugger/pdb/init.el
@@ -71,9 +71,10 @@ realgud-loc-pat struct")
:line-group 3))
;; Regular expression that describes a "delete breakpoint" line
+;; Python 3 includes a file name and line number; Python 2 doesn't
(setf (gethash "brkpt-del" realgud:pdb-pat-hash)
(make-realgud-loc-pat
- :regexp "^Deleted breakpoint \\([0-9]+\\)\n"
+ :regexp "^Deleted breakpoint \\([0-9]+\\)"
:num 1))
(setf (gethash "font-lock-keywords" realgud:pdb-pat-hash)
diff --git a/realgud/debugger/pdb/pdb.el b/realgud/debugger/pdb/pdb.el
index 4e907b7..1946478 100644
--- a/realgud/debugger/pdb/pdb.el
+++ b/realgud/debugger/pdb/pdb.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -99,7 +99,7 @@ fringe and marginal icons.
(realgud:run-debugger "pdb" 'pdb-remote-query-cmdline
'pdb-parse-remote-cmd-args
'realgud:pdb-remote-minibuffer-history
- opt-cmd-line no-reset)
+ opt-cmd-line no-reset "remote-pdb")
)
diff --git a/realgud/debugger/perldb/init.el b/realgud/debugger/perldb/init.el
index 537703d..27c47c0 100644
--- a/realgud/debugger/perldb/init.el
+++ b/realgud/debugger/perldb/init.el
@@ -1,4 +1,19 @@
-;;; Copyright (C) 2011, 2014-2015 Rocky Bernstein <address@hidden>
+;;; Copyright (C) 2011, 2014-2016 Free Software Foundation, Inc
+
+;; Author: Rocky Bernstein <address@hidden>
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
+;;; Regular expressions for nodejs Javascript debugger.
;;; Stock Perl debugger perldb
(eval-when-compile (require 'cl))
@@ -119,4 +134,12 @@ realgud-loc-pat struct")
(setf (gethash "until" realgud:perldb-command-hash) "c %l")
(setf (gethash "perldb" realgud-command-hash) realgud:perldb-command-hash)
+;; Unsupported features:
+(setf (gethash "frame" realgud:perldb-command-hash) "*not-implemented*")
+(setf (gethash "shell" realgud:perldb-command-hash) "*not-implemented*")
+(setf (gethash "up" realgud:perldb-command-hash) "*not-implemented*")
+(setf (gethash "down" realgud:perldb-command-hash) "*not-implemented*")
+(setf (gethash "jump" realgud:perldb-command-hash) "*not-implemented*")
+(setf (gethash "kill" realgud:perldb-command-hash) "*not-implemented*")
+
(provide-me "realgud:perldb-")
diff --git a/realgud/debugger/remake/init.el b/realgud/debugger/remake/init.el
index d2888c1..fbaa643 100644
--- a/realgud/debugger/remake/init.el
+++ b/realgud/debugger/remake/init.el
@@ -1,4 +1,18 @@
-;;; Copyright (C) 2011, 2014 Rocky Bernstein <address@hidden>
+;; Copyright (C) 2011, 2014, 2016 Free Software Foundation, Inc
+;; Author: Rocky Bernstein <address@hidden>
+
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Regular expressions for GNU Make debugger: remake
(eval-when-compile (require 'cl))
@@ -131,5 +145,7 @@ backtrace listing.")
(setf (gethash "eval" realgud:remake-command-hash) "expand %s")
(setf (gethash "remake" realgud-command-hash) realgud:remake-command-hash)
+;; Unsupported features:
+(setf (gethash "jump" realgud:remake-command-hash) "*not-implemented*")
(provide-me "realgud:remake-")
diff --git a/realgud/debugger/trepan.pl/init.el
b/realgud/debugger/trepan.pl/init.el
index 0d9e744..0cbb9ab 100644
--- a/realgud/debugger/trepan.pl/init.el
+++ b/realgud/debugger/trepan.pl/init.el
@@ -274,4 +274,7 @@ backtrace listing.")
(setf (gethash realgud:trepanpl-debugger-name
realgud-command-hash) realgud:trepanpl-command-hash)
+;; Unsupported features:
+(setf (gethash "jump" realgud:trepanpl-command-hash) "*not-implemented*")
+
(provide-me "realgud:trepanpl-")
diff --git a/realgud/debugger/trepanjs/init.el
b/realgud/debugger/trepanjs/init.el
index 77c7da6..4caf050 100644
--- a/realgud/debugger/trepanjs/init.el
+++ b/realgud/debugger/trepanjs/init.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015-2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -142,5 +142,9 @@ realgud-loc-pat struct")
;; do step 1 and trepanjs doesn't handle this. Or when it does,
;; it will probably look like step(1)
(setf (gethash "eval" realgud:trepanjs-command-hash) "eval('%s')")
+(setf (gethash "quit" realgud:trepanjs-command-hash) "quit()")
+
+;; Unsupported features:
+(setf (gethash "kill" realgud:trepanjs-command-hash) "*not-implemented*")
(provide-me "realgud:trepanjs-")
diff --git a/realgud/debugger/zshdb/init.el b/realgud/debugger/zshdb/init.el
index f2fd9b5..8c0a88e 100644
--- a/realgud/debugger/zshdb/init.el
+++ b/realgud/debugger/zshdb/init.el
@@ -1,4 +1,4 @@
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015, 2016 Free Software Foundation, Inc
;; Author: Rocky Bernstein <address@hidden>
@@ -99,4 +99,7 @@ realgud-loc-pat struct")
(setf (gethash "quit" realgud:zshdb-command-hash) "quit")
(setf (gethash "until" realgud:zshdb-command-hash) "continue %l")
+;; Unsupported features:
+(setf (gethash "jump" realgud:zshdb-command-hash) "*not-implemented*")
+
(provide-me "realgud:zshdb-")
diff --git a/realgud/lang/posix-shell.el b/realgud/lang/posix-shell.el
index f929d07..4f006d2 100644
--- a/realgud/lang/posix-shell.el
+++ b/realgud/lang/posix-shell.el
@@ -103,7 +103,7 @@ traceback) line." )
;; Removed 1 breakpoint(s).
(defconst realgud:POSIX-debugger-brkpt-del-pat
(make-realgud-loc-pat
- :regexp (format "^Deleted breakpoint %s.\n"
+ :regexp (format "^Deleted breakpoint %s\n"
realgud:regexp-captured-num)
:num 1))
diff --git a/realgud/lang/python.el b/realgud/lang/python.el
index e3ae1cf..3737b9f 100644
--- a/realgud/lang/python.el
+++ b/realgud/lang/python.el
@@ -83,7 +83,7 @@ traceback) line." )
;; Regular expression that describes a "breakpoint set" line
(defconst realgud:python-trepan-brkpt-set-pat
(make-realgud-loc-pat
- :regexp "^Breakpoint \\([0-9]+\\) set at line \\([0-9]+\\)[ \t\n]+of file
\\(.+\\)\\(\n\\|$\\)"
+ :regexp "^Breakpoint \\([0-9]+\\) set at line \\([0-9]+\\)[ \t\n]+of file[
\t\n]+\\(.+\\)\\(\n\\|$\\)"
:num 1
:file-group 3
:line-group 2))
diff --git a/test/Makefile.am b/test/Makefile.am
index c0e7ede..c56f333 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -50,11 +50,11 @@ check-elget: $(EL_GET_CHECK_FILES)
#: Run all tests with minimum verbosity
check-short:
- $(MAKE) check 2>&1 | ruby ../make-check-filter.rb
+ $(MAKE) check 2>&1 | ruby make-check-filter.rb
#: Run all tests with minimum verbosity via el-get
check-short-elget:
- $(MAKE) check-elget 2>&1 | ruby ../make-check-filter.rb
+ $(MAKE) check-elget 2>&1 | ruby make-check-filter.rb
test-%.run:
(cd $(top_srcdir)/test && $(EMACS) --batch --no-site-file --no-splash
--load $(@:.run=.el))
diff --git a/test/test-regexp-bashdb.el b/test/test-regexp-bashdb.el
index 9d84ee3..5e34b0f 100644
--- a/test/test-regexp-bashdb.el
+++ b/test/test-regexp-bashdb.el
@@ -112,7 +112,7 @@
(match-end file-group)))
(note "breakpoint delete matching")
-(setq test-text "Deleted breakpoint 1.\n")
+(setq test-text "Deleted breakpoint 1\n")
(assert-t (numberp (loc-match test-text bp-del-pat)) "breakpoint delete
matching")
(note "breakpoint enable matching")
diff --git a/test/test-regexp-zshdb.el b/test/test-regexp-zshdb.el
index ee511b3..1ffecad 100644
--- a/test/test-regexp-zshdb.el
+++ b/test/test-regexp-zshdb.el
@@ -18,7 +18,6 @@
(eval-when-compile
(defvar file-group)
(defvar frame-re)
- (defvar frame-pat)
(defvar line-group)
(defvar num-group)
(defvar test-pos)
@@ -29,10 +28,11 @@
(defvar test-text)
(defvar brkpt-del)
(defvar bp-del-pat)
- (defvar bp-enable-pat)
- (defvar bp-disable-pat)
)
+(set (make-local-variable 'bp-del-pat)
+ (gethash "brkpt-del" realgud:zshdb-pat-hash))
+
(setq prompt-pat (gethash "prompt" realgud:zshdb-pat-hash))
(setq frame-pat (gethash "debugger-backtrace" realgud:zshdb-pat-hash))
@@ -103,7 +103,7 @@
(match-end line-group)))
(note "breakpoint delete matching")
-(setq test-text "Deleted breakpoint 1.\n")
+(setq test-text "Deleted breakpoint 1\n")
(assert-t (numberp (loc-match test-text bp-del-pat)) "breakpoint delete
matching")
(note "breakpoint enable matching")
- [elpa] master 245ca79 090/215: Redo previous commit handle base-variable determination from debugger name. We now do it via a hash table where entries are set in <debugger>/init.el Cleanup of old code is still needed., (continued)
- [elpa] master 245ca79 090/215: Redo previous commit handle base-variable determination from debugger name. We now do it via a hash table where entries are set in <debugger>/init.el Cleanup of old code is still needed., Rocky Bernstein, 2016/07/30
- [elpa] master 055dfa0 102/215: Move older, lesser-used debuggers to another repo, Rocky Bernstein, 2016/07/30
- [elpa] master 434e18c 183/215: Update Travis links, Rocky Bernstein, 2016/07/30
- [elpa] master 06ecc45 086/215: Add C-c ! d in a command buffer to get from a debugger location line in, Rocky Bernstein, 2016/07/30
- [elpa] master f8d36ba 198/215: Don't bind standard keys when disabled by config (#131), Rocky Bernstein, 2016/07/30
- [elpa] master 4cdbc0e 169/215: Further refactor cmds.el, Rocky Bernstein, 2016/07/30
- [elpa] master 26e67d6 211/215: Finish FSF Copyright assignments, Rocky Bernstein, 2016/07/30
- [elpa] master 99a825e 180/215: Revert "Revert "Manually generate "recursive" autoloads for subdirectories"", Rocky Bernstein, 2016/07/30
- [elpa] master ef21fa2 181/215: Merge pull request #121 from realgud/revert-95-revert-94-84-fix-autoloads, Rocky Bernstein, 2016/07/30
- [elpa] master 806f217 186/215: Merge branch 'master' into 103-jump, Rocky Bernstein, 2016/07/30
- [elpa] master 2068170 195/215: Merge branch 'master' into enable-disable,
Rocky Bernstein <=
- [elpa] master 1a0f2f9 214/215: Add 'packages/realgud/' from commit 'b7a7fe924217931332915d457928c6851db4a636', Rocky Bernstein, 2016/07/30