On Thu, 2003-01-02 at 09:47, Yoshinori K. Okuji wrote:
> At 01 Jan 2003 17:46:32 -0500,
> Jeremy Katz wrote:
> > you're currently editing. Essentially, instead of having
> > print_cmdline_message take 0 or 1, the parameter would be more of a mode
> > flag of forever (current forever=1), normal cmdline mode (current
> > forever=0), and the new one where you hit esc to exit the command line
> > or enter to accept your changes.
>
> That sounds reasonable. If you implement that, I'll apply.
How does this look?
Jeremy
Index: ChangeLog
===================================================================
RCS file: /cvsroot/grub/grub/ChangeLog,v
retrieving revision 1.543
diff -u -r1.543 ChangeLog
--- ChangeLog 4 Jan 2003 23:22:42 -0000 1.543
+++ ChangeLog 6 Jan 2003 05:33:33 -0000
@@ -1,3 +1,13 @@
+2003-01-06 Jeremy Katz <[EMAIL PROTECTED]>
+
+ * stage2/cmdline.c (print_cmdline_message): Make the message
+ clearer on what to do when editing an entry in cmdline mode.
+ (enter_cmdline): Use new print_cmdline_message args.
+ * stage2/stage2.c (run_menu): Likewise.
+ * stage2/shared.h (CMDLINE_FOREVER_MODE): Defined.
+ (CMDLINE_NORMAL_MODE): Likewise.
+ (CMDLINE_EDIT_MODE): Likewise.
+
2003-01-05 Yoshinori K. Okuji <[EMAIL PROTECTED]>
* configure.in (CFLAGS): When the default CFLAGS is used,
Index: stage2/cmdline.c
===================================================================
RCS file: /cvsroot/grub/grub/stage2/cmdline.c,v
retrieving revision 1.27
diff -u -r1.27 cmdline.c
--- stage2/cmdline.c 3 Dec 2002 00:02:53 -0000 1.27
+++ stage2/cmdline.c 6 Jan 2003 05:33:33 -0000
@@ -48,12 +48,17 @@
/* Print a helpful message for the command-line interface. */
void
-print_cmdline_message (int forever)
+print_cmdline_message (int type)
{
printf (" [ Minimal BASH-like line editing is supported. For the first word, TAB\n"
" lists possible command completions. Anywhere else TAB lists the possible\n"
- " completions of a device/filename.%s ]\n",
- (forever ? "" : " ESC at any time exits."));
+ " completions of a device/filename.");
+ if (type == CMDLINE_NORMAL_MODE)
+ printf(" ESC at any time exits.");
+ if (type == CMDLINE_EDIT_MODE)
+ printf(" ESC at any time cancels. ENTER \n"
+ " at any time accepts your changes.");
+ printf("]\n");
}
/* Find the builtin whose command name is COMMAND and return the
@@ -128,7 +133,7 @@
print_network_configuration ();
grub_putchar ('\n');
#endif
- print_cmdline_message (forever);
+ print_cmdline_message (forever ? CMDLINE_FOREVER_MODE : CMDLINE_NORMAL_MODE);
while (1)
{
Index: stage2/shared.h
===================================================================
RCS file: /cvsroot/grub/grub/stage2/shared.h,v
retrieving revision 1.90
diff -u -r1.90 shared.h
--- stage2/shared.h 3 Dec 2002 00:02:53 -0000 1.90
+++ stage2/shared.h 6 Jan 2003 05:33:33 -0000
@@ -843,9 +843,15 @@
void init_config (void);
char *skip_to (int after_equal, char *cmdline);
struct builtin *find_command (char *command);
-void print_cmdline_message (int forever);
void enter_cmdline (char *heap, int forever);
int run_script (char *script, char *heap);
+
+/* the flags for the cmdline message */
+#define CMDLINE_FOREVER_MODE 0x0
+#define CMDLINE_NORMAL_MODE 0x1
+#define CMDLINE_EDIT_MODE 0x2
+
+void print_cmdline_message (int type);
#endif
/* C library replacement functions with identical semantics. */
Index: stage2/stage2.c
===================================================================
RCS file: /cvsroot/grub/grub/stage2/stage2.c,v
retrieving revision 1.42
diff -u -r1.42 stage2.c
--- stage2/stage2.c 4 Dec 2002 00:55:45 -0000 1.42
+++ stage2/stage2.c 6 Jan 2003 05:33:33 -0000
@@ -655,7 +655,7 @@
else
{
cls ();
- print_cmdline_message (0);
+ print_cmdline_message (CMDLINE_EDIT_MODE);
new_heap = heap + NEW_HEAPSIZE + 1;
_______________________________________________
Bug-grub mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-grub