Commit Graph

130 Commits

Author SHA1 Message Date
Robert Liebowitz
a14194aa33 Improve documentation for HelpPrinter/HelpPrinterCustom 2019-10-16 07:57:33 -04:00
Robert Liebowitz
b52cca036a Simplify duplicated function call 2019-10-16 07:24:21 -04:00
Robert Liebowitz
e2a8dfe314 Decouple help printer for custom templates 2019-10-16 07:17:13 -04:00
Ajitem Sahasrabuddhe
0990ca2391
Merge branch 'master' into lint-fixes 2019-08-08 13:36:30 +05:30
Ajitem Sahasrabuddhe
fdba7e0f8c
linter fixes
code cleanup
changing some test code to ensure uniformity
2019-08-07 20:14:50 +05:30
Sascha Grunert
40d4a25a01
Add markdown and man page docs generation methods
This adds two new methods to the `App` struct:

- `ToMarkdown`: creates a markdown documentation string
- `ToMan`: creates a man page string

Signed-off-by: Sascha Grunert <mail@saschagrunert.de>
2019-08-07 14:02:28 +02:00
Yogesh Lonkar
1db049685a
Fix unused regex 2019-08-05 20:22:52 +02:00
Yogesh Lonkar
2be2bc755e
Add additional test for log flag completion and comments 2019-08-05 20:18:08 +02:00
Yogesh Lonkar
c5612e8cd2
Fix review comments 2019-08-05 16:58:04 +02:00
Yogesh Lonkar
11c9e598b0
Merge branch 'master' into master 2019-08-03 15:52:08 +02:00
Lynn Cyrin (they/them)
94f4f83672
Merge branch 'master' into redundant-nil-check-slice 2019-08-03 02:05:33 -07:00
Yogesh Lonkar
62f02f21ef Don't complete hidden flags 2019-04-11 10:57:58 +05:30
Yogesh Lonkar
1d7a2b08d6 Add default completion on commands, test cases, refactor code 2019-03-21 13:01:48 +05:30
Yogesh Lonkar
fb1421d903 Fix duplicate completion of existing flag 2019-03-20 21:34:56 +05:30
Yogesh Lonkar
58a072d573 Add bash completion support for flags 2019-03-20 20:28:51 +05:30
mingrammer
a0453b2200 Fix the unaligned indents for the commands that have no categories 2019-03-06 23:51:22 +09:00
teresy
21dfc6eb83 Remove redundant nil checks 2018-10-10 14:54:48 -04:00
5fc8124af1
Merge branch 'master' into merging-jereksel-zsh 2018-02-24 21:58:26 -05:00
Alan D. Cabrera
1d334f10ce Add newline before command categories
The simple formatting change adds a nice blank line before each command
category.  Documentation in README.md is also updated to be more
accurate.
2017-09-08 10:43:30 -07:00
688c5a9d4f Merge branch 'master' into merging-jereksel-zsh 2017-08-03 14:38:20 -04:00
Jesse Szwedko
48db8e2435 Display UsageText on Commands and Subcommands
If it is set, otherwise build the usage.

Fixes #592
2017-06-24 20:02:36 -07:00
Jesse Szwedko
74811faef3 Merge branch 'master' into extra-info 2017-06-11 16:24:10 -07:00
Harshavardhana
dd3849a7e6 Add tests as requested. 2017-05-08 09:53:53 -07:00
Harshavardhana
baa33cb888 Add support for ExtraInfo. 2017-05-08 09:53:53 -07:00
Harshavardhana
f7d6a07f2d Add support for custom help templates. 2017-05-08 09:53:53 -07:00
Joe Richey joerichey@google.com
1794792adf Add ability to use custom Flag types
Users can now use custom flags types (conforming to the Flag interface)
in their applications. They can also use custom flags for the three
global flags (Help, Version, bash completion).
2017-05-05 22:24:14 -07:00
Joe Richey
0083ae8732 Usage/Description/ArgsUsage correctly copied when using subcommand 2017-01-09 15:57:49 -08:00
7250c97913 Merge branch 'master' into merging-jereksel-zsh 2016-12-21 15:11:00 -05:00
Joshua Rubin
2da42640ad
Merge remote-tracking branch 'origin/master' into completion_fix 2016-11-18 09:28:39 -07:00
Joshua Rubin
8dd1962f7b
change "complete" to "shellComplete" 2016-11-14 09:35:22 -07:00
Jesse Szwedko
0113f56d10 If no action is specified on the command or app, print the help documentation
Rather than panic'ing or displaying an opaque error message about the
signature which is more confusing to the end user.

Fixes #562
2016-11-12 13:37:07 -08:00
Joshua Rubin
ea3df26e64
make shell autocomplete more robust 2016-11-04 14:56:28 -06:00
W. Trevor King
3c2bce5807 help: Cleanup AppHelpTemplate trailing whitespace
Most of the changes here remove trailing whitespace, but I also add
code to select "AUTHOR" or "AUTHORS" as appropriate instead of the
previous "AUTHOR(S)".  The template for listing with an entry per line
is:

   {{range $index, $entry := pipeline}}{{if $index}}
   {{end}}{{$entry}}{{end}}

That range syntax is discussed in [1].

Also add a unit test, which tests both these whitespace changes and
also the earlier App.Description addition.

[1]: https://golang.org/pkg/text/template/#hdr-Variables
2016-10-22 16:02:21 -07:00
W. Trevor King
c4a46a7df2 app: Add App.Description
So you can describe what the application is for without requiring
users to drill down into a particular command.
2016-10-12 08:06:41 -07:00
Dan Buch
363d9c9a31
Add a hack so that zsh completion only runs for zsh 2016-07-24 17:29:13 -04:00
Andrzej Ressel
ceeebaba04 [PoC] Improve zsh autocompletions 2016-07-21 08:47:59 +02:00
Jesse Szwedko
65da20beab Correctly show help message if -h is provided to subcommand
Currently, if an action is specified on a subcommand, it ignores the
`-h` and `--help` flags if passed to the subcommand, e.g.:

`foo bar -h`

would call the default action on `bar` rather than show the help
documentation.

Fixes #477
2016-07-13 14:48:16 -07:00
James Cunningham
e97f74a570
fix ActionFunc signature of ShowAppHelp action 2016-06-07 16:28:10 +01:00
Tianon Gravi
a121e978f7 Switch "printHelp" tabwriter padchar to space
Using tabs for alignment is troubling if the output is used for anything besides display in a terminal (or if the user's terminal allows for adjustment of the default tab size), as noted by the documentation for `tabwriter` (https://golang.org/pkg/text/tabwriter/#Writer.Init):

> (for correct-looking results, tabwidth must correspond to the tab width in the viewer displaying the result)

The safer solution is to use `' '` as the `padchar`, which only carries the assumption of a fixed-width font (which is a more reasonable assumption than a fixed, constant tab size).
2016-06-01 15:27:03 -07:00
Dan Buch
b9d96954ca
Fix command alias printing in help text
Closes #405
2016-05-10 13:41:43 -04:00
Matt Farina
2f110bd745 Cleaned up exported func comments per golint 2016-05-09 10:12:59 -04:00
Dan Buch
5a5fa990e1
Merge remote-tracking branch 'origin/master' into exit-nonzero-for-unknown-subcommand 2016-05-09 00:59:36 -04:00
Dan Buch
97d2df6dd7
Merge remote-tracking branch 'origin/master' into psmit-hidden_command 2016-05-08 18:44:38 -04:00
Jesse Szwedko
592f1d97e5 Exit non-zero if a unknown subcommand is given
Currently it just prints the help message and exits 0.

We do this by modifying the helpCommand and helpSubcommand cli.Commands
to return an error if they are called with an unknown subcommand. This
propogates up to the app which exits with 3 and prints the error.

Thanks to @danslimmon for the initial approach!

Fixes #276
2016-05-07 17:26:15 -07:00
Matt Farina
6f0b442222 Update to ErrWriter and make available on app 2016-05-06 12:14:26 -04:00
Matt Farina
2a256d4c53 Provide a variable for writing output with a default of os.Stderr 2016-05-05 10:26:53 -04:00
Dan Buch
cc481d6b0e
Adjust command hiding to use similar convention as hidden flags
plus breaking out "setup" portion of `App.Run` into its own method, cleaning up
some bits of the help templates, and allowing for runtime opt-in of displaying
template errors to stderr.
2016-05-03 06:54:05 -04:00
Dan Buch
5c641d69b4
Merge branch 'hidden_command' of https://github.com/psmit/cli into psmit-hidden_command 2016-05-03 05:50:36 -04:00
Dan Buch
fed78b8bab
Rework of hidden flag impl plus some Action func corrections 2016-05-01 08:36:17 -04:00
Harshavardhana
99431669d0
New `Hide` variable for all Flags
This is a way to provide hidden flags for app, command and subcommands

For example:

  --generate-bash-completion global flag shouldn't be printed along
  with other flags as it might generally confuse people into thinking
  that 'generate' in-fact would generate a bash completion file for them
  to be used along with their app.

Also in general one would want to hide some flags for their apps.
2016-04-30 22:24:27 -04:00