0

when I enable debug on error it works perfectly the first time.

when I go and fix my error and rerun my function debug on error no longer triggers for new errors.

Is there a way to enable it so future debugs work as well instead of me having to quit and reload emacs to reset the functionality ?

This is an example of what i get, but only ever once.

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  file-name-directory(nil)
  (message "dc-compose-root %s" (file-name-directory buffer-file-name))
  dc-compose-root()
  (format "dc-compose-exits%s%s" (dc-compose-root) dc-docker-compose-file)
  (file-exists-p (format "dc-compose-exits%s%s" (dc-compose-root) dc-docker-compose-file))
  dc-compose-exists()
  (if (dc-compose-exists) t (error "Missing docker-compose.yml in project root aborting current command %s" (dc-compose-root)))
  dc-compose-exists-check()
  dc-docker-compose-process(#("[C-t] show common commands, [?] describe events, [C-h i] show manualps" 1 4 (face magit-popup-key) 29 30 (face magit-popup-key) 50 55 (face magit-popup-key)))
  dc-docker-compose-ps(#("[C-t] show common commands, [?] describe events, [C-h i] show manual" 1 4 (face magit-popup-key) 29 30 (face magit-popup-key) 50 55 (face magit-popup-key)))
  funcall-interactively(dc-docker-compose-ps #("[C-t] show common commands, [?] describe events, [C-h i] show manual" 1 4 (face magit-popup-key) 29 30 (face magit-popup-key) 50 55 (face magit-popup-key)))
  call-interactively(dc-docker-compose-ps)
  magit-invoke-popup-action(112)
  funcall-interactively(magit-invoke-popup-action 112)
  call-interactively(magit-invoke-popup-action nil nil)
  command-execute(magit-invoke-popup-action)
  • 1
    Provide more info. Show some code - what you tried. debug-on-error does not raise an error in some contexts where doing so would be problematic (but I doubt that is the problem you are encountering). – Drew Oct 10 '17 at 14:18
  • its not an issue with code, i have put the output i see what does not happen is that view only ever happens once. so when i edit my code and make a mistake i get an error in the messages buffer but the traceback does not trigger again. – Oly Oct 10 '17 at 14:27
  • 3
    Perhaps you didn't exit the debugger session? See (emacs) Recursive Edit – npostavs Oct 10 '17 at 15:16
  • Your quite right, I did not know that was a thing and the backtrace buffer does not have shortcut help from what i can see. basically CTRL-] quits the traceback and means future errors are caught. If you want to add as an answer i will accept :) – Oly Oct 10 '17 at 15:32
  • 1
    Use C-h m' in any buffer to know about its mode. If you do that in buffer *Backtrace*` you will see that you can hit q to quit, etc. – Drew Oct 10 '17 at 17:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.