fn config_tab(kind: &str, title: &str, choices: &[String]) -> StringExpand description
One config-editor tab: a file dropdown, the editor, and Reload / Save.
Reload includes #{kind}-path alone rather than the whole form. The form
holds the editor too, and on a GET that would ride up the query string —
a megabyte-class config (some in configs/ are over 1 MB) then pushes the
URI past what the server accepts and Reload silently does nothing. Save is
a POST, so it can and must include the whole form.