Add debugging rationale and support for some modes
Tweaked edebug
This commit is contained in:
parent
833d0596e7
commit
7bf7363865
|
@ -53,7 +53,7 @@
|
||||||
"C" 'edebug-Continue-fast-mode
|
"C" 'edebug-Continue-fast-mode
|
||||||
|
|
||||||
"f" 'edebug-forward-sexp
|
"f" 'edebug-forward-sexp
|
||||||
"gh" 'edebug-goto-here
|
"H" 'edebug-goto-here
|
||||||
"I" 'edebug-instrument-callee
|
"I" 'edebug-instrument-callee
|
||||||
"i" 'edebug-step-in
|
"i" 'edebug-step-in
|
||||||
"o" 'edebug-step-out
|
"o" 'edebug-step-out
|
||||||
|
@ -73,7 +73,7 @@
|
||||||
|
|
||||||
;; evaluation
|
;; evaluation
|
||||||
"r" 'edebug-previous-result
|
"r" 'edebug-previous-result
|
||||||
"EE" 'edebug-eval-expression
|
"e" 'edebug-eval-expression
|
||||||
(kbd "C-x C-e") 'edebug-eval-last-sexp
|
(kbd "C-x C-e") 'edebug-eval-last-sexp
|
||||||
"EL" 'edebug-visit-eval-list
|
"EL" 'edebug-visit-eval-list
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,21 @@
|
||||||
|
|
||||||
(defun evil-collection-indium-setup ()
|
(defun evil-collection-indium-setup ()
|
||||||
"Set up `evil' bindings for `indium'."
|
"Set up `evil' bindings for `indium'."
|
||||||
|
(evil-define-key 'normal indium-debugger-mode-map
|
||||||
|
"n" 'indium-debugger-step-over
|
||||||
|
"i" 'indium-debugger-step-into
|
||||||
|
"o" 'indium-debugger-step-out
|
||||||
|
"c" 'indium-debugger-resume
|
||||||
|
"L" 'indium-debugger-locals
|
||||||
|
"s" 'indium-debugger-stack-frames
|
||||||
|
"q" 'indium-debugger-resume
|
||||||
|
"H" 'indium-debugger-here
|
||||||
|
"e" 'indium-debugger-evaluate
|
||||||
|
">" 'indium-debugger-next-frame
|
||||||
|
"<" 'indium-debugger-previous-frame)
|
||||||
|
|
||||||
|
(add-hook 'indium-debugger-mode-hook #'evil-normalize-keymaps)
|
||||||
|
|
||||||
(evil-define-key 'normal indium-inspector-mode-map
|
(evil-define-key 'normal indium-inspector-mode-map
|
||||||
(kbd "RET") 'indium-follow-link
|
(kbd "RET") 'indium-follow-link
|
||||||
[mouse-1] 'indium-follow-link
|
[mouse-1] 'indium-follow-link
|
||||||
|
|
|
@ -0,0 +1,97 @@
|
||||||
|
;;; evil-collection-realgud.el --- Bindings for `realgud'. -*- lexical-binding: t -*-
|
||||||
|
|
||||||
|
;; Copyright (C) 2017 James Nguyen
|
||||||
|
|
||||||
|
;; Author: James Nguyen <james@jojojames.com>
|
||||||
|
;; Maintainer: James Nguyen <james@jojojames.com>
|
||||||
|
;; Pierre Neidhardt <ambrevar@gmail.com>
|
||||||
|
;; URL: https://github.com/jojojames/evil-collection
|
||||||
|
;; Version: 0.0.1
|
||||||
|
;; Package-Requires: ((emacs "25.1"))
|
||||||
|
;; Keywords: evil, emacs, tools, realgud
|
||||||
|
|
||||||
|
;; 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/>.
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
;;; Bindings for `realgud'.
|
||||||
|
(require 'evil)
|
||||||
|
(require 'realgud nil t)
|
||||||
|
|
||||||
|
;;; Code:
|
||||||
|
(defun evil-collection-realgud-setup ()
|
||||||
|
"Set up `evil' bindings for `realgud'."
|
||||||
|
;; This one is to represent `realgud-populate-src-buffer-map-plain'.
|
||||||
|
(evil-define-key 'normal realgud:shortkey-mode-map
|
||||||
|
"b" 'realgud:cmd-break
|
||||||
|
"u" 'realgud:cmd-delete
|
||||||
|
"X" 'realgud:cmd-clear
|
||||||
|
"-" 'realgud:cmd-disable
|
||||||
|
"+" 'realgud:cmd-enable
|
||||||
|
"T" 'realgud:cmd-backtrace
|
||||||
|
"f" 'realgud:cmd-finish
|
||||||
|
"n" 'realgud:cmd-next
|
||||||
|
"q" 'realgud:cmd-quit
|
||||||
|
"Q" 'realgud:cmd-kill
|
||||||
|
"r" 'realgud:cmd-restart
|
||||||
|
"R" 'realgud:cmd-restart
|
||||||
|
"s" 'realgud:cmd-step
|
||||||
|
"i" 'realgud:cmd-step
|
||||||
|
"!" 'realgud:cmd-shell
|
||||||
|
|
||||||
|
;; (define-key map [M-down] 'realgud-track-hist-newer)
|
||||||
|
;; (define-key map [M-kp-2] 'realgud-track-hist-newer)
|
||||||
|
;; (define-key map [M-up] 'realgud-track-hist-older)
|
||||||
|
;; (define-key map [M-kp-8] 'realgud-track-hist-older)
|
||||||
|
;; (define-key map [M-kp-up] 'realgud-track-hist-older)
|
||||||
|
;; (define-key map [M-kp-down] 'realgud-track-hist-newer)
|
||||||
|
;; (define-key map [M-print] 'realgud-track-hist-older)
|
||||||
|
;; (define-key map [M-S-down] 'realgud-track-hist-newest)
|
||||||
|
;; (define-key map [M-S-up] 'realgud-track-hist-oldest)
|
||||||
|
)
|
||||||
|
|
||||||
|
(evil-define-key 'normal realgud:shortkey-mode-map
|
||||||
|
(kbd "C-x C-q") 'realgud-short-key-mode
|
||||||
|
"1" 'realgud-goto-arrow1
|
||||||
|
"2" 'realgud-goto-arrow2
|
||||||
|
"3" 'realgud-goto-arrow3
|
||||||
|
"4" 'realgud:goto-loc-hist-4
|
||||||
|
"5" 'realgud:goto-loc-hist-5
|
||||||
|
"6" 'realgud:goto-loc-hist-6
|
||||||
|
"7" 'realgud:goto-loc-hist-7
|
||||||
|
"8" 'realgud:goto-loc-hist-8
|
||||||
|
"9" 'realgud:goto-loc-hist-9
|
||||||
|
"b" 'realgud:cmd-break
|
||||||
|
"J" 'realgud:cmd-jump
|
||||||
|
"c" 'realgud:cmd-continue
|
||||||
|
"e" 'realgud:cmd-eval-dwim
|
||||||
|
"E" 'realgud:cmd-eval-at-point
|
||||||
|
"U" 'realgud:cmd-until
|
||||||
|
"H" 'realgud:cmd-until
|
||||||
|
[mouse-2] 'realgud:tooltip-eval
|
||||||
|
[left-fringe mouse-1] 'realgud-cmds--mouse-add-remove-bp
|
||||||
|
[left-margin mouse-1] 'realgud-cmds--mouse-add-remove-bp
|
||||||
|
">" 'realgud:cmd-newer-frame
|
||||||
|
"<" 'realgud:cmd-older-frame
|
||||||
|
"gR" 'realgud-recenter-arrow ;; FIXME: Hmnn!
|
||||||
|
"C" 'realgud-window-cmd-undisturb-src
|
||||||
|
"g?" 'realgud:cmdbuf-info-describe
|
||||||
|
"S" 'realgud-window-src-undisturb-cmd
|
||||||
|
"R" 'realgud:cmd-restart
|
||||||
|
"gr" 'realgud:cmd-restart
|
||||||
|
"!" 'realgud:cmd-shell)
|
||||||
|
|
||||||
|
(add-hook 'realgud-short-key-mode-hook #'evil-normalize-keymaps))
|
||||||
|
|
||||||
|
(provide 'evil-collection-realgud)
|
||||||
|
;;; evil-collection-realgud.el ends here
|
|
@ -111,6 +111,7 @@ or evil-collection.")
|
||||||
profiler
|
profiler
|
||||||
python
|
python
|
||||||
racer
|
racer
|
||||||
|
realgud
|
||||||
rjsx-mode
|
rjsx-mode
|
||||||
robe
|
robe
|
||||||
ruby-mode
|
ruby-mode
|
||||||
|
|
20
readme.org
20
readme.org
|
@ -354,7 +354,27 @@ definition".
|
||||||
- ~0~ has a somewhat intuitive meaning, plus it is next to ~+~ and ~-~ on QWERTY.
|
- ~0~ has a somewhat intuitive meaning, plus it is next to ~+~ and ~-~ on QWERTY.
|
||||||
|
|
||||||
- ~=~ is useful as a synonym for ~+~ because it is the unshifted key of ~+~ on QWERTY.
|
- ~=~ is useful as a synonym for ~+~ because it is the unshifted key of ~+~ on QWERTY.
|
||||||
|
*** Debugging
|
||||||
|
When debugging is on, debugger keys takes the most precedence.
|
||||||
|
|
||||||
|
These keys will be set when there's an available command for them.
|
||||||
|
|
||||||
|
- ~n~ : Step Over
|
||||||
|
- ~i~ : Step Into
|
||||||
|
- ~o~ : Step Out
|
||||||
|
- ~c~ : Continue/Resume Execution
|
||||||
|
- ~L~ : Locals
|
||||||
|
- ~t~ : Tracing
|
||||||
|
- ~q~ : Quit Debugging
|
||||||
|
- ~H~ : Continue until Point
|
||||||
|
- ~e~ : Evaluate Expression
|
||||||
|
- ~b~ : Set Breakpoint
|
||||||
|
- ~u~ : Unset Breakpoint
|
||||||
|
- ~>~ : Navigate to Next Frame
|
||||||
|
- ~<~ : Navigate to Previous Frame
|
||||||
|
- ~g?~ : Help
|
||||||
|
- ~J~ : Jump to debugger location
|
||||||
|
- ~R~ : Restart
|
||||||
|
|
||||||
** Modes left behind
|
** Modes left behind
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue