[Top][All Lists]

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

Re: Ideas for the future

From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: Ideas for the future
Date: Mon, 05 Mar 2012 02:30:11 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:8.0) Gecko/20120216 Icedove/8.0

On 05.03.2012 02:13, Andreas Vogel wrote:
I took the last few nights to divide my previously submitted huge patch
into logical parts (around 10 patches now). Some of them I've submitted

So right now it seems to me that it's useless to waste your time (and my
time too) to submit more patches or even to discuss them due to code
freeze and because all time is needed now to prepare release 2.0.

Even though I fully understand this situation it's really sad that some
of the most wanted features for GRUB will still not be available in the
upcoming release (especially the possibility to have a settings menu).
Personally i can live with that coz I'm using my private patches for my
projects which do need those features.

Anyway, I don't want that those ideas are lost so let me summarize the
enhancements I have patches for and what i think would be great to have
in the future:

1) Environment variable substitution in menus. For normal menu entries
this works already. For submenus this doesn't work as the submenu
entries are not re-evaluated after execution of it's menuentries.
     set lang=us
     menuentry 'Boot with lang=$lang' { ... ; linux lang=$lang ; boot }
     submenu Settings {
         submenu 'Language... (current lang = $lang)' {
             menuentry --silent=1 'Set lang US'  { set lang=us }
             menuentry --silent=1 'Set lang DE'  { set lang=de }
Have you seen the argument possibility?
2) Environment variable substitutions in theme labels. Theme labels
should be able to reference environment variables for display. It
would/could be even great to use environment variables for different
things in themes (fonts, pictures, etc...).
That seems pretty vague do you have an idea in mind?
  By this it would be possible
to use a quite generic theme.txt file for different resolutions, etc.
This is already possible. Use percent notation for desired size and rendering will figure out the actual size basing on constraints.
3) Enhanced hotkey handling: support ALT, SHIFT and CTRL modifiers.

4) menuentry/submenu --hidden 0|1
We don't use 0|1. We just make it argumentless and option toggles the behaviour
Hidden menuentries behave the same like normal menu entries but they are
not visible on the screen. They can only be activated using a hotkey. By
this you can define a help screen using hotkey F1 but no visible menu
entry is needed.
The problem is that such entries are not usable if the hotkey in question is unavailable because of terminal limitations.
5) menuentry --silent 0|1
When using menuentries which just sets some variables or do some other
(non booting tasks), it's really bothering to see a flickering empty
terminal box just for nothing. When this flag is set, the terminal box
will not be shown by default when the entry is executed. Execution of
submenus should be always silent.
Rather than removing messages better move them to some status bar in the theme.
6) menuentry --enabled 0|1
It's a good practice to show menuentries even if they are not applicable
in different situations (that's common for all major menu systems). If a
menu entry is disabled, it is shown but it is not operable. E.g. one
might have a general grub config file which supports booting a bunch of
ISO images. When an ISO image is not found and instead of not showing a
menuentry for that, those menuentry could be shown as disabled.
This seems like just cluttering the view. Remember that in some applications (e.g. braille) menu has to be very concise. We support even the tiny (40x1) terminal geometries.
As I said before, I have patches which implements all those features and
I'm using these features in projects right now.

Vladimir, it seems that GRUB is a one man show
Some of the times it is, sometimes there are more active devs around. It's somewhat periodic.
  and it's really your
baby. Don't get me wrong please, I really appreciate your hard work and
from our conversation I can feel that you're really a genius. Whenever
you have time again for new ideas, new patches and new discussions, let
me know. It's just the wrong time right now for that.


Grub-devel mailing list

Vladimir 'φ-coder/phcoder' Serbinenko

reply via email to

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