mirror of
https://github.com/git/git.git
synced 2025-12-12 20:36:24 +01:00
With the modern formatting of the manpages, the options and commands are now backticked in their definition lists. This patch updates the generation of the completion list to take into account this new format. The script `generate-configlist.sh` is updated to get rid of extraneous commands and fit everything in a single sed script. Signed-off-by: Jean-Noël Avila <jn.avila@free.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
40 lines
611 B
Bash
Executable File
40 lines
611 B
Bash
Executable File
#!/bin/sh
|
|
|
|
SOURCE_DIR="$1"
|
|
OUTPUT="$2"
|
|
|
|
if test -z "$SOURCE_DIR" || ! test -d "$SOURCE_DIR" || test -z "$OUTPUT"
|
|
then
|
|
echo >&2 "USAGE: $0 <SOURCE_DIR> <OUTPUT>"
|
|
exit 1
|
|
fi
|
|
|
|
print_config_list () {
|
|
cat <<EOF
|
|
static const char *config_name_list[] = {
|
|
EOF
|
|
sed -E '
|
|
/^`?[a-zA-Z].*\..*`?::$/ {
|
|
/deprecated/d;
|
|
s/::$//;
|
|
s/`//g;
|
|
s/^.*$/ "&",/;
|
|
s/, */",\n "/g;
|
|
p;};
|
|
d' \
|
|
"$SOURCE_DIR"/Documentation/*config.adoc \
|
|
"$SOURCE_DIR"/Documentation/config/*.adoc|
|
|
sort
|
|
cat <<EOF
|
|
NULL,
|
|
};
|
|
EOF
|
|
}
|
|
|
|
{
|
|
echo "/* Automatically generated by generate-configlist.sh */"
|
|
echo
|
|
echo
|
|
print_config_list
|
|
} >"$OUTPUT"
|