Alaja.CLI.GlobalOpts (Alaja v1.0.0)

Copy Markdown View Source

Definition and extraction of global CLI options shared across commands.

Global options are parsed from raw args before command-specific parsing so they are available to every subcommand.

Summary

Functions

Parses global options from raw args, returning {global_opts, remaining_args}.

Converts global opts to printer keyword opts.

Types

t()

@type t() :: %Alaja.CLI.GlobalOpts{
  align: :left | :center | :right,
  box: boolean(),
  box_border: atom(),
  box_color: tuple() | nil,
  box_title: String.t() | nil,
  help: boolean(),
  pos_x: non_neg_integer(),
  pos_y: non_neg_integer(),
  quiet: boolean(),
  raw: boolean(),
  stdin: boolean(),
  verbose: boolean()
}

Functions

parse(args)

@spec parse([String.t()]) :: {t(), [String.t()]}

Parses global options from raw args, returning {global_opts, remaining_args}.

Only recognizes known global flags; all other args are passed through.

to_printer_opts(global)

@spec to_printer_opts(t()) :: keyword()

Converts global opts to printer keyword opts.