Page MenuHomeFreeBSD

stand/lua: Add boot environment support
ClosedPublic

Authored by kevans on Feb 19 2018, 3:13 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 20 2023, 2:57 AM
Unknown Object (File)
Nov 10 2023, 2:17 AM
Unknown Object (File)
Jul 15 2023, 4:37 PM
Unknown Object (File)
Jul 11 2023, 7:39 PM
Unknown Object (File)
Jul 5 2023, 8:01 PM
Unknown Object (File)
Jul 5 2023, 8:00 PM
Unknown Object (File)
Jul 5 2023, 8:00 PM
Unknown Object (File)
Jul 5 2023, 8:00 PM
Subscribers
None

Details

Summary

This looks a little bit differently than the forth version for the time being, just to get off the ground- rather than a paging system, it's implemented as a simple carousel like the kernel selector.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

cem added inline comments.
stand/lua/core.lua
202–203 ↗(On Diff #39494)

Might insert a nil check for curenv in here, before the unique check. (Or not, it shouldn't happen based on the corresponding C code.)

229 ↗(On Diff #39494)

I might name this differently to make it clear it is a predicate rather than a verb.

stand/lua/menu.lua
61 ↗(On Diff #39494)

spaces around ..

65 ↗(On Diff #39494)

I don't really understand how the menu data works, so I am skipping this part. I'll take your word for it.

304 ↗(On Diff #39494)

spaces around ..

This revision is now accepted and ready to land.Feb 19 2018, 3:36 PM

Rebase after recent menu system changes, and address concerns noted by @cem

This revision now requires review to proceed.Feb 20 2018, 2:33 AM

Ship it, modulo this menu system has grown really large and isn't exactly data driven any more due to all of the embedded lambda functions. I'm not sure there's a better way to encompass all of this, though. We've basically got a novel, barebones UI toolkit.

This revision is now accepted and ready to land.Feb 20 2018, 11:54 PM
In D14436#303006, @cem wrote:

Ship it, modulo this menu system has grown really large and isn't exactly data driven any more due to all of the embedded lambda functions. I'm not sure there's a better way to encompass all of this, though. We've basically got a novel, barebones UI toolkit.

I think for its lifespan in the tree it's debatable whether it's grown any less data driven than it already was. =) It already had quite a few lambdas in the form that I took it over from [1], I just added another interpretation for name/func and a couple more lambdas to bring it into parity with its Forth fourth cousin.

I also am not sure there's a better way to encompass all this. Forth had some dynamic stuff (swapping of menu entries and hiding of others) that would be kind of hard to capture if I simplified it much further.

[1] https://svnweb.freebsd.org/base/head/stand/lua/menu.lua?revision=329167&view=markup

This revision was automatically updated to reflect the committed changes.