Skip to content

WWIV MenuSet Metadata

Rushfan edited this page Apr 7, 2021 · 2 revisions

Problem

While investigating Issue #1415, it became apparent that in order to support a global set of menu items where were two possible approaches.

  • [GLOBALMENU] Add a menu named "GLOBAL", and ignore every other setting from this menus.
  • [MENUSET] Add a separate list of global menu items.

I'll discuss both approaches:

GlobalMenu

Adding the global menu is relatively easy, but is unintuitive. What if the sysop wanted a menu named GLOBAL though? We could add an option for the menu name, but that's another option that has to be set properly. What parts of the menu will be used? Just the menu items, right? Why not other parts? Confusing.

MenuSet

We really just want the menu items, let's just add that. Now we have a place to put other MenuSet specific metadata, since we merged this with language, we can add other language features here is desired. Things like formatting, color scheme, and other attributes can be set here in the future. Some examples:

  • Metadata for who created the menuset, if it was a shared menuset
  • ANSI and color requirements
  • If lightbars are allowed
  • Password echo chars
  • Color schemes
  • Box chars?

Proposal

We will add a menuset metadata file, named menuset.json in the menu directory to contain settings for this menuset. WWIVconfig will support configuring this file using a new (S)ettings command on the menu list for each menuset.