[syslinux] submenus and menu title

Ady Ady ady-sf at hotmail.com
Mon Aug 6 02:27:02 PDT 2012



> Date: Fri, 3 Aug 2012 11:58:27 -0700
> From: hpa at zytor.com
> To: syslinux at zytor.com
> CC: ady-sf at hotmail.com
> Subject: Re: [syslinux] submenus and menu title
> 
> On 08/03/2012 03:11 AM, Ady Ady wrote:
> > 
> > Following the wiki and docs (and examples from several live CDs), I started with:
> > *** syslinux.cfg START ***
> > 
> > UI menu.c32
> > MENU TITLE My Main Title
> > 
> > MENU BEGIN hellotag
> > 
> > LABEL hellolabel
> > COM32 hello.c32
> > 
> > MENU END
> > 
> > MENU BEGIN lstag
> > 
> > LABEL lslabel
> > COM32 ls.c32
> > 
> > MENU END
> > 
> > *** syslinux.cfg FINISH ***
> > 
> > From there, I tried MANY other variations so to get the same (supposedly inherited) menu title, but I was not successful.
> > I could post those many alternatives too if necessary (just let me know). I just don't won't to make this more confusing than necessary.
> > I understand that some directives take precedence over the menu title, preventing it from being inherited "as-is" to its submenus. But in my case I actually indeed want the same menu title in the submenus. So, how do I get _that_ result?
> > TIA. 
> 
> That looks like it should work. We might have a bug there.
> 
> -hpa
> 
 
Hopefully, the following example will show you the problem.
 
First, the syslinux.cfg:
   *** syslinux.cfg START *** 
 
 UI menu.c32
 
 MENU TITLE TheMainTitle
 
 
 MENU BEGIN hellotag
 
  LABEL hellolabel
  COM32 hello.c32
 
 MENU END
 
 
 MENU BEGIN lstag
 
  LABEL lslabel
  COM32 ls.c32
 
 MENU END
 
 
 MENU BEGIN hello2tag
 
  MENU TITLE TheMainTitle
 
  LABEL hello2label
  COM32 hello.c32
 
 MENU END
 
 
 MENU BEGIN ls2tag
 
  MENU TITLE SomeSubmenuTitle
 
  LABEL ls2label
  COM32 ls.c32
 
 MENU END
 
   *** syslinux.cfg FINISH *** 
 
So let's see what is actually happening with that menu (Syslinux v.4.06-pre11).
 
The first 2 entries in the parent menu show the respective tagname, and when the respective submenu is selected, no menu title is inherited (FIRST BUG).
 
The last 2 entries in the parent menu show the respective (sub)menu title as menu label entry (SENCOND BUG). Note that I repeated (re-used) the same (parent) menu title in at least one submenu, so to effectively get the menu title actually displayed. This repetition should not be needed.
 
So either the tagmenu is used as menu entry and no menu title is displayed in the submenu (FIRST BUG), or otherwise the explicit (sub)menu title takes precedence over both items:
 _the menu label entry in the parent menu (SECOND BUG); and
 _the menu title in the respective submenu.
 
 
Now let's see what SHOULD had happened. 
 
 
For the first 2 entries in the parent menu, the parent menu title should had been inherited to the submenus, as no explicit "menu title" directive was added inside the respective "menu begin / menu end" submenu.
 
For the last 2 entries in the parent menu, the respective "tagname" should had been shown as menu label entry; not the respective menu title inside the "menu begin / menu end" submenu.
 
If the optional "tagmenu" would had not been used in the "menu begin" directive, then MAYBE the (sub)menu title, if at all present, could be considered to be displayed as the respective menu entry in the parent menu (I actually have seen such case in Live CDs). But that's not the case I am presenting here, so the (sub)menu title shouldn't be taking precedence over the used tagmenu.
 
In conclusion, in each of the cases I present here, the different conditions for one directive to take precedence over the other (or the other way around) are incorrect, for both directives.
 
Let me know if there is something else I can do to help resolve this issue.
 
I'll be waiting for the next test release.
 
TIA. 		 	   		  



More information about the Syslinux mailing list