Mercurial > emacs
view src/.gdbinit @ 939:c4dcdc9aed70
Clear the eighth bit of the character from the key sequence, NOT the
index of the character IN the key sequence. How many tries will it
take to get it right?
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Wed, 05 Aug 1992 05:18:27 +0000 |
parents | a8d94735277e |
children | fc4f68fff750 |
line wrap: on
line source
# Set up something to print out s-expressions. define pr set Fprin1 ($, Qexternal_debugging_output) echo \n end document pr Print the emacs s-expression which is $. Works only when an inferior emacs is executing. end define xtype print (enum Lisp_Type) (($ >> 24) & 0x7f) p $$ end document xtype Print the type of $, assuming it is an Elisp value. end define xint print (($ & 0x00ffffff) << 8) >> 8 end document xint Print $, assuming it is an Elisp integer. This gets the sign right. end define xptr print (void *) ($ & 0x00ffffff) end document xptr Print the pointer portion of $, assuming it is an Elisp value. end define xwindow print (struct window *) ($ & 0x00ffffff) print ($->left)@4 print $$ end document xwindow Print $ as a window pointer, assuming it is an Elisp window value. Print the window's position as { left, top, height, width }. end define xmarker print (struct Lisp_Marker *) ($ & 0x00ffffff) end document xmarker Print $ as a marker pointer, assuming it is an Elisp marker value. end define xbuffer print (struct buffer *) ($ & 0x00ffffff) print &((struct Lisp_String *) (($->name) & 0x00ffffff))->data print $$ end document xbuffer Set $ as a buffer pointer, assuming it is an Elisp buffer value. Print the name of the buffer. end define xsymbol print (struct Lisp_Symbol *) ($ & 0x00ffffff) print &$->name->data print $$ end document xsymbol Print the name and address of the symbol $. This command assumes that $ is an Elisp symbol value. end define xstring print (struct Lisp_String *) ($ & 0x00ffffff) print ($->size > 10000) ? "big string" : ($->data[0])@($->size) print $$ end document xstring Print the contents and address of the string $. This command assumes that $ is an Elisp string value. end define xvector set $temp = (struct Lisp_Vector *) ($ & 0x00ffffff) print ($temp->size > 10000) ? "big vector" : ($temp->contents[0])@($temp->size) print $temp end document xvector Print the contents and address of the vector $. This command assumes that $ is an Elisp vector value. end define xscreen print (struct screen *) ($ & 0x00ffffff) end document xwindow Print $ as a screen pointer, assuming it is an Elisp screen value. end define xcons print (struct Lisp_Cons *) ($ & 0x00ffffff) print *$ print $$ end document xcons Print the contents of $, assuming it is an Elisp cons. end define xcar print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) ($ & 0x00ffffff))->car : 0) end document xcar Print the car of $, assuming it is an Elisp pair. end define xcdr print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) ($ & 0x00ffffff))->cdr : 0) end document xcdr Print the cdr of $, assuming it is an Elisp pair. end set print pretty on unset environment TERMCAP unset environment TERM set environment DISPLAY :0.0 show environment DISPLAY set args -q # Don't let abort actually run, as it will make # stdio stop working and therefore the `pr' command below as well. break abort # If we are running in synchronous mode, we want a chance to look around # before Emacs exits. Perhaps we should put the break somewhere else # instead... break _XPrintDefaultError