grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] if timeout is set to zero, don't bother drawing the menu


From: Yoshinori K. Okuji
Subject: Re: [PATCH] if timeout is set to zero, don't bother drawing the menu
Date: Sun, 10 Feb 2008 08:10:13 +0100
User-agent: KMail/1.9.4

On Saturday 09 February 2008 23:09, Robert Millan wrote:
> On Sat, Feb 09, 2008 at 09:03:09PM +0100, Yoshinori K. Okuji wrote:
> > On Friday 08 February 2008 17:18, Robert Millan wrote:
> > > Fixes an ugly result of setting timeout=0.
> > >
> > > When this is combined with the "sleep" patch I just sent, user can
> > > implement hiddenmenu-like functionality via scripting:
> > >
> > > echo -n "Press `ESC' to enter the menu... "
> > > if sleep -v -i 10 ; then
> > >   set timeout=10
> > > else
> > >   set timeout=0
> > > fi
> >
> > I think this is a bit strange. I don't think anybody expects that "sleep"
> > outputs a counter or is interrupted by a key input. It is too different
> > from POSIX's sleep.
> >
> > My preference is rather to extend "read". Bash's "read" accepts a timeout
> > and some other options.
>
> Ok, so you suggest:
>
>   read --timeout N --verbose --interruptible
>
>   ?

"read" exits when an input is passed by default, so "interruptible" sounds 
odd. Here, I think what you want is a behavior that "read" does not wait for 
ENTER, but reads immediately any character (or only ESC).

In GRUB Legacy, the hidden menu uses ESC, because if it uses ENTER, and the 
user pushes ENTER too long, and a key repeat occurs, then the first item may 
be selected quick as a flash. But we could avoid this problem by vacuuming 
all inputs before showing a menu, so it might be acceptable to use ENTER 
instead.

(Actually, this should be implemented, regardless of this issue, because some 
BIOSes may leave garbage in a key buffer. I don't remember if this has been 
done for GRUB 2.)

To count down, I don't think it should be named "--verbose". For me, this is 
like "--print-timeout".

Okuji




reply via email to

[Prev in Thread] Current Thread [Next in Thread]