code: public String optionsToHtml(int refillWidth) {
      StringJoiner b = new StringJoiner(lineSep);
  
      if (includeClassDoc && root.classes().length > 0) {
        b.add(OptionsDoclet.javadocToHtml(root.classes()[0]));
        b.add("<p>Command line options:</p>");
      }
  
      b.add("<ul>");
      if (!options.hasGroups()) {
        b.add(optionListToHtml(options.getOptions(), 6, 2, refillWidth));
      } else {
        for (Options.OptionGroupInfo gi : options.getOptionGroups()) {
          // Do not include groups without publicized options in output
          if (!gi.anyPublicized()) {
            continue;
          }
  
          String ogroupHeader =
              "  <li id=\"optiongroup:"
                  + gi.name.replace(" ", "-").replace("/", "-")
                  + "\">"
                  + gi.name;
          b.add(refill(ogroupHeader, 6, 2, refillWidth));
          b.add("      <ul>");
          b.add(optionListToHtml(gi.optionList, 12, 8, refillWidth));
          b.add("      </ul>");
          // b.add("  </li>");
        }
      }
      b.add("</ul>");
  
      for (Options.OptionInfo oi : options.getOptions()) {
        if (oi.list != null && !oi.unpublicized) {
          b.add("");
          b.add(LIST_HELP);
          break;
        }
      }
  
      return b.toString();
    }
docs: Get the HTML documentation for the underlying Options instance.
  
  @param refillWidth the number of columns to fit the text into, by breaking lines
  @return the HTML documentation for the underlying Options instance