]> code.delx.au - gnu-emacs/blobdiff - src/.gdbinit
*** empty log message ***
[gnu-emacs] / src / .gdbinit
index 33f02f4edc09eb1efdafec847a906c380ac8d1b6..1bcb9f6789b81a8476f66086061a407bb7acbdd9 100644 (file)
@@ -60,6 +60,16 @@ Print the emacs s-expression which is $.
 Works only when an inferior emacs is executing.
 end
 
+# Print out s-expressions
+define pp
+  set $tmp = $arg0
+  set debug_print ($tmp)
+end
+document pp
+Print the argument as an emacs s-expression
+Works only when an inferior emacs is executing.
+end
+
 define xtype
   xgettype $
   output $type
@@ -186,9 +196,10 @@ Print $ as a buffer-local-value pointer, assuming it is an Emacs Lisp Misc value
 end
 
 define xsymbol
-  xgetptr $
+  set $sym = $
+  xgetptr $sym
   print (struct Lisp_Symbol *) $ptr
-  xprintsym $
+  xprintsym $sym
   echo \n
 end
 document xsymbol
@@ -199,7 +210,7 @@ end
 define xstring
   xgetptr $
   print (struct Lisp_String *) $ptr
-  output ($->size > 1000) ? 0 : ($->data[0])@($->size_byte < 0 ? $->size & ~gdb_array_mark_flag : $->size_byte)
+  xprintstr $
   echo \n
 end
 document xstring
@@ -372,12 +383,17 @@ document xscrollbar
 Print $ as a scrollbar pointer.
 end
 
+define xprintstr
+  set $data = $arg0->data
+  output ($arg0->size > 1000) ? 0 : ($data[0])@($arg0->size_byte < 0 ? $arg0->size & ~gdb_array_mark_flag : $arg0->size_byte)
+end
+
 define xprintsym
   xgetptr $arg0
   set $sym = (struct Lisp_Symbol *) $ptr
   xgetptr $sym->xname
   set $sym_name = (struct Lisp_String *) $ptr
-  output ($sym_name->data[0])@($sym_name->size_byte < 0 ? $sym_name->size & ~gdb_array_mark_flag : $sym_name->size_byte)
+  xprintstr $sym_name
 end
 document xprintsym
   Print argument as a symbol.
@@ -423,6 +439,16 @@ document xreload
 end
 xreload
 
+# Flush display (X only)
+define ff
+  set x_flush (0)
+end
+document ff
+Flush pending X window display updates to screen.
+Works only when an inferior emacs is executing.
+end
+
+
 define hook-run
   xreload
 end