bug-grub
[Top][All Lists]
Advanced

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

Re: help doesn't list all any longer


From: Yoshinori K. Okuji
Subject: Re: help doesn't list all any longer
Date: Wed, 06 Feb 2002 04:13:50 +0900
User-agent: Wanderlust/2.6.0 (Twist And Shout) SEMI/1.14.3 (Ushinoya) FLIM/1.14.3 (Unebigoryoae) APEL/10.3 Emacs/20.7 (i686-pc-linux-gnu) MULE/4.0 (HANANOEN)

At Tue, 05 Feb 2002 09:45:39 +0100,
Christoph Plattner wrote:
> *2* a "help" working on classes, like OpenBoot of Sun:
> 
>       help booting
>       help installing
>       help console 
>       help memory 
>       help disks
> 
> or similar.

I hate the OpenBoot way, as the classification is far from
intuition. The worst point is that not all commands can be categorized
clearly. In addition, it is bad that you cannot see a summary
immediately by just typing "help".

> In solution *2* also a "help --all" may exist, listing
> all commands in one coloum (left the command, right the
> short description) plus the `more'-like output.

I didn't like to add a pager function into "help", because I didn't
think it could be implemented for general purpose. A per-command
implementation of a pager is really bad.

Now I have an idea: implementing a pager at the grub_putchar
level. The pseudo code is:

enter_cmdline:
        loop:
                show a prompt
                get a command-line
                set LINES to zero
                execute a command
                set LINES to an invalid value

grub_putchar:
        if newline:
                if LINES is valid:
                        increament LINES
                        if LINES is equal to MAX_LINES:
                                show a prompt
                                wait for any key input
                                set LINES to zero
                else:
                        print a newline
        else:
                print a character

This could have GRUB to wait for user intervention whenever the screen
is full, regardless of what command is executed. One problem is how to
know MAX_LINES. You can get the geometry of a terminal mechanically
with the console and VT100-compatible terminals, but that is impossible
with dumb terminals. Adding "--lines=LINES" into "terminal", or have a
new command "resize"?

However, I'm still thinking limiting commands shown with "help" is a
Good Thing. I have heard that the number of GRUB commands upsets
newbies several times, although most commands are not useful for them
anyway. It is considerable whether commands useful for debugging GRUB
should be displayed (by default), but, at least, it is a Good Thing to
hide commands useless for interactive use. For example, who wants to
see the usage of the command "lock" in the command-line interface?
This is proven, because of the fact that noone has criticized that
descriptions on menu-specific commands cannot be seen with "help".

Therefore, I'm now inclined to show descriptions on some commands by
default and show all only if you specify "--all" to "help", like the
UNIX command "ls".

Any comment is welcome...

Okuji



reply via email to

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