This posting is older than 6 months and can contain outdated information.
As I thought, it looks like part of this problem is just that I'm not good enough at Applescript. I guess what you're saying is that I could use the showmenu command like this:
showmenu {1, "A", {2, "X"}, 3, "B", {4, "Y"}}
Where A and B are actual values and X and Y are variables, defined elsewhere in the script. Actually that doesn't seem so difficult; the hard part seems to be when the top-level values (A, B, C) are themselves defined dynamically by an Applescript... it seems hard to match them with the next-level values (X, Y, Z) when at the outset you don't even know what neds matching. If that makes sense.
I started to playing around with making my own menus triggered by outside Applescripts to replace the RB menus, and can kind of get it working (acceleration would be amazing btw). But I ran into another slight problem/fodder for a suggestion: I noticed that when RB performs an action (any action, not just these Applescript actions) it stays in the foreground, and the user has to dismiss the menu. In this case it causes problems because the Applescript menu and the RB menu appeared at the same time.
Actually I now see that it would be trivially easy to get around this by calling the Applescript-derived menu from a butotn press, rather than from the RB menu. But consider other events: I browse to a track in iTunes and start playing it, or tell EyeTV to change the channel. When most users do such things with normal remotes, they then want to get down to the business of watching that new channel, or listening to that song. Maybe there should be an option to dismiss the RB menu automatically whenever an action is triggered?
Sorry to be nitpicky, I'm just having fun discovering the ins and outs of this very flexible application.