emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master eee3112 089/215: track.el: Allow us to separate stem varia


From: Rocky Bernstein
Subject: [elpa] master eee3112 089/215: track.el: Allow us to separate stem variable name to get debugger config from debugger name. This will make it easier
Date: Sat, 30 Jul 2016 14:48:56 +0000 (UTC)

branch: master
commit eee3112dd792326850bd29584a64ab0758731781
Author: rocky <address@hidden>
Commit: rocky <address@hidden>

    track.el: Allow us to separate stem variable name to get debugger config 
from debugger name. This will make it easier
---
 realgud/common/helper.el           |    6 +++---
 realgud/common/track.el            |   38 ++++++++++++++++++++++--------------
 realgud/debugger/gdb/gdb.el        |    2 +-
 realgud/debugger/gdb/track-mode.el |    4 ++--
 realgud/debugger/jdb/track-mode.el |    4 ++--
 test/test-common-helper.el         |    2 +-
 6 files changed, 32 insertions(+), 24 deletions(-)

diff --git a/realgud/common/helper.el b/realgud/common/helper.el
index 26054a0..9de9616 100644
--- a/realgud/common/helper.el
+++ b/realgud/common/helper.el
@@ -1,4 +1,4 @@
-;;; Copyright (C) 2010, 2014 Rocky Bernstein <address@hidden>
+;;; Copyright (C) 2010, 2014, 2016 Rocky Bernstein <address@hidden>
 ;;; Miscellaneous utility functions
 (require 'load-relative)
 
@@ -27,8 +27,8 @@ function FN-SYM."
   (let ((debugger-name-short
         (file-name-sans-extension (file-name-nondirectory debugger-name))))
     (cond
-     ((equal debugger-name-short "gdb") "realgud:gdb")
-     ((equal debugger-name-short "jdb") "realgud:jdb")
+     ;; ((equal debugger-name-short "gdb") "realgud:gdb")
+     ;; ((equal debugger-name-short "jdb") "realgud:jdb")
      ((equal debugger-name-short "tortoise") "gub")
      ((or (equal debugger-name "trepan.pl")
          (equal debugger-name-short "trepanpl"))
diff --git a/realgud/common/track.el b/realgud/common/track.el
index 360d7fe..93b6bac 100644
--- a/realgud/common/track.el
+++ b/realgud/common/track.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>
 
@@ -642,30 +642,38 @@ find a location. non-nil if we can find a location.
       ))
     )
 
-(defun realgud:track-set-debugger (debugger-name)
-  "Set debugger name and information associated with that debugger for
-the buffer process. This info is returned or nil if we can't find a
-debugger with that information"
-  ;; FIXME: turn in to fn which can be used by realgud-backtrack-set-debugger
+(defun realgud:track-set-debugger (debugger-name &optional 
opt-base-variable-name)
+  "Set debugger name and information associated with that
+debugger for the buffer process. This info is returned or nil if
+we can't find a debugger with that information. OPT-BASE-VARIABLE-NAME
+is the the base name in realgud where info about debuggers is stored. 
Sometimes it is
+the same thing as the debugger as it is for. 
+For example for
+'pry' it might be 'realgud-pry'. If OPT-BASE-VARIABLE-NAME is not
+supplied, we'll use the debugger name if that works and some
+built-in transforms from `realgud:debugger-name-transform
+debugger-name`.
+"
+  ;; FIXME: turn into fn which can be used by realgud-backtrack-set-debugger
   (interactive
    (list (completing-read "Debugger name: " realgud-pat-hash)))
-
-  (let ((regexp-hash (gethash debugger-name realgud-pat-hash))
-       (command-hash (gethash debugger-name realgud-command-hash))
-       (transform-name debugger-name)
+  (let* ((base-variable-name (or opt-base-variable-name debugger-name))
+         (regexp-hash (gethash base-variable-name realgud-pat-hash))
+         (command-hash (gethash base-variable-name realgud-command-hash))
        )
     (unless regexp-hash
-      (setq transform-name (realgud:debugger-name-transform debugger-name))
-      (setq regexp-hash (gethash transform-name realgud-pat-hash))
-      (setq command-hash (gethash transform-name realgud-command-hash))
+      ;; FIXME: phase out realgud:debugger-name-transform
+      (setq base-variable-name (realgud:debugger-name-transform debugger-name))
+      (setq regexp-hash (gethash base-variable-name realgud-pat-hash))
+      (setq command-hash (gethash base-variable-name realgud-command-hash))
       )
     (if regexp-hash
        (let* ((prefix (realgud:debugger-name-transform debugger-name))
               (mode-name (concat " " (capitalize prefix) "-Track"))
               (specific-track-mode (intern (concat prefix "-track-mode")))
               )
-         (realgud-cmdbuf-init (current-buffer) transform-name regexp-hash
-                           command-hash)
+         (realgud-cmdbuf-init (current-buffer) base-variable-name regexp-hash
+                               command-hash)
          (if (and (not (eval specific-track-mode))
                   (functionp specific-track-mode))
              (funcall specific-track-mode 't))
diff --git a/realgud/debugger/gdb/gdb.el b/realgud/debugger/gdb/gdb.el
index 892d8af..f8802c6 100644
--- a/realgud/debugger/gdb/gdb.el
+++ b/realgud/debugger/gdb/gdb.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>
 
diff --git a/realgud/debugger/gdb/track-mode.el 
b/realgud/debugger/gdb/track-mode.el
index e0c5a54..683c0ee 100644
--- a/realgud/debugger/gdb/track-mode.el
+++ b/realgud/debugger/gdb/track-mode.el
@@ -1,6 +1,6 @@
 ;;; track-mode.el ---
 
-;; Copyright (C) 2015 Free Software Foundation, Inc
+;; Copyright (C) 2015-2016 Free Software Foundation, Inc
 
 ;; Author: Rocky Bernstein <address@hidden>
 
@@ -63,7 +63,7 @@ Key bindings:
   :keymap realgud:gdb-track-mode-map
   (if realgud:gdb-track-mode
       (progn
-       (realgud:track-set-debugger "gdb")
+       (realgud:track-set-debugger "gdb" "realgud:gdb")
         (realgud:gdb-track-mode-hook)
         (realgud:track-mode-enable))
     (progn
diff --git a/realgud/debugger/jdb/track-mode.el 
b/realgud/debugger/jdb/track-mode.el
index fcdfa89..f6c1d1d 100644
--- a/realgud/debugger/jdb/track-mode.el
+++ b/realgud/debugger/jdb/track-mode.el
@@ -1,4 +1,4 @@
-;;; Copyright (C) 2015 Rocky Bernstein <address@hidden>
+;;; Copyright (C) 2015-2016 Rocky Bernstein <address@hidden>
 ;;; Java "jdb" Debugger tracking a comint or eshell buffer.
 
 (eval-when-compile (require 'cl))
@@ -69,7 +69,7 @@ If called interactively with no prefix argument, the mode is 
toggled. A prefix a
   :global nil
   :group 'realgud:jdb
   :keymap realgud:jdb-track-mode-map
-  (realgud:track-set-debugger "jdb")
+  (realgud:track-set-debugger "jdb" "realgud:jdb")
   (if realgud:jdb-track-mode
       (progn
        (realgud-track-mode-setup 't)
diff --git a/test/test-common-helper.el b/test/test-common-helper.el
index 31fb652..815fde2 100644
--- a/test/test-common-helper.el
+++ b/test/test-common-helper.el
@@ -24,6 +24,6 @@
 
 (note "realgud:debugger-name-transform")
 (assert-equal "trepan" (realgud:debugger-name-transform "trepan"))
-(assert-equal "realgud:gdb" (realgud:debugger-name-transform "gdb"))
+;; (assert-equal "realgud:gdb" (realgud:debugger-name-transform "gdb"))
 
 (end-tests)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]