我打開Emacs中的錯誤調試功能,當我誤操作時,這會使緩衝區彈出到最前面。這很煩人,我只是想知道是否有方法在minibuffer中顯示調試錯誤消息?如果我真的想看看錯誤的詳細信息,我可以切換到回溯緩衝區我自己。僅在Emacs的迷你緩衝區中顯示錯誤消息
0
A
回答
1
我覺得你缺少的一個重要方面。 debug-on-error
不只是生成堆棧跟蹤的文本作爲某種日誌;它會讓你進入一個交互式調試器,並且或多或少需要一些用戶交互。
我說「或多或少」,因爲在這種情況下Emacs不會停下來 - 在調試器打開的時候,您可以繼續執行任務 - 但是您也會注意到debug-on-error
在調試器是開放的,所以如果你不要與打開的調試器交互,後續的錯誤不會產生新的調試會話。
不用說您不希望默認啓用此選項。 debug-on-error
是您在需要時啓用的功能,但在其他情況下請保持禁用。
我懷疑這裏真正的問題是:你想要調試什麼?因爲如果你發現這個選項很煩人,它可能不是最好的選擇。或者您可以更有針對性地使用它。
首先(堅持使用debug-on-error
變量),您可以將其限制爲特定錯誤條件列表,並且/或者您可以配置debug-ignored-errors
以排除您不希望調試的錯誤。
其次有許多其他的方式來使用標準調試器,這可能是更好的解決方案。例如:
;; M-x debug-on-entry FUNCTION
;; M-x cancel-debug-on-entry &optional FUNCTION
;; M-x toggle-debug-on-quit
;; setq debug-on-signal
;; setq debug-on-next-call
;; setq debug-on-event
;; setq debug-on-message REGEXP
;; (debug &rest DEBUGGER-ARGS)
(還有還有edebug
)
你當然應該,檢查手冊,以及:
章我克(elisp) Debugging
RET
如果您想要opti在所在的位置只需將堆棧跟蹤記錄到緩衝區,然後繼續,您可以通過M-x report-emacs-bug
將其作爲功能請求提出。
0
一種解決方案是關閉debug-on-error
!然後當您收到一條您想要查看回溯的錯誤消息時再次打開它 - 並再次引發錯誤。
當然,這隻適用於您知道如何重現的錯誤。
(附註:你的意思是回聲區,而不是迷你緩衝區。)
相關問題
- 1. 的Emacs迷你緩衝區完成
- 2. Emacs顏色主題會導致迷你緩衝區消失?
- 3. 在Emacs迷你緩衝區中調用帶參數的命令
- 4. 在Emacs中模擬迷你緩衝區輸入
- 5. emacs迷你緩衝區中的可點擊文本
- 6. Emacs的:在迷你緩衝區禁止線截斷只
- 7. 的Emacs與SQL模式-nw在迷你緩衝區
- 8. Emacs禁用*消息*緩衝區
- 9. 啓動emacs後更改迷你緩衝區的路徑
- 10. 如何避免迷你緩衝區中的錯誤信息(helm-mode,emacs24.4)
- 11. emacs功能發送密碼到迷你緩衝區時詢問
- 12. 使下緩衝的emacs跳過*消息*緩衝區
- 13. 讓emacs grep緩衝區使用特定的emacs緩衝區來顯示命中
- 14. Emacs緩衝區菜單:如何僅顯示文件+ dired緩衝區?
- 15. 關閉緩衝區後顯示Emacs緩衝區
- 16. 如何在Emacs中保存我的迷你緩衝區歷史記錄?
- 17. 在Emacs迷你緩衝區中訪問OS X/UNIX環境變量
- 18. 乾淨的方式來執行Emacs迷你緩衝區中的命令
- 19. Emacs:更改迷你緩衝區中的Ido完成鍵盤映射
- 20. 從Emacs迷你緩衝區中刪除書籤的完成選項
- 21. 顯示在沖洗magento緩存存儲錯誤消息
- 22. 緩衝log4net調試消息在錯誤時顯示它們?
- 23. 通過緩衝區在瀏覽器中顯示ruby消息
- 24. 顯示協議緩衝區消息中的所有元素
- 25. 在最近Emacs的其他窗口中顯示緩衝區
- 26. Markdownize Emacs緩衝區
- 27. Emacs erlang緩衝區
- 28. 保持Emacs Evil退出迷你緩衝區時切換到正常模式
- 29. 在Emacs小緩衝區
- 30. 在Emacs中拆分窗口 - Tabbar只顯示活動緩衝區
請注意,如果您自己編寫Emacs包並希望在不啓動調試器的情況下發出純錯誤,則可以使用'user-error'。另外,如果您想單擊現有包的錯誤,您可以將錯誤符號或正則表達式的匹配錯誤消息添加到'debug-ignores-errors'。 – Lindydancer