This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: RFA: "show user" output
Thanks for the ui_out explanation. This means I need to use
ui_out_spaces to do the indenting and ui_out_field_fmt and
ui_out_field_string to print the keywords. Following the example set in
the current version of the code I will use ui_out_text to print the
carriage returns. Here's my modified patch:
--
2001-09-08 Jackie Smith Cashion <jsmith@redhat.com>
* cli/cli-script.c (print_command_lines): Remove extra
"if", "else", "while", and "end" from show user output.
--
Index: cli-script.c
===================================================================
RCS file: /cvs/src/src/gdb/cli/cli-script.c,v
retrieving revision 1.7
diff -c -3 -p -r1.7 cli-script.c
*** cli-script.c 2001/06/17 15:16:12 1.7
--- cli-script.c 2001/09/09 01:56:47
*************** print_command_lines (struct ui_out *uiou
*** 171,184 ****
/* A while command. Recursively print its subcommands and
continue. */
if (list->control_type == while_control)
{
- ui_out_text (uiout, "while ");
ui_out_field_fmt (uiout, NULL, "while %s", list->line);
ui_out_text (uiout, "\n");
print_command_lines (uiout, *list->body_list, depth + 1);
- ui_out_field_string (uiout, NULL, "end");
if (depth)
ui_out_spaces (uiout, 2 * depth);
! ui_out_text (uiout, "end\n");
list = list->next;
continue;
}
--- 171,183 ----
/* A while command. Recursively print its subcommands and
continue. */
if (list->control_type == while_control)
{
ui_out_field_fmt (uiout, NULL, "while %s", list->line);
ui_out_text (uiout, "\n");
print_command_lines (uiout, *list->body_list, depth + 1);
if (depth)
ui_out_spaces (uiout, 2 * depth);
! ui_out_field_string (uiout, NULL, "end");
! ui_out_text (uiout, "\n");
list = list->next;
continue;
}
*************** print_command_lines (struct ui_out *uiou
*** 186,192 ****
/* An if command. Recursively print both arms before
continueing. */
if (list->control_type == if_control)
{
- ui_out_text (uiout, "if ");
ui_out_field_fmt (uiout, NULL, "if %s", list->line);
ui_out_text (uiout, "\n");
/* The true arm. */
--- 185,190 ----
*************** print_command_lines (struct ui_out *uiou
*** 198,211 ****
if (depth)
ui_out_spaces (uiout, 2 * depth);
ui_out_field_string (uiout, NULL, "else");
! ui_out_text (uiout, "else\n");
print_command_lines (uiout, list->body_list[1], depth + 1);
}
- ui_out_field_string (uiout, NULL, "end");
if (depth)
ui_out_spaces (uiout, 2 * depth);
! ui_out_text (uiout, "end\n");
list = list->next;
continue;
}
--- 196,209 ----
if (depth)
ui_out_spaces (uiout, 2 * depth);
ui_out_field_string (uiout, NULL, "else");
! ui_out_text (uiout, "\n");
print_command_lines (uiout, list->body_list[1], depth + 1);
}
if (depth)
ui_out_spaces (uiout, 2 * depth);
! ui_out_field_string (uiout, NULL, "end");
! ui_out_text (uiout, "\n");
list = list->next;
continue;
}
--
Jackie Smith Cashion
email: jsmith@redhat.com
phone: 931 438 2432