GitHub.Issues.CLI (GitHub Issues v0.4.59)
View SourceParses the command line and prints a table of the first or last n issues of a GitHub project.
Inspired by the book Programming Elixir by Dave Thomas.
Reference https://dev.to/paulasantamaria/command-line-interfaces-structure-syntax-2533
Summary
Functions
Allows to run command mix run -e 'GitHub.Issues.CLI.main()'
.
Parses the command line and prints a table of the first or last n issues of a GitHub project.
Types
Functions
@spec main() :: :ok
Allows to run command mix run -e 'GitHub.Issues.CLI.main()'
.
The above command is equivalent to:mix run -e 'GitHub.Issues.CLI.main([""Kraigie"", ""nostrum"", ""6""])'
Examples
$env:MIX_ENV="test"; mix run -e 'GitHub.Issues.CLI.main()'
$env:MIX_ENV="dev"; mix run -e 'GitHub.Issues.CLI.main()'
$env:MIX_ENV="prod"; mix run -e 'GitHub.Issues.CLI.main()'
@spec main(OptionParser.argv()) :: :ok
Parses the command line and prints a table of the first or last n issues of a GitHub project.
argv
can be "-h" or "--help", which prints info on the command's
usage and syntax. Otherwise it is a GitHub user, a GitHub project, and
optionally the number of issues to format (the first n ones).
To format the last n issues, specify switch --last
.
To ring the bell, specify switch --bell
.
To choose a table style, specify switch --table-style
.
Parameters
argv
- command line arguments (list)
Switches
-h
or--help
- for help-b
or--bell
- to ring the bell-l
or--last
- to format the last n issues-t
or--table-style
- to choose a table style
Table styles
bare
- no colorsbarish
- like bare but coloredcyan
- cyan backgroundcyan-alt
- cyan header, alternating row colorscyan-border
- light cyan bordercyan-mult
- cyan header, 3 repeating row colorsdark
- dark colorsdark-alt
- dark colors, alternating row colorsdark-mult
- dark colors, 3 repeating row colorsdashed
- no colorsdotted
- slightly coloreddotted-alt
- slightly colored, alternating row colorsdotted-mult
- slightly colored, 3 repeating row colorsgame
- game boardgreen
- green backgroundgreen-alt
- green header, alternating row colorsgreen-border
- light green bordergreen-border-padded
- light green border with extra paddinggreen-border-unpadded
- light green border without paddinggreen-mult
- green header, 3 repeating row colorsgreen-padded
- like green but with extra paddinggreen-unpadded
- like green but without paddinglight
- light colorslight-alt
- light colors, alternating row colorslight-mult
- light colors, 3 repeating row colorsmedium
- medium colorsmedium-alt
- medium colors, alternating row colorsmedium-mult
- medium colors, 3 repeating row colorsmixed
- fillers revealedplain
- slightly coloredpretty
- multicoloredpretty-alt
- multicolored, alternating row colorspretty-mult
- multicolored, 3 repeating row colorstest
- no colorsyellow
- light yellow backgroundyellow-border
- light yellow border
Examples
alias GitHub.Issues.CLI
CLI.main(["Kraigie", "nostrum", "--last", "--no-help"])
CLI.main(["Kraigie", "nostrum", "--no-last"])
CLI.main(["Kraigie", "nostrum", "--no-bell", "--table-style", "plain"])
CLI.main(["Kraigie", "nostrum", "11", "--last"])
CLI.main(["Kraigie", "nostrum", "--last", "11"])