def help_page
cli@0.2.0.0 · cli.bend:5635
import cli@0.2.0.0/cli.bend as Cli
import Base
5635def help_page(view: View, +long: Bool, +w: Nat) -> List<&2, Segment>:
5636 match view:
5637 case View{path, +about, +items, +globals, root, stuck}:
5638 +args = List.append(&2, Item, items, globals)
5639 join_blocks(List.concat(&2, List<&2, Segment>, [
5640 text_block(shown_text(long, about), w),
5641 [usage_block(usage_elems(path, items, globals), w)],
5642 sections_blocks(List.append(&2, Section, [
5643 Section{"Commands", List.append(&2, Row, command_rows(items),
5644 help_sub_row(has_sub_item(items)))},
5645 Section{"Arguments", positional_rows(items, long)},
5646 Section{"Options", List.concat(&2, Row, [
5647 option_rows(args, long, ""),
5648 [builtin_row(Maybe.is_some(&2, OptFound, find_option(args, "-h")),
5649 "-h", "--help", help_text(Bool.or(String.contains(about, "\n\n"),
5650 args_paragraphs(args)), long))],
5651 version_row(Bool.and(root, has_version_item(items)), args),
5652 ])},
5653 ], heading_sections(heading_titles(args, []), args, long)), w),
5654 examples_block(example_lines(items)),
5655 text_block(String.join(after_texts(items), "\n\n"), w),
5656 ]))