Mercurial > emacs
annotate src/.gdbinit @ 107606:297c59e52ecf
Retrospective commit from 2009-12-26.
Redesign handle_stop_backwards.
Fix character mirroring for non-ASCII characters.
xdisp.c (handle_stop_backwards): Call compute_stop_pos in the
loop, instead of calling handle_stop. Call handle_stop only once,
after the loop.
(next_element_from_buffer): Don't call handle_stop_backwards if at
stop position. If base_level_stop is zero, set it to 1.
term.c (append_glyph): Fill resolved_level and bidi_type slots
of struct glyph for unidirectional display.
xdisp.c (set_cursor_from_row): Handle zero-width characters.
bidi.c (bidi_mirror_char): More efficient code (suggested by
Ehud Karni <ehud@unix.mvs.co.il>). Don't even try to mirror
non-ASCII characters.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Fri, 01 Jan 2010 10:04:53 -0500 |
parents | b1e1b45c9fb6 |
children | 118ff750e43e |
rev | line source |
---|---|
68651
3bd95f4f2941
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
68297
diff
changeset
|
1 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001, |
100976 | 2 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 |
87915 | 3 # Free Software Foundation, Inc. |
36219 | 4 # |
5 # This file is part of GNU Emacs. | |
6 # | |
7 # GNU Emacs is free software; you can redistribute it and/or modify | |
8 # it under the terms of the GNU General Public License as published by | |
78260
922696f363b0
Switch license to GPLv3 or later.
Glenn Morris <rgm@gnu.org>
parents:
76129
diff
changeset
|
9 # the Free Software Foundation; either version 3, or (at your option) |
36219 | 10 # any later version. |
11 # | |
12 # GNU Emacs is distributed in the hope that it will be useful, | |
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 # GNU General Public License for more details. | |
16 # | |
17 # You should have received a copy of the GNU General Public License | |
18 # along with GNU Emacs; see the file COPYING. If not, write to the | |
64084 | 19 # Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 # Boston, MA 02110-1301, USA. | |
36219 | 21 |
13359
4c60f92bdaa6
Do `set main' to make gdb_valbits etc. available.
Richard M. Stallman <rms@gnu.org>
parents:
12278
diff
changeset
|
22 # Force loading of symbols, enough to give us gdb_valbits etc. |
4c60f92bdaa6
Do `set main' to make gdb_valbits etc. available.
Richard M. Stallman <rms@gnu.org>
parents:
12278
diff
changeset
|
23 set main |
4c60f92bdaa6
Do `set main' to make gdb_valbits etc. available.
Richard M. Stallman <rms@gnu.org>
parents:
12278
diff
changeset
|
24 |
15536 | 25 # Find lwlib source files too. |
26 dir ../lwlib | |
34876
8dbc92d11de2
Comment out the line pointing to the Lesstif source
Gerd Moellmann <gerd@gnu.org>
parents:
32812
diff
changeset
|
27 #dir /gd/gnu/lesstif-0.89.9/lib/Xm |
15536 | 28 |
20672 | 29 # Don't enter GDB when user types C-g to quit. |
30 # This has one unfortunate effect: you can't type C-c | |
31 # at the GDB to stop Emacs, when using X. | |
32 # However, C-z works just as well in that case. | |
67027 | 33 handle 2 noprint pass |
20672 | 34 |
66903
4689a51b18f9
Make SIGTSTP work like SIGINT normally does.
Nick Roberts <nickrob@snap.net.nz>
parents:
66817
diff
changeset
|
35 # Make it work like SIGINT normally does. |
4689a51b18f9
Make SIGTSTP work like SIGINT normally does.
Nick Roberts <nickrob@snap.net.nz>
parents:
66817
diff
changeset
|
36 handle SIGTSTP nopass |
4689a51b18f9
Make SIGTSTP work like SIGINT normally does.
Nick Roberts <nickrob@snap.net.nz>
parents:
66817
diff
changeset
|
37 |
74750
8079b89022bf
Pass on SIGUSR1 and SIGUSR2 to Emacs.
Kim F. Storm <storm@cua.dk>
parents:
72390
diff
changeset
|
38 # Pass on user signals |
8079b89022bf
Pass on SIGUSR1 and SIGUSR2 to Emacs.
Kim F. Storm <storm@cua.dk>
parents:
72390
diff
changeset
|
39 handle SIGUSR1 noprint pass |
8079b89022bf
Pass on SIGUSR1 and SIGUSR2 to Emacs.
Kim F. Storm <storm@cua.dk>
parents:
72390
diff
changeset
|
40 handle SIGUSR2 noprint pass |
8079b89022bf
Pass on SIGUSR1 and SIGUSR2 to Emacs.
Kim F. Storm <storm@cua.dk>
parents:
72390
diff
changeset
|
41 |
30636 | 42 # Don't pass SIGALRM to Emacs. This makes problems when |
43 # debugging. | |
44 handle SIGALRM ignore | |
45 | |
59660
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
46 # $valmask and $tagmask are mask values set up by the xreload macro below. |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
47 |
59660
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
48 # Use $bugfix so that the value isn't a constant. |
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
49 # Using a constant runs into GDB bugs sometimes. |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
50 define xgetptr |
59660
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
51 set $bugfix = $arg0 |
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
52 set $ptr = (gdb_use_union ? $bugfix.u.val : $bugfix & $valmask) | gdb_data_seg_bits |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
53 end |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
54 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
55 define xgetint |
59660
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
56 set $bugfix = $arg0 |
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
57 set $int = gdb_use_union ? $bugfix.s.val : (gdb_use_lsb ? $bugfix : $bugfix << gdb_gctypebits) >> gdb_gctypebits |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
58 end |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
59 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
60 define xgettype |
59660
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
61 set $bugfix = $arg0 |
5ee7eaad2958
(xgetptr, xgetint, xgettype): Copy $arg0 into a temp variable.
Richard M. Stallman <rms@gnu.org>
parents:
57911
diff
changeset
|
62 set $type = gdb_use_union ? $bugfix.s.type : (enum Lisp_Type) (gdb_use_lsb ? $bugfix & $tagmask : $bugfix >> gdb_valbits) |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
63 end |
11872
a28bd38b2ff3
gdb_lisp_params to get storage layout info.
Karl Heuer <kwzh@gnu.org>
parents:
11006
diff
changeset
|
64 |
567 | 65 # Set up something to print out s-expressions. |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
66 # We save and restore print_output_debug_flag to prevent the w32 port |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
67 # from calling OutputDebugString, which causes GDB to display each |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
68 # character twice (yuk!). |
567 | 69 define pr |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
70 set $output_debug = print_output_debug_flag |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
71 set print_output_debug_flag = 0 |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
72 set debug_print ($) |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
73 set print_output_debug_flag = $output_debug |
567 | 74 end |
75 document pr | |
76 Print the emacs s-expression which is $. | |
77 Works only when an inferior emacs is executing. | |
78 end | |
79 | |
57306
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
80 # Print out s-expressions |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
81 define pp |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
82 set $tmp = $arg0 |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
83 set $output_debug = print_output_debug_flag |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
84 set print_output_debug_flag = 0 |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
85 set safe_debug_print ($tmp) |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
86 set print_output_debug_flag = $output_debug |
57306
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
87 end |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
88 document pp |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
89 Print the argument as an emacs s-expression |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
90 Works only when an inferior emacs is executing. |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
91 end |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
92 |
66772
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
93 # Print out s-expressions from tool bar |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
94 define pp1 |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
95 set $tmp = $arg0 |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
96 set $output_debug = print_output_debug_flag |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
97 set print_output_debug_flag = 0 |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
98 set safe_debug_print ($tmp) |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
99 set print_output_debug_flag = $output_debug |
66772
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
100 end |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
101 document pp1 |
70247
039ae41bde1a
(pp1, pv1): Only print value as expression is now printed out by gud-print.
Nick Roberts <nickrob@snap.net.nz>
parents:
69679
diff
changeset
|
102 Print the argument as an emacs s-expression. |
66772
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
103 Works only when an inferior emacs is executing. |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
104 For use on tool bar when debugging in Emacs |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
105 where the variable name would not otherwise |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
106 be recorded in the GUD buffer. |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
107 end |
f14bee895419
(pp1): New user-defined function.
Nick Roberts <nickrob@snap.net.nz>
parents:
64321
diff
changeset
|
108 |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
109 # Print value of lisp variable |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
110 define pv |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
111 set $tmp = "$arg0" |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
112 set $output_debug = print_output_debug_flag |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
113 set print_output_debug_flag = 0 |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
114 set safe_debug_print ( find_symbol_value (intern ($tmp))) |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
115 set print_output_debug_flag = $output_debug |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
116 end |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
117 document pv |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
118 Print the value of the lisp variable given as argument. |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
119 Works only when an inferior emacs is executing. |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
120 end |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
121 |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
122 # Print value of lisp variable |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
123 define pv1 |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
124 set $tmp = "$arg0" |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
125 set $output_debug = print_output_debug_flag |
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
126 set print_output_debug_flag = 0 |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
127 set safe_debug_print (find_symbol_value (intern ($tmp))) |
69679
7a7755ff46ed
(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
Eli Zaretskii <eliz@gnu.org>
parents:
68857
diff
changeset
|
128 set print_output_debug_flag = $output_debug |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
129 end |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
130 document pv1 |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
131 Print the value of the lisp variable given as argument. |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
132 Works only when an inferior emacs is executing. |
70247
039ae41bde1a
(pp1, pv1): Only print value as expression is now printed out by gud-print.
Nick Roberts <nickrob@snap.net.nz>
parents:
69679
diff
changeset
|
133 For use when debugging in Emacs where the variable |
039ae41bde1a
(pp1, pv1): Only print value as expression is now printed out by gud-print.
Nick Roberts <nickrob@snap.net.nz>
parents:
69679
diff
changeset
|
134 name would not otherwise be recorded in the GUD buffer. |
66776
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
135 end |
2acb0afcc57a
(pp, pp1): Use safe_debug_print.
Kim F. Storm <storm@cua.dk>
parents:
66772
diff
changeset
|
136 |
57911 | 137 # Print out current buffer point and boundaries |
138 define ppt | |
139 set $b = current_buffer | |
140 set $t = $b->text | |
141 printf "BUF PT: %d", $b->pt | |
142 if ($b->pt != $b->pt_byte) | |
143 printf "[%d]", $b->pt_byte | |
144 end | |
145 printf " of 1..%d", $t->z | |
146 if ($t->z != $t->z_byte) | |
147 printf "[%d]", $t->z_byte | |
148 end | |
149 if ($b->begv != 1 || $b->zv != $t->z) | |
150 printf " NARROW=%d..%d", $b->begv, $b->zv | |
151 if ($b->begv != $b->begv_byte || $b->zv != $b->zv_byte) | |
152 printf " [%d..%d]", $b->begv_byte, $b->zv_byte | |
153 end | |
154 end | |
155 printf " GAP: %d", $t->gpt | |
156 if ($t->gpt != $t->gpt_byte) | |
157 printf "[%d]", $t->gpt_byte | |
158 end | |
159 printf " SZ=%d\n", $t->gap_size | |
160 end | |
161 document ppt | |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
162 Print current buffer's point and boundaries. |
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
163 Prints values of point, beg, end, narrow, and gap for current buffer. |
57911 | 164 end |
165 | |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
166 define pitmethod |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
167 set $itmethod = $arg0 |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
168 # output $itmethod |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
169 if ($itmethod == 0) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
170 printf "GET_FROM_BUFFER" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
171 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
172 if ($itmethod == 1) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
173 printf "GET_FROM_DISPLAY_VECTOR" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
174 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
175 if ($itmethod == 2) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
176 printf "GET_FROM_STRING" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
177 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
178 if ($itmethod == 3) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
179 printf "GET_FROM_C_STRING" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
180 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
181 if ($itmethod == 4) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
182 printf "GET_FROM_IMAGE" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
183 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
184 if ($itmethod == 5) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
185 printf "GET_FROM_STRETCH" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
186 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
187 if ($itmethod < 0 || $itmethod > 5) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
188 output $itmethod |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
189 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
190 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
191 document pitmethod |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
192 Pretty print it->method given as first arg |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
193 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
194 |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
195 # Print out iterator given as first arg |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
196 define pitx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
197 set $it = $arg0 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
198 printf "cur=%d", $it->current.pos.charpos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
199 if ($it->current.pos.charpos != $it->current.pos.bytepos) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
200 printf "[%d]", $it->current.pos.bytepos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
201 end |
72390
00776be18466
(pitx): Print iterator position.
Kim F. Storm <storm@cua.dk>
parents:
71433
diff
changeset
|
202 printf " pos=%d", $it->position.charpos |
00776be18466
(pitx): Print iterator position.
Kim F. Storm <storm@cua.dk>
parents:
71433
diff
changeset
|
203 if ($it->position.charpos != $it->position.bytepos) |
00776be18466
(pitx): Print iterator position.
Kim F. Storm <storm@cua.dk>
parents:
71433
diff
changeset
|
204 printf "[%d]", $it->position.bytepos |
00776be18466
(pitx): Print iterator position.
Kim F. Storm <storm@cua.dk>
parents:
71433
diff
changeset
|
205 end |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
206 printf " start=%d", $it->start.pos.charpos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
207 if ($it->start.pos.charpos != $it->start.pos.bytepos) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
208 printf "[%d]", $it->start.pos.bytepos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
209 end |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
210 printf " end=%d", $it->end_charpos |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
211 printf " stop=%d", $it->stop_charpos |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
212 printf " face=%d", $it->face_id |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
213 if ($it->multibyte_p) |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
214 printf " MB" |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
215 end |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
216 if ($it->header_line_p) |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
217 printf " HL" |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
218 end |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
219 if ($it->n_overlay_strings > 0) |
66817
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
220 printf " nov=%d", $it->n_overlay_strings |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
221 end |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
222 if ($it->sp != 0) |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
223 printf " sp=%d", $it->sp |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
224 end |
106641 | 225 # IT_CHARACTER |
226 if ($it->what == 0) | |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
227 if ($it->len == 1 && $it->c >= ' ' && it->c < 255) |
64321
18dde5f76662
(pitx): Fix output format. Print string charpos.
Kim F. Storm <storm@cua.dk>
parents:
64084
diff
changeset
|
228 printf " ch='%c'", $it->c |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
229 else |
64321
18dde5f76662
(pitx): Fix output format. Print string charpos.
Kim F. Storm <storm@cua.dk>
parents:
64084
diff
changeset
|
230 printf " ch=[%d,%d]", $it->c, $it->len |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
231 end |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
232 else |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
233 printf " " |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
234 # output $it->what |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
235 if ($it->what == 0) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
236 printf "IT_CHARACTER" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
237 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
238 if ($it->what == 1) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
239 printf "IT_COMPOSITION" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
240 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
241 if ($it->what == 2) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
242 printf "IT_IMAGE" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
243 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
244 if ($it->what == 3) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
245 printf "IT_STRETCH" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
246 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
247 if ($it->what == 4) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
248 printf "IT_EOB" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
249 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
250 if ($it->what == 5) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
251 printf "IT_TRUNCATION" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
252 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
253 if ($it->what == 6) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
254 printf "IT_CONTINUATION" |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
255 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
256 if ($it->what < 0 || $it->what > 6) |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
257 output $it->what |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
258 end |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
259 end |
106641 | 260 if ($it->method != 0) |
261 # !GET_FROM_BUFFER | |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
262 printf " next=" |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
263 pitmethod $it->method |
106641 | 264 if ($it->method == 2) |
265 # GET_FROM_STRING | |
64321
18dde5f76662
(pitx): Fix output format. Print string charpos.
Kim F. Storm <storm@cua.dk>
parents:
64084
diff
changeset
|
266 printf "[%d]", $it->current.string_pos.charpos |
18dde5f76662
(pitx): Fix output format. Print string charpos.
Kim F. Storm <storm@cua.dk>
parents:
64084
diff
changeset
|
267 end |
106641 | 268 if ($it->method == 4) |
269 # GET_FROM_IMAGE | |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
270 printf "[%d]", $it->image_id |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
271 end |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
272 end |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
273 printf "\n" |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
274 if ($it->region_beg_charpos >= 0) |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
275 printf "reg=%d-%d ", $it->region_beg_charpos, $it->region_end_charpos |
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
276 end |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
277 printf "vpos=%d hpos=%d", $it->vpos, $it->hpos, |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
278 printf " y=%d lvy=%d", $it->current_y, $it->last_visible_y |
62416
123211374403
(pitx): Print more info about iterator.
Kim F. Storm <storm@cua.dk>
parents:
60148
diff
changeset
|
279 printf " x=%d vx=%d-%d", $it->current_x, $it->first_visible_x, $it->last_visible_x |
70425 | 280 printf " w=%d", $it->pixel_width |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
281 printf " a+d=%d+%d=%d", $it->ascent, $it->descent, $it->ascent+$it->descent |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
282 printf " max=%d+%d=%d", $it->max_ascent, $it->max_descent, $it->max_ascent+$it->max_descent |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
283 printf "\n" |
71433 | 284 set $i = 0 |
72390
00776be18466
(pitx): Print iterator position.
Kim F. Storm <storm@cua.dk>
parents:
71433
diff
changeset
|
285 while ($i < $it->sp && $i < 4) |
71433 | 286 set $e = $it->stack[$i] |
287 printf "stack[%d]: ", $i | |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
288 pitmethod $e->method |
71433 | 289 printf "[%d]", $e->position.charpos |
290 printf "\n" | |
291 set $i = $i + 1 | |
292 end | |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
293 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
294 document pitx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
295 Pretty print a display iterator. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
296 Take one arg, an iterator object or pointer. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
297 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
298 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
299 define pit |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
300 pitx it |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
301 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
302 document pit |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
303 Pretty print the display iterator it. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
304 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
305 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
306 define prowx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
307 set $row = $arg0 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
308 printf "y=%d x=%d pwid=%d", $row->y, $row->x, $row->pixel_width |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
309 printf " a+d=%d+%d=%d", $row->ascent, $row->height-$row->ascent, $row->height |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
310 printf " phys=%d+%d=%d", $row->phys_ascent, $row->phys_height-$row->phys_ascent, $row->phys_height |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
311 printf " vis=%d", $row->visible_height |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
312 printf " L=%d T=%d R=%d", $row->used[0], $row->used[1], $row->used[2] |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
313 printf "\n" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
314 printf "start=%d end=%d", $row->start.pos.charpos, $row->end.pos.charpos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
315 if ($row->enabled_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
316 printf " ENA" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
317 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
318 if ($row->displays_text_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
319 printf " DISP" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
320 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
321 if ($row->mode_line_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
322 printf " MODEL" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
323 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
324 if ($row->continued_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
325 printf " CONT" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
326 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
327 if ($row-> truncated_on_left_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
328 printf " TRUNC:L" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
329 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
330 if ($row-> truncated_on_right_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
331 printf " TRUNC:R" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
332 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
333 if ($row->starts_in_middle_of_char_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
334 printf " STARTMID" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
335 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
336 if ($row->ends_in_middle_of_char_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
337 printf " ENDMID" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
338 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
339 if ($row->ends_in_newline_from_string_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
340 printf " ENDNLFS" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
341 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
342 if ($row->ends_at_zv_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
343 printf " ENDZV" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
344 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
345 if ($row->overlapped_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
346 printf " OLAPD" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
347 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
348 if ($row->overlapping_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
349 printf " OLAPNG" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
350 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
351 printf "\n" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
352 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
353 document prowx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
354 Pretty print information about glyph_row. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
355 Takes one argument, a row object or pointer. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
356 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
357 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
358 define prow |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
359 prowx row |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
360 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
361 document prow |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
362 Pretty print information about glyph_row in row. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
363 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
364 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
365 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
366 define pcursorx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
367 set $cp = $arg0 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
368 printf "y=%d x=%d vpos=%d hpos=%d", $cp->y, $cp->x, $cp->vpos, $cp->hpos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
369 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
370 document pcursorx |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
371 Pretty print a window cursor. |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
372 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
373 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
374 define pcursor |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
375 printf "output: " |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
376 pcursorx output_cursor |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
377 printf "\n" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
378 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
379 document pcursor |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
380 Pretty print the output_cursor. |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
381 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
382 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
383 define pwinx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
384 set $w = $arg0 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
385 xgetint $w->sequence_number |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
386 if ($w->mini_p != Qnil) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
387 printf "Mini " |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
388 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
389 printf "Window %d ", $int |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
390 xgetptr $w->buffer |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
391 set $tem = (struct buffer *) $ptr |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
392 xgetptr $tem->name |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
393 printf "%s", ((struct Lisp_String *) $ptr)->data |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
394 printf "\n" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
395 xgetptr $w->start |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
396 set $tem = (struct Lisp_Marker *) $ptr |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
397 printf "start=%d end:", $tem->charpos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
398 if ($w->window_end_valid != Qnil) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
399 xgetint $w->window_end_pos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
400 printf "pos=%d", $int |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
401 xgetint $w->window_end_vpos |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
402 printf " vpos=%d", $int |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
403 else |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
404 printf "invalid" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
405 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
406 printf " vscroll=%d", $w->vscroll |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
407 if ($w->force_start != Qnil) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
408 printf " FORCE_START" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
409 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
410 if ($w->must_be_updated_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
411 printf " MUST_UPD" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
412 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
413 printf "\n" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
414 printf "cursor: " |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
415 pcursorx $w->cursor |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
416 printf " phys: " |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
417 pcursorx $w->phys_cursor |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
418 if ($w->phys_cursor_on_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
419 printf " ON" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
420 else |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
421 printf " OFF" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
422 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
423 printf " blk=" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
424 if ($w->last_cursor_off_p != $w->cursor_off_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
425 if ($w->last_cursor_off_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
426 printf "ON->" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
427 else |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
428 printf "OFF->" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
429 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
430 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
431 if ($w->cursor_off_p) |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
432 printf "ON" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
433 else |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
434 printf "OFF" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
435 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
436 printf "\n" |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
437 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
438 document pwinx |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
439 Pretty print a window structure. |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
440 Takes one argument, a pointer to a window structure. |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
441 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
442 |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
443 define pwin |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
444 pwinx w |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
445 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
446 document pwin |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
447 Pretty print window structure w. |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
448 end |
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
449 |
107605
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
450 define pbiditype |
107606
297c59e52ecf
Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107605
diff
changeset
|
451 if ($arg0 == 0) |
297c59e52ecf
Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107605
diff
changeset
|
452 printf "UNDEF" |
297c59e52ecf
Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107605
diff
changeset
|
453 end |
107605
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
454 if ($arg0 == 1) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
455 printf "L" |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
456 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
457 if ($arg0 == 2) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
458 printf "R" |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
459 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
460 if ($arg0 == 3) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
461 printf "EN" |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
462 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
463 if ($arg0 == 4) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
464 printf "AN" |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
465 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
466 if ($arg0 == 5) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
467 printf "BN" |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
468 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
469 if ($arg0 == 6) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
470 printf "B" |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
471 end |
107606
297c59e52ecf
Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107605
diff
changeset
|
472 if ($arg0 < 0 || $arg0 > 6) |
107605
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
473 printf "%d??", $arg0 |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
474 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
475 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
476 document pbiditype |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
477 Print textual description of bidi type given as first argument. |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
478 end |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
479 |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
480 define pgx |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
481 set $g = $arg0 |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
482 # CHAR_GLYPH |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
483 if ($g->type == 0) |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
484 if ($g->u.ch >= ' ' && $g->u.ch < 127) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
485 printf "CHAR[%c]", $g->u.ch |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
486 else |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
487 printf "CHAR[0x%x]", $g->u.ch |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
488 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
489 end |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
490 # COMPOSITE_GLYPH |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
491 if ($g->type == 1) |
106639
036850c09841
(pgx): Fix display of composite glyphs. Display cmp.from and cmp.to as well.
Eli Zaretskii <eliz@gnu.org>
parents:
106624
diff
changeset
|
492 printf "COMP[%d (%d..%d)]", $g->u.cmp.id, $g->u.cmp.from, $g->u.cmp.to |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
493 end |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
494 # IMAGE_GLYPH |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
495 if ($g->type == 2) |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
496 printf "IMAGE[%d]", $g->u.img_id |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
497 end |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
498 # STRETCH_GLYPH |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
499 if ($g->type == 3) |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
500 printf "STRETCH[%d+%d]", $g->u.stretch.height, $g->u.stretch.ascent |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
501 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
502 xgettype ($g->object) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
503 if ($type == Lisp_String) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
504 printf " str=%x[%d]", $g->object, $g->charpos |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
505 else |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
506 printf " pos=%d", $g->charpos |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
507 end |
107605
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
508 # For characters, print their resolved level and bidi type |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
509 if ($g->type == 0) |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
510 printf " blev=%d,btyp=", $g->resolved_level |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
511 pbiditype $g->bidi_type |
b1e1b45c9fb6
Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents:
106641
diff
changeset
|
512 end |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
513 printf " w=%d a+d=%d+%d", $g->pixel_width, $g->ascent, $g->descent |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
514 # If not DEFAULT_FACE_ID |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
515 if ($g->face_id != 0) |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
516 printf " face=%d", $g->face_id |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
517 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
518 if ($g->voffset) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
519 printf " vof=%d", $g->voffset |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
520 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
521 if ($g->multibyte_p) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
522 printf " MB" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
523 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
524 if ($g->padding_p) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
525 printf " PAD" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
526 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
527 if ($g->glyph_not_available_p) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
528 printf " N/A" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
529 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
530 if ($g->overlaps_vertically_p) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
531 printf " OVL" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
532 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
533 if ($g->left_box_line_p) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
534 printf " [" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
535 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
536 if ($g->right_box_line_p) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
537 printf " ]" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
538 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
539 if ($g->slice.x || $g->slice.y || $g->slice.width || $g->slice.height) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
540 printf " slice=%d,%d,%d,%d" ,$g->slice.x, $g->slice.y, $g->slice.width, $g->slice.height |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
541 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
542 printf "\n" |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
543 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
544 document pgx |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
545 Pretty print a glyph structure. |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
546 Takes one argument, a pointer to a glyph structure. |
71363
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
547 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
548 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
549 define pg |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
550 set $pgidx = 0 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
551 pgx glyph |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
552 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
553 document pg |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
554 Pretty print glyph structure glyph. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
555 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
556 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
557 define pgi |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
558 set $pgidx = $arg0 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
559 pgx (&glyph[$pgidx]) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
560 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
561 document pgi |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
562 Pretty print glyph structure glyph[I]. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
563 Takes one argument, a integer I. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
564 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
565 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
566 define pgn |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
567 set $pgidx = $pgidx + 1 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
568 pgx (&glyph[$pgidx]) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
569 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
570 document pgn |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
571 Pretty print next glyph structure. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
572 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
573 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
574 define pgrowx |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
575 set $row = $arg0 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
576 set $area = 0 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
577 set $xofs = $row->x |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
578 while ($area < 3) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
579 set $used = $row->used[$area] |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
580 if ($used > 0) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
581 set $gl0 = $row->glyphs[$area] |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
582 set $pgidx = 0 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
583 printf "%s: %d glyphs\n", ($area == 0 ? "LEFT" : $area == 2 ? "RIGHT" : "TEXT"), $used |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
584 while ($pgidx < $used) |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
585 printf "%3d %4d: ", $pgidx, $xofs |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
586 pgx $gl0[$pgidx] |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
587 set $xofs = $xofs + $gl0[$pgidx]->pixel_width |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
588 set $pgidx = $pgidx + 1 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
589 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
590 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
591 set $area = $area + 1 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
592 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
593 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
594 document pgrowx |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
595 Pretty print all glyphs in a row structure. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
596 Takes one argument, a pointer to a row structure. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
597 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
598 |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
599 define pgrow |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
600 pgrowx row |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
601 end |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
602 document pgrow |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
603 Pretty print all glyphs in row structure row. |
9f75a05018ea
(pitx): Show composition parameters.
Kim F. Storm <storm@cua.dk>
parents:
70425
diff
changeset
|
604 end |
60148
28b65d07edde
(pitx, pit): Pretty print display iterator.
Kim F. Storm <storm@cua.dk>
parents:
59660
diff
changeset
|
605 |
106624
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
606 define pgrowit |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
607 pgrowx it->glyph_row |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
608 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
609 document pgrowit |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
610 Pretty print all glyphs in it->glyph_row. |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
611 end |
7139c31d3b12
(pitx): Don't use enum names, use their values. Remove reference to
Eli Zaretskii <eliz@gnu.org>
parents:
103739
diff
changeset
|
612 |
567 | 613 define xtype |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
614 xgettype $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
615 output $type |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
616 echo \n |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
617 if $type == Lisp_Misc |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
618 xmisctype |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
619 else |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
620 if $type == Lisp_Vectorlike |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
621 xvectype |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
622 end |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
623 end |
567 | 624 end |
638 | 625 document xtype |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
626 Print the type of $, assuming it is an Emacs Lisp value. |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
627 If the first type printed is Lisp_Vector or Lisp_Misc, |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
628 a second line gives the more precise type. |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
629 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
630 |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
631 define xvectype |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
632 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
633 set $size = ((struct Lisp_Vector *) $ptr)->size |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
634 output ($size & PVEC_FLAG) ? (enum pvec_type) ($size & PVEC_TYPE_MASK) : $size & ~gdb_array_mark_flag |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
635 echo \n |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
636 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
637 document xvectype |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
638 Print the size or vector subtype of $. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
639 This command assumes that $ is a vector or pseudovector. |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
640 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
641 |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
642 define xmisctype |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
643 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
644 output (enum Lisp_Misc_Type) (((struct Lisp_Free *) $ptr)->type) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
645 echo \n |
10299
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
646 end |
0de933eb95a2
Adapt to new Lisp_Object format.
Richard M. Stallman <rms@gnu.org>
parents:
8310
diff
changeset
|
647 document xmisctype |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
648 Assume that $ is some misc type and print its specific type. |
638 | 649 end |
567 | 650 |
651 define xint | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
652 xgetint $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
653 print $int |
567 | 654 end |
638 | 655 document xint |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
656 Print $ as an Emacs Lisp integer. This gets the sign right. |
638 | 657 end |
567 | 658 |
659 define xptr | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
660 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
661 print (void *) $ptr |
567 | 662 end |
638 | 663 document xptr |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
664 Print the pointer portion of an Emacs Lisp value in $. |
638 | 665 end |
567 | 666 |
667 define xmarker | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
668 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
669 print (struct Lisp_Marker *) $ptr |
567 | 670 end |
638 | 671 document xmarker |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
672 Print $ as a marker pointer. |
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
673 This command assumes that $ is an Emacs Lisp marker value. |
638 | 674 end |
567 | 675 |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
676 define xoverlay |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
677 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
678 print (struct Lisp_Overlay *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
679 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
680 document xoverlay |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
681 Print $ as a overlay pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
682 This command assumes that $ is an Emacs Lisp overlay value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
683 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
684 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
685 define xmiscfree |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
686 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
687 print (struct Lisp_Free *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
688 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
689 document xmiscfree |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
690 Print $ as a misc free-cell pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
691 This command assumes that $ is an Emacs Lisp Misc value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
692 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
693 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
694 define xintfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
695 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
696 print (struct Lisp_Intfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
697 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
698 document xintfwd |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
699 Print $ as an integer forwarding pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
700 This command assumes that $ is an Emacs Lisp Misc value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
701 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
702 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
703 define xboolfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
704 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
705 print (struct Lisp_Boolfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
706 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
707 document xboolfwd |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
708 Print $ as a boolean forwarding pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
709 This command assumes that $ is an Emacs Lisp Misc value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
710 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
711 |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
712 define xobjfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
713 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
714 print (struct Lisp_Objfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
715 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
716 document xobjfwd |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
717 Print $ as an object forwarding pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
718 This command assumes that $ is an Emacs Lisp Misc value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
719 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
720 |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
721 define xbufobjfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
722 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
723 print (struct Lisp_Buffer_Objfwd *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
724 end |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
725 document xbufobjfwd |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
726 Print $ as a buffer-local object forwarding pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
727 This command assumes that $ is an Emacs Lisp Misc value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
728 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
729 |
11006
2aa4135eee50
(xkbobjfwd): Renamed from xdispobjfwd.
Karl Heuer <kwzh@gnu.org>
parents:
10582
diff
changeset
|
730 define xkbobjfwd |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
731 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
732 print (struct Lisp_Kboard_Objfwd *) $ptr |
10582 | 733 end |
11006
2aa4135eee50
(xkbobjfwd): Renamed from xdispobjfwd.
Karl Heuer <kwzh@gnu.org>
parents:
10582
diff
changeset
|
734 document xkbobjfwd |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
735 Print $ as a kboard-local object forwarding pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
736 This command assumes that $ is an Emacs Lisp Misc value. |
10582 | 737 end |
738 | |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
739 define xbuflocal |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
740 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
741 print (struct Lisp_Buffer_Local_Value *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
742 end |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
743 document xbuflocal |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
744 Print $ as a buffer-local-value pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
745 This command assumes that $ is an Emacs Lisp Misc value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
746 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
747 |
567 | 748 define xsymbol |
55686 | 749 set $sym = $ |
750 xgetptr $sym | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
751 print (struct Lisp_Symbol *) $ptr |
55686 | 752 xprintsym $sym |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
753 echo \n |
567 | 754 end |
638 | 755 document xsymbol |
756 Print the name and address of the symbol $. | |
7962 | 757 This command assumes that $ is an Emacs Lisp symbol value. |
638 | 758 end |
567 | 759 |
760 define xstring | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
761 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
762 print (struct Lisp_String *) $ptr |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
763 xprintstr $ |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
764 echo \n |
567 | 765 end |
766 document xstring | |
638 | 767 Print the contents and address of the string $. |
7962 | 768 This command assumes that $ is an Emacs Lisp string value. |
567 | 769 end |
770 | |
771 define xvector | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
772 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
773 print (struct Lisp_Vector *) $ptr |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
774 output ($->size > 50) ? 0 : ($->contents[0])@($->size & ~gdb_array_mark_flag) |
999 | 775 echo \n |
567 | 776 end |
777 document xvector | |
638 | 778 Print the contents and address of the vector $. |
7962 | 779 This command assumes that $ is an Emacs Lisp vector value. |
567 | 780 end |
781 | |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
782 define xprocess |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
783 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
784 print (struct Lisp_Process *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
785 output *$ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
786 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
787 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
788 document xprocess |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
789 Print the address of the struct Lisp_process to which $ points. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
790 This command assumes that $ is a Lisp_Object. |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
791 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
792 |
1113 | 793 define xframe |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
794 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
795 print (struct frame *) $ptr |
70425 | 796 xgetptr $->name |
797 set $ptr = (struct Lisp_String *) $ptr | |
798 xprintstr $ptr | |
799 echo \n | |
567 | 800 end |
1113 | 801 document xframe |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
802 Print $ as a frame pointer. |
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
803 This command assumes $ is an Emacs Lisp frame value. |
638 | 804 end |
567 | 805 |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
806 define xcompiled |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
807 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
808 print (struct Lisp_Vector *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
809 output ($->contents[0])@($->size & 0xff) |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
810 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
811 document xcompiled |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
812 Print $ as a compiled function pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
813 This command assumes that $ is an Emacs Lisp compiled value. |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
814 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
815 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
816 define xwindow |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
817 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
818 print (struct window *) $ptr |
68857
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
819 set $window = (struct window *) $ptr |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
820 xgetint $window->total_cols |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
821 set $width=$int |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
822 xgetint $window->total_lines |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
823 set $height=$int |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
824 xgetint $window->left_col |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
825 set $left=$int |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
826 xgetint $window->top_line |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
827 set $top=$int |
faf10626ffee
(xwindow): Update the code to show the window box.
Richard M. Stallman <rms@gnu.org>
parents:
68651
diff
changeset
|
828 printf "%dx%d+%d+%d\n", $width, $height, $left, $top |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
829 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
830 document xwindow |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
831 Print $ as a window pointer, assuming it is an Emacs Lisp window value. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
832 Print the window's position as "WIDTHxHEIGHT+LEFT+TOP". |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
833 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
834 |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
835 define xwinconfig |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
836 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
837 print (struct save_window_data *) $ptr |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
838 end |
10495
70bd087c47a9
(xbufobjfwd, xbuflocal, xwinconfig):
Karl Heuer <kwzh@gnu.org>
parents:
10483
diff
changeset
|
839 document xwinconfig |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
840 Print $ as a window configuration pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
841 This command assumes that $ is an Emacs Lisp window configuration value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
842 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
843 |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
844 define xsubr |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
845 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
846 print (struct Lisp_Subr *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
847 output *$ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
848 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
849 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
850 document xsubr |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
851 Print the address of the subr which the Lisp_Object $ points to. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
852 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
853 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
854 define xchartable |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
855 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
856 print (struct Lisp_Char_Table *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
857 printf "Purpose: " |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
858 xprintsym $->purpose |
89909 | 859 printf " %d extra slots", ($->size & 0x1ff) - 68 |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
860 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
861 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
862 document xchartable |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
863 Print the address of the char-table $, and its purpose. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
864 This command assumes that $ is an Emacs Lisp char-table value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
865 end |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
866 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
867 define xboolvector |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
868 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
869 print (struct Lisp_Bool_Vector *) $ptr |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
870 output ($->size > 256) ? 0 : ($->data[0])@((($->size & ~gdb_array_mark_flag) + 7)/ 8) |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
871 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
872 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
873 document xboolvector |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
874 Print the contents and address of the bool-vector $. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
875 This command assumes that $ is an Emacs Lisp bool-vector value. |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
876 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
877 |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
878 define xbuffer |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
879 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
880 print (struct buffer *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
881 xgetptr $->name |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
882 output ((struct Lisp_String *) $ptr)->data |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
883 echo \n |
22012
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
884 end |
4379a41b6f2e
(xstring): Handle unibyte strings.
Richard M. Stallman <rms@gnu.org>
parents:
20672
diff
changeset
|
885 document xbuffer |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
886 Set $ as a buffer pointer and the name of the buffer. |
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
887 This command assumes $ is an Emacs Lisp buffer value. |
10483
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
888 end |
727cd2061e2a
(xboolfwd, xbuffer_local_value, xbuffer_objfwd, xcompiled, xintfwd, xmiscfree,
Karl Heuer <kwzh@gnu.org>
parents:
10337
diff
changeset
|
889 |
30636 | 890 define xhashtable |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
891 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
892 print (struct Lisp_Hash_Table *) $ptr |
30636 | 893 end |
894 document xhashtable | |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
895 Set $ as a hash table pointer. |
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
896 This command assumes that $ is an Emacs Lisp hash table value. |
30636 | 897 end |
898 | |
567 | 899 define xcons |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
900 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
901 print (struct Lisp_Cons *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
902 output/x *$ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
903 echo \n |
567 | 904 end |
638 | 905 document xcons |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
906 Print the contents of $ as an Emacs Lisp cons. |
638 | 907 end |
567 | 908 |
18522
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
909 define nextcons |
67020
2385088bbb84
(nextcons, xcdr, xfloat): Update for changes in
Andreas Schwab <schwab@suse.de>
parents:
66903
diff
changeset
|
910 p $.u.cdr |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
911 xcons |
18522
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
912 end |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
913 document nextcons |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
914 Print the contents of the next cell in a list. |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
915 This command assumes that the last thing you printed was a cons cell contents |
18522
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
916 (type struct Lisp_Cons) or a pointer to one. |
c572c073c982
(xcons): Print car and cdr in hex.
Richard M. Stallman <rms@gnu.org>
parents:
15536
diff
changeset
|
917 end |
567 | 918 define xcar |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
919 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
920 xgettype $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
921 print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->car : 0) |
567 | 922 end |
638 | 923 document xcar |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
924 Assume that $ is an Emacs Lisp pair and print its car. |
638 | 925 end |
567 | 926 |
927 define xcdr | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
928 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
929 xgettype $ |
67020
2385088bbb84
(nextcons, xcdr, xfloat): Update for changes in
Andreas Schwab <schwab@suse.de>
parents:
66903
diff
changeset
|
930 print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->u.cdr : 0) |
567 | 931 end |
638 | 932 document xcdr |
75301
2e356462f90e
(ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
Eli Zaretskii <eliz@gnu.org>
parents:
75284
diff
changeset
|
933 Assume that $ is an Emacs Lisp pair and print its cdr. |
638 | 934 end |
567 | 935 |
70425 | 936 define xlist |
937 xgetptr $ | |
938 set $cons = (struct Lisp_Cons *) $ptr | |
939 xgetptr Qnil | |
940 set $nil = $ptr | |
941 set $i = 0 | |
942 while $cons != $nil && $i < 10 | |
943 p/x $cons->car | |
944 xpr | |
945 xgetptr $cons->u.cdr | |
946 set $cons = (struct Lisp_Cons *) $ptr | |
947 set $i = $i + 1 | |
948 printf "---\n" | |
949 end | |
950 if $cons == $nil | |
951 printf "nil\n" | |
952 else | |
953 printf "...\n" | |
954 p $ptr | |
955 end | |
956 end | |
957 document xlist | |
958 Print $ assuming it is a list. | |
959 end | |
960 | |
4267 | 961 define xfloat |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
962 xgetptr $ |
67020
2385088bbb84
(nextcons, xcdr, xfloat): Update for changes in
Andreas Schwab <schwab@suse.de>
parents:
66903
diff
changeset
|
963 print ((struct Lisp_Float *) $ptr)->u.data |
4267 | 964 end |
965 document xfloat | |
966 Print $ assuming it is a lisp floating-point number. | |
967 end | |
968 | |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
969 define xscrollbar |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
970 xgetptr $ |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
971 print (struct scrollbar *) $ptr |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
972 output *$ |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
973 echo \n |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
974 end |
4268
0795ced6013f
(xscrollbar): Fix typo specifying doc string.
Richard M. Stallman <rms@gnu.org>
parents:
4267
diff
changeset
|
975 document xscrollbar |
1789
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
976 Print $ as a scrollbar pointer. |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
977 end |
2c65d1a8af09
* .gdbinit: Add "-geometry +0+0" to default args.
Jim Blandy <jimb@redhat.com>
parents:
1551
diff
changeset
|
978 |
70425 | 979 define xpr |
980 xtype | |
981 if $type == Lisp_Int | |
982 xint | |
983 end | |
984 if $type == Lisp_Symbol | |
985 xsymbol | |
986 end | |
987 if $type == Lisp_String | |
988 xstring | |
989 end | |
990 if $type == Lisp_Cons | |
991 xcons | |
992 end | |
993 if $type == Lisp_Float | |
994 xfloat | |
995 end | |
996 if $type == Lisp_Misc | |
997 set $misc = (enum Lisp_Misc_Type) (((struct Lisp_Free *) $ptr)->type) | |
998 if $misc == Lisp_Misc_Free | |
999 xmiscfree | |
1000 end | |
1001 if $misc == Lisp_Misc_Boolfwd | |
1002 xboolfwd | |
1003 end | |
1004 if $misc == Lisp_Misc_Marker | |
1005 xmarker | |
1006 end | |
1007 if $misc == Lisp_Misc_Intfwd | |
1008 xintfwd | |
1009 end | |
1010 if $misc == Lisp_Misc_Boolfwd | |
1011 xboolfwd | |
1012 end | |
1013 if $misc == Lisp_Misc_Objfwd | |
1014 xobjfwd | |
1015 end | |
1016 if $misc == Lisp_Misc_Buffer_Objfwd | |
1017 xbufobjfwd | |
1018 end | |
1019 if $misc == Lisp_Misc_Buffer_Local_Value | |
1020 xbuflocal | |
1021 end | |
1022 # if $misc == Lisp_Misc_Some_Buffer_Local_Value | |
1023 # xvalue | |
1024 # end | |
1025 if $misc == Lisp_Misc_Overlay | |
1026 xoverlay | |
1027 end | |
1028 if $misc == Lisp_Misc_Kboard_Objfwd | |
1029 xkbobjfwd | |
1030 end | |
1031 # if $misc == Lisp_Misc_Save_Value | |
1032 # xsavevalue | |
1033 # end | |
1034 end | |
1035 if $type == Lisp_Vectorlike | |
1036 set $size = ((struct Lisp_Vector *) $ptr)->size | |
1037 if ($size & PVEC_FLAG) | |
1038 set $vec = (enum pvec_type) ($size & PVEC_TYPE_MASK) | |
1039 if $vec == PVEC_NORMAL_VECTOR | |
1040 xvector | |
1041 end | |
1042 if $vec == PVEC_PROCESS | |
1043 xprocess | |
1044 end | |
1045 if $vec == PVEC_FRAME | |
1046 xframe | |
1047 end | |
1048 if $vec == PVEC_COMPILED | |
1049 xcompiled | |
1050 end | |
1051 if $vec == PVEC_WINDOW | |
1052 xwindow | |
1053 end | |
1054 if $vec == PVEC_WINDOW_CONFIGURATION | |
1055 xwinconfig | |
1056 end | |
1057 if $vec == PVEC_SUBR | |
1058 xsubr | |
1059 end | |
1060 if $vec == PVEC_CHAR_TABLE | |
1061 xchartable | |
1062 end | |
1063 if $vec == PVEC_BOOL_VECTOR | |
1064 xboolvector | |
1065 end | |
1066 if $vec == PVEC_BUFFER | |
1067 xbuffer | |
1068 end | |
1069 if $vec == PVEC_HASH_TABLE | |
1070 xhashtable | |
1071 end | |
1072 else | |
1073 xvector | |
1074 end | |
1075 end | |
1076 end | |
1077 document xpr | |
1078 Print $ as a lisp object of any type. | |
1079 end | |
1080 | |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
1081 define xprintstr |
76129
a0627ed0c1aa
(xprintstr): Ensure GDB (> 6.6) prints symbol name
Nick Roberts <nickrob@snap.net.nz>
parents:
75363
diff
changeset
|
1082 set $data = (char *) $arg0->data |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
1083 output ($arg0->size > 1000) ? 0 : ($data[0])@($arg0->size_byte < 0 ? $arg0->size & ~gdb_array_mark_flag : $arg0->size_byte) |
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
1084 end |
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
1085 |
27290 | 1086 define xprintsym |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1087 xgetptr $arg0 |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1088 set $sym = (struct Lisp_Symbol *) $ptr |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1089 xgetptr $sym->xname |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1090 set $sym_name = (struct Lisp_String *) $ptr |
55681
91c18484e1a2
(xprintstr): New fun.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
55609
diff
changeset
|
1091 xprintstr $sym_name |
27290 | 1092 end |
1093 document xprintsym | |
1094 Print argument as a symbol. | |
1095 end | |
1096 | |
88349
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1097 define xcoding |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1098 set $tmp = (struct Lisp_Hash_Table *) ((Vcoding_system_hash_table & $valmask) | gdb_data_seg_bits) |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1099 set $tmp = (struct Lisp_Vector *) (($tmp->key_and_value & $valmask) | gdb_data_seg_bits) |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1100 set $name = $tmp->contents[$arg0 * 2] |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1101 print $name |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1102 pr |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1103 print $tmp->contents[$arg0 * 2 + 1] |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1104 pr |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1105 end |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1106 document xcoding |
89483 | 1107 Print the name and attributes of coding system that has ID (argument). |
88349
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1108 end |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1109 |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1110 define xcharset |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1111 set $tmp = (struct Lisp_Hash_Table *) ((Vcharset_hash_table & $valmask) | gdb_data_seg_bits) |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1112 set $tmp = (struct Lisp_Vector *) (($tmp->key_and_value & $valmask) | gdb_data_seg_bits) |
103739
e949a1712db6
(xcharset): Fix the treating $arg0.
Kenichi Handa <handa@m17n.org>
parents:
100976
diff
changeset
|
1113 p $tmp->contents[charset_table[$arg0].hash_index * 2] |
88349
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1114 pr |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1115 end |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1116 document xcharset |
89483 | 1117 Print the name of charset that has ID (argument). |
88349
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1118 end |
e5d55ed9b335
(xchartable): Adjusted for the change of char table
Kenichi Handa <handa@m17n.org>
parents:
42907
diff
changeset
|
1119 |
91354 | 1120 define xfontset |
1121 xgetptr $ | |
1122 set $tbl = (struct Lisp_Char_Table *) $ptr | |
1123 print $tbl | |
1124 xgetint $tbl->extras[0] | |
1125 printf " ID:%d", $int | |
1126 xgettype $tbl->extras[1] | |
1127 xgetptr $tbl->extras[1] | |
1128 if $type == Lisp_String | |
1129 set $ptr = (struct Lisp_String *) $ptr | |
1130 printf " Name:" | |
1131 xprintstr $ptr | |
1132 else | |
1133 xgetptr $tbl->extras[2] | |
1134 set $ptr = (struct Lisp_Char_Table *) $ptr | |
1135 xgetptr $ptr->extras[1] | |
1136 set $ptr = (struct Lisp_String *) $ptr | |
1137 printf " Realized from:" | |
1138 xprintstr $ptr | |
1139 end | |
1140 echo \n | |
1141 end | |
1142 | |
95661 | 1143 define xfont |
1144 xgetptr $ | |
1145 set $size = (((struct Lisp_Vector *) $ptr)->size & 0x1FF) | |
1146 if $size == FONT_SPEC_MAX | |
1147 print (struct font_spec *) $ptr | |
1148 else | |
1149 if $size == FONT_ENTITY_MAX | |
1150 print (struct font_entity *) $ptr | |
1151 else | |
1152 print (struct font *) $ptr | |
1153 end | |
1154 end | |
1155 end | |
1156 document xfont | |
1157 Print $ assuming it is a list font (font-spec, font-entity, or font-object). | |
1158 end | |
1159 | |
27290 | 1160 define xbacktrace |
1161 set $bt = backtrace_list | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
45966
diff
changeset
|
1162 while $bt |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1163 xgettype (*$bt->function) |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1164 if $type == Lisp_Symbol |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1165 xprintsym (*$bt->function) |
84741
e903d611edc5
(xbacktrace): Print the arg's address rather than the value
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
83714
diff
changeset
|
1166 printf " (0x%x)\n", $bt->args |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1167 else |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1168 printf "0x%x ", *$bt->function |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1169 if $type == Lisp_Vectorlike |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1170 xgetptr (*$bt->function) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1171 set $size = ((struct Lisp_Vector *) $ptr)->size |
55609
253acecd37f9
Mask off gdb_array_mark_flag from vector sizes.
Andreas Schwab <schwab@suse.de>
parents:
54690
diff
changeset
|
1172 output ($size & PVEC_FLAG) ? (enum pvec_type) ($size & PVEC_TYPE_MASK) : $size & ~gdb_array_mark_flag |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1173 else |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1174 printf "Lisp type %d", $type |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1175 end |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1176 echo \n |
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1177 end |
27290 | 1178 set $bt = $bt->next |
1179 end | |
1180 end | |
1181 document xbacktrace | |
1182 Print a backtrace of Lisp function calls from backtrace_list. | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
45966
diff
changeset
|
1183 Set a breakpoint at Fsignal and call this to see from where |
32812
c49b460bb280
(xbacktrace): Handle case that $bt->function isn't
Gerd Moellmann <gerd@gnu.org>
parents:
31960
diff
changeset
|
1184 an error was signaled. |
27290 | 1185 end |
1186 | |
70425 | 1187 define which |
1188 set debug_print (which_symbols ($arg0)) | |
1189 end | |
1190 document which | |
75284
f4d4f6f361cc
Reformat documentation so that first sentence
Nick Roberts <nickrob@snap.net.nz>
parents:
74750
diff
changeset
|
1191 Print symbols which references a given lisp object |
70425 | 1192 either as its symbol value or symbol function. |
1193 end | |
1194 | |
1195 define xbytecode | |
1196 set $bt = byte_stack_list | |
1197 while $bt | |
1198 xgettype ($bt->byte_string) | |
1199 printf "0x%x => ", $bt->byte_string | |
1200 which $bt->byte_string | |
1201 set $bt = $bt->next | |
1202 end | |
1203 end | |
1204 document xbytecode | |
1205 Print a backtrace of the byte code stack. | |
1206 end | |
1207 | |
66817
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1208 # Show Lisp backtrace after normal backtrace. |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1209 define hookpost-backtrace |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1210 set $bt = backtrace_list |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1211 if $bt |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1212 echo \n |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1213 echo Lisp Backtrace:\n |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1214 xbacktrace |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1215 end |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1216 end |
98ff41842c94
(pitx): Fix output format if n_overlay_strings > 0.
Kim F. Storm <storm@cua.dk>
parents:
66776
diff
changeset
|
1217 |
27290 | 1218 define xreload |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1219 set $tagmask = (((long)1 << gdb_gctypebits) - 1) |
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1220 set $valmask = gdb_use_lsb ? ~($tagmask) : ((long)1 << gdb_valbits) - 1 |
27290 | 1221 end |
1222 document xreload | |
1223 When starting Emacs a second time in the same gdb session under | |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1224 FreeBSD 2.2.5, gdb 4.13, $valmask have lost |
35792
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
1225 their values. (The same happens on current (2000) versions of GNU/Linux |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
1226 with gdb 5.0.) |
31960
eb2d3d3a8eb5
(xreload): Note its need on GNU/Linux.
Dave Love <fx@gnu.org>
parents:
30636
diff
changeset
|
1227 This function reloads them. |
27290 | 1228 end |
54690
f9c48c0105bd
Make it work for USE_LSB_TAG and !NO_LISP_UNION.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
52401
diff
changeset
|
1229 xreload |
27290 | 1230 |
57306
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1231 # Flush display (X only) |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1232 define ff |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1233 set x_flush (0) |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1234 end |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1235 document ff |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1236 Flush pending X window display updates to screen. |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1237 Works only when an inferior emacs is executing. |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1238 end |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1239 |
aca7edaa93d4
(pp): Shorthand for p ARG + pr.
Kim F. Storm <storm@cua.dk>
parents:
55686
diff
changeset
|
1240 |
35792
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
1241 define hook-run |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
1242 xreload |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
1243 end |
9ec1e59890a2
(hook-run): Define to run xreload.
Dave Love <fx@gnu.org>
parents:
34876
diff
changeset
|
1244 |
42907
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
1245 # Call xreload if a new Emacs executable is loaded. |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
1246 define hookpost-run |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
1247 xreload |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
1248 end |
1865230232b7
(hookpost-run): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
42682
diff
changeset
|
1249 |
638 | 1250 set print pretty on |
4267 | 1251 set print sevenbit-strings |
567 | 1252 |
732 | 1253 show environment DISPLAY |
4487 | 1254 show environment TERM |
732 | 1255 |
67925
477140fdc860
Tell users not to worry about GDB warnings that some functions do not
Eli Zaretskii <eliz@gnu.org>
parents:
67633
diff
changeset
|
1256 # People get bothered when they see messages about non-existent functions... |
68007
0b578812ab24
Undo last change. Instead, look at Vsystem_type to
Kim F. Storm <storm@cua.dk>
parents:
67925
diff
changeset
|
1257 xgetptr Vsystem_type |
68297
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1258 # $ptr is NULL in temacs |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1259 if ($ptr != 0) |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1260 set $tem = (struct Lisp_Symbol *) $ptr |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1261 xgetptr $tem->xname |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1262 set $tem = (struct Lisp_String *) $ptr |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1263 set $tem = (char *) $tem->data |
67925
477140fdc860
Tell users not to worry about GDB warnings that some functions do not
Eli Zaretskii <eliz@gnu.org>
parents:
67633
diff
changeset
|
1264 |
68297
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1265 # Don't let abort actually run, as it will make stdio stop working and |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1266 # therefore the `pr' command above as well. |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1267 if $tem[0] == 'w' && $tem[1] == 'i' && $tem[2] == 'n' && $tem[3] == 'd' |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1268 # The windows-nt build replaces abort with its own function. |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1269 break w32_abort |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1270 else |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1271 break abort |
9b3bace59343
Don't dereference Vsystem_type's Lisp_Symbol pointer if it is NULL.
Eli Zaretskii <eliz@gnu.org>
parents:
68074
diff
changeset
|
1272 end |
68047 | 1273 end |
567 | 1274 |
68047 | 1275 # x_error_quitter is defined only on X. But window-system is set up |
1276 # only at run time, during Emacs startup, so we need to defer setting | |
1277 # the breakpoint. init_sys_modes is the first function called on | |
1278 # every platform after init_display, where window-system is set. | |
1279 tbreak init_sys_modes | |
1280 commands | |
1281 silent | |
83485 | 1282 xgetptr Vinitial_window_system |
68024
75f9e1ee6fa6
Avoid a warning message when x_error_quitter is not compiled in.
Eli Zaretskii <eliz@gnu.org>
parents:
68007
diff
changeset
|
1283 set $tem = (struct Lisp_Symbol *) $ptr |
75f9e1ee6fa6
Avoid a warning message when x_error_quitter is not compiled in.
Eli Zaretskii <eliz@gnu.org>
parents:
68007
diff
changeset
|
1284 xgetptr $tem->xname |
75f9e1ee6fa6
Avoid a warning message when x_error_quitter is not compiled in.
Eli Zaretskii <eliz@gnu.org>
parents:
68007
diff
changeset
|
1285 set $tem = (struct Lisp_String *) $ptr |
75f9e1ee6fa6
Avoid a warning message when x_error_quitter is not compiled in.
Eli Zaretskii <eliz@gnu.org>
parents:
68007
diff
changeset
|
1286 set $tem = (char *) $tem->data |
68047 | 1287 # If we are running in synchronous mode, we want a chance to look |
1288 # around before Emacs exits. Perhaps we should put the break | |
1289 # somewhere else instead... | |
68024
75f9e1ee6fa6
Avoid a warning message when x_error_quitter is not compiled in.
Eli Zaretskii <eliz@gnu.org>
parents:
68007
diff
changeset
|
1290 if $tem[0] == 'x' && $tem[1] == '\0' |
68052 | 1291 break x_error_quitter |
68024
75f9e1ee6fa6
Avoid a warning message when x_error_quitter is not compiled in.
Eli Zaretskii <eliz@gnu.org>
parents:
68007
diff
changeset
|
1292 end |
68047 | 1293 continue |
68007
0b578812ab24
Undo last change. Instead, look at Vsystem_type to
Kim F. Storm <storm@cua.dk>
parents:
67925
diff
changeset
|
1294 end |
52401 | 1295 # arch-tag: 12f34321-7bfa-4240-b77a-3cd3a1696dfe |