Mercurial > emacs
annotate src/.gdbinit @ 4022:a3d3d7eef5ce
(mail-rfc822-time-zone, mail-rfc822-date): New fns.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 07 Jul 1993 17:55:55 +0000 |
parents | 1dcc4e12b8dd |
children | aabcab2eab73 |
rev | line source |
---|---|
567 | 1 # Set up something to print out s-expressions. |
2 define pr | |
3 set Fprin1 ($, Qexternal_debugging_output) | |
4 echo \n | |
5 end | |
6 document pr | |
7 Print the emacs s-expression which is $. | |
8 Works only when an inferior emacs is executing. | |
9 end | |
10 | |
1113 | 11 # Set this to the same thing as the DATA_SEG_BITS macro in your |
12 # machine-description files. | |
13 set $data_seg_bits = 0 | |
14 | |
1551 | 15 define mips |
16 set $data_seg_bits = 0x10000000 | |
17 end | |
18 document mips | |
19 Set up the xfoo macros to deal with the MIPS processor. | |
20 Specifically, this sets $data_seg_bits to the right thing. | |
21 end | |
22 | |
567 | 23 define xtype |
999 | 24 output (enum Lisp_Type) (($ >> 24) & 0x7f) |
25 echo \n | |
567 | 26 end |
638 | 27 document xtype |
28 Print the type of $, assuming it is an Elisp value. | |
29 end | |
567 | 30 |
31 define xint | |
32 print (($ & 0x00ffffff) << 8) >> 8 | |
33 end | |
638 | 34 document xint |
35 Print $, assuming it is an Elisp integer. This gets the sign right. | |
36 end | |
567 | 37 |
38 define xptr | |
1113 | 39 print (void *) (($ & 0x00ffffff) | $data_seg_bits) |
567 | 40 end |
638 | 41 document xptr |
42 Print the pointer portion of $, assuming it is an Elisp value. | |
43 end | |
567 | 44 |
45 define xwindow | |
1113 | 46 print (struct window *) (($ & 0x00ffffff) | $data_seg_bits) |
999 | 47 printf "%dx%d+%d+%d\n", $->width, $->height, $->left, $->top |
567 | 48 end |
638 | 49 document xwindow |
50 Print $ as a window pointer, assuming it is an Elisp window value. | |
999 | 51 Print the window's position as "WIDTHxHEIGHT+LEFT+TOP". |
638 | 52 end |
567 | 53 |
54 define xmarker | |
1113 | 55 print (struct Lisp_Marker *) (($ & 0x00ffffff) | $data_seg_bits) |
567 | 56 end |
638 | 57 document xmarker |
58 Print $ as a marker pointer, assuming it is an Elisp marker value. | |
59 end | |
567 | 60 |
61 define xbuffer | |
1113 | 62 print (struct buffer *) (($ & 0x00ffffff) | $data_seg_bits) |
63 output &((struct Lisp_String *) ((($->name) & 0x00ffffff) | $data_seg_bits))->data | |
999 | 64 echo \n |
567 | 65 end |
638 | 66 document xbuffer |
727 | 67 Set $ as a buffer pointer, assuming it is an Elisp buffer value. |
68 Print the name of the buffer. | |
638 | 69 end |
567 | 70 |
71 define xsymbol | |
1113 | 72 print (struct Lisp_Symbol *) (($ & 0x00ffffff) | $data_seg_bits) |
999 | 73 output &$->name->data |
74 echo \n | |
567 | 75 end |
638 | 76 document xsymbol |
77 Print the name and address of the symbol $. | |
78 This command assumes that $ is an Elisp symbol value. | |
79 end | |
567 | 80 |
81 define xstring | |
1113 | 82 print (struct Lisp_String *) (($ & 0x00ffffff) | $data_seg_bits) |
999 | 83 output ($->size > 10000) ? "big string" : ($->data[0])@($->size) |
84 echo \n | |
567 | 85 end |
86 document xstring | |
638 | 87 Print the contents and address of the string $. |
88 This command assumes that $ is an Elisp string value. | |
567 | 89 end |
90 | |
91 define xvector | |
1113 | 92 print (struct Lisp_Vector *) (($ & 0x00ffffff) | $data_seg_bits) |
999 | 93 output ($->size > 1000) ? "big vector" : ($->contents[0])@($->size) |
94 echo \n | |
567 | 95 end |
96 document xvector | |
638 | 97 Print the contents and address of the vector $. |
98 This command assumes that $ is an Elisp vector value. | |
567 | 99 end |
100 | |
1113 | 101 define xframe |
102 print (struct frame *) (($ & 0x00ffffff) | $data_seg_bits) | |
567 | 103 end |
1113 | 104 document xframe |
105 Print $ as a frame pointer, assuming it is an Elisp frame value. | |
638 | 106 end |
567 | 107 |
108 define xcons | |
1113 | 109 print (struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits) |
1069 | 110 output *$ |
999 | 111 echo \n |
567 | 112 end |
638 | 113 document xcons |
114 Print the contents of $, assuming it is an Elisp cons. | |
115 end | |
567 | 116 |
117 define xcar | |
1113 | 118 print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits))->car : 0) |
567 | 119 end |
638 | 120 document xcar |
121 Print the car of $, assuming it is an Elisp pair. | |
122 end | |
567 | 123 |
124 define xcdr | |
1113 | 125 print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits))->cdr : 0) |
567 | 126 end |
638 | 127 document xcdr |
128 Print the cdr of $, assuming it is an Elisp pair. | |
129 end | |
567 | 130 |
1113 | 131 define xsubr |
132 print (struct Lisp_Subr *) (($ & 0x00ffffff) | $data_seg_bits) | |
133 output *$ | |
134 echo \n | |
135 end | |
136 document xsubr | |
137 Print the address of the subr which the Lisp_Object $ points to. | |
138 end | |
139 | |
1943
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
140 define xprocess |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
141 print (struct Lisp_Process *) (($ & 0x00ffffff) | $data_seg_bits) |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
142 output *$ |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
143 echo \n |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
144 end |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
145 document xprocess |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
146 Print the address of the struct Lisp_process which the Lisp_Object $ points to. |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
147 end |
80482f2d54bf
* .gdbinit (xprocess): New command.
Jim Blandy <jimb@redhat.com>
parents:
1789
diff
changeset
|
148 |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
149 define xscrollbar |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
150 print (struct scrollbar *) (($ & 0x00ffffff) | $data_seg_bits) |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
151 output *$ |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
152 echo \n |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
153 end |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
154 document xsubr |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
155 Print $ as a scrollbar pointer. |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
156 end |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
157 |
638 | 158 set print pretty on |
567 | 159 |
732 | 160 unset environment TERMCAP |
161 unset environment TERM | |
999 | 162 echo TERMCAP and TERM environment variables unset.\n |
732 | 163 show environment DISPLAY |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
164 set args -q -geometry +0+0 |
732 | 165 |
567 | 166 # Don't let abort actually run, as it will make |
2162 | 167 # stdio stop working and therefore the `pr' command above as well. |
567 | 168 break abort |
169 | |
170 # If we are running in synchronous mode, we want a chance to look around | |
171 # before Emacs exits. Perhaps we should put the break somewhere else | |
172 # instead... | |
173 break _XPrintDefaultError | |
174 |