File: data-debug.el.html

Provide a simple way to investigate particularly large and complex data structures.

The best way to get started is to bind M-: to 'data-debug-eval-expression.

(keymap-global-set "M-:" 'data-debug-eval-expression)

If you write functions with complex output that need debugging, you can make them interactive with data-debug-show-stuff. For example:

(defun my-complex-output-fcn ()
  "Calculate something complicated at point, and return it." (interactive) ;; function not normally interactive (let ((stuff (do-stuff))) (when (called-interactively-p 'interactive) (data-debug-show-stuff stuff "myStuff")) stuff))

Defined variables (5)

data-debug-mode-abbrev-tableAbbrev table for ‘data-debug-mode’.
data-debug-mode-hookHook run when data-debug starts.
data-debug-mode-mapKeymap used in data-debug.
data-debug-mode-syntax-tableSyntax table used in data-debug macro buffers.
data-debug-thing-alistAlist of methods used to insert things into an Ddebug buffer.

Defined functions (60)

data-debug-add-specialized-thing(PREDICATE FCN)
data-debug-contract-current-line()
data-debug-current-line-expanded-p()
data-debug-edebug-expr(EXPR)
data-debug-eval-expression(EXPR)
data-debug-expand-current-line()
data-debug-expand-or-contract()
data-debug-expand-or-contract-mouse(EVENT)
data-debug-insert-buffer-button(BUFFER PREFIX PREBUTTONTEXT)
data-debug-insert-buffer-from-point(POINT)
data-debug-insert-buffer-list(BUFFERLIST PREFIX)
data-debug-insert-buffer-list-button(BUFFERLIST PREFIX PREBUTTONTEXT)
data-debug-insert-buffer-list-from-point(POINT)
data-debug-insert-buffer-props(BUFFER PREFIX)
data-debug-insert-custom(THINGSTRING PREFIX PREBUTTONTEXT FACE)
data-debug-insert-hash-table(HASH-TABLE PREFIX)
data-debug-insert-hash-table-button(HASH-TABLE PREFIX PREBUTTONTEXT)
data-debug-insert-hash-table-from-point(POINT)
data-debug-insert-lambda-expression(THING PREFIX PREBUTTONTEXT)
data-debug-insert-nil(THING PREFIX PREBUTTONTEXT)
data-debug-insert-number(THING PREFIX PREBUTTONTEXT)
data-debug-insert-overlay-button(OVERLAY PREFIX PREBUTTONTEXT)
data-debug-insert-overlay-from-point(POINT)
data-debug-insert-overlay-list(OVERLAYLIST PREFIX)
data-debug-insert-overlay-list-button(OVERLAYLIST PREFIX PREBUTTONTEXT)
data-debug-insert-overlay-list-from-point(POINT)
data-debug-insert-overlay-props(OVERLAY PREFIX)
data-debug-insert-process-button(PROCESS PREFIX PREBUTTONTEXT)
data-debug-insert-process-from-point(POINT)
data-debug-insert-process-props(PROCESS PREFIX)
data-debug-insert-property-list(PROPLIST PREFIX &optional PARENT)
data-debug-insert-ring-button(RING PREFIX PREBUTTONTEXT)
data-debug-insert-ring-contents(RING PREFIX)
data-debug-insert-ring-items-from-point(POINT)
data-debug-insert-simple-thing(THING PREFIX PREBUTTONTEXT FACE)
data-debug-insert-string(THING PREFIX PREBUTTONTEXT)
data-debug-insert-stuff-list(STUFFLIST PREFIX)
data-debug-insert-stuff-list-button(STUFFLIST PREFIX PREBUTTONTEXT)
data-debug-insert-stuff-list-from-point(POINT)
data-debug-insert-stuff-record-button(STUFFVECTOR PREFIX PREBUTTONTEXT)
data-debug-insert-stuff-vector(STUFFVECTOR PREFIX)
data-debug-insert-stuff-vector-button(STUFFVECTOR PREFIX PREBUTTONTEXT)
data-debug-insert-stuff-vector-from-point(POINT)
data-debug-insert-symbol-button(SYMBOL PREFIX PREBUTTONTEXT)
data-debug-insert-symbol-from-point(POINT)
data-debug-insert-thing(THING PREFIX PREBUTTONTEXT &optional PARENT)
data-debug-insert-widget(WIDGET PREFIX PREBUTTONTEXT)
data-debug-insert-widget-from-point(POINT)
data-debug-insert-widget-properties(WIDGET PREFIX)
data-debug-line-expandable-p()
data-debug-mode()
data-debug-new-buffer(NAME)
data-debug-next()
data-debug-next-expando()
data-debug-overlay-p(OBJECT)
data-debug-overlay-properties(OVERLAY)
data-debug-prev()
data-debug-prev-expando()
data-debug-show-stuff(STUFF NAME)
dd-propertize(STRING &rest PROPERTIES)

Defined faces (0)