Nguyễn Thái Ngọc Duy  <pclo...@gmail.com> writes:

> The current generate-cmds.sh generates just enough to print "git help"
> output. That is, it only extracts help text for common commands.
>
> The script is now updated to extract help text for all commands and
> keep command classification a new file, command-list.h. This will be
> useful later:
>
> - "git help -a" could print a short summary of all commands instead of
>   just the common ones.
>
> - "git" could produce a list of commands of one or more category. One
>   of its use is to reduce another command classification embedded in
>   git-completion.bash.
>
> The new file can be generated but is not used anywhere yet. The plan
> is we migrate away from common-cmds.h. Then we can kill off
> common-cmds.h build rules and generation code (and also delete
> duplicate content in command-list.h which we keep for now to not mess
> generate-cmds.sh up too much).
>
> PS. The new fixed column requirement on command-list.txt is
> technically not needed. But it helps simplify the code a bit at this
> stage. We could lift this restriction later if we want to.
> ---

Missing sign-off.

> diff --git a/generate-cmdlist.sh b/generate-cmdlist.sh
> index 31b6d886cb..c9fd524760 100755
> --- a/generate-cmdlist.sh
> +++ b/generate-cmdlist.sh
> @@ -1,5 +1,27 @@
>  #!/bin/sh
>  
> +die () {
> +     echo "$@" >&2
> +     exit 1
> +}
> +
> +command_list () {
> +     sed '1,/^### command list/d;/^#/d' "$1"
> +}
> +
> +get_categories() {

Here and define_categories() below lack SP before (), and all others
do.  Be consistent.

> +     tr ' ' '\n'|
> +     grep -v '^$' |
> +     sort |
> +     uniq
> +}
> +
> +category_list () {
> +     command_list "$1" |
> +     cut -c 40- |
> +     get_categories
> +}
> +
>  get_synopsis () {
>       sed -n '
>               /^NAME/,/'"$1"'/H
> @@ -10,14 +32,51 @@ get_synopsis () {
>               }' "Documentation/$1.txt"
>  }
>  
> +define_categories() {
> +     echo
> +     echo "/* Command categories */"
> +...
>  };
> +"
> +if [ -z "$2" ]

if test -z "$2"

Reply via email to