gconf-merge-schema
This commit is contained in:
parent
5a47f8fe5a
commit
457bfd0460
|
@ -0,0 +1,34 @@
|
|||
#!/bin/bash
|
||||
if [ ! "$1" -a ! "$2" ]; then
|
||||
echo "Usage: $0 output.schemas [--domain gettextdomain] file1.schemas [file2.schemas [...]]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
OUTFILE="$1"
|
||||
DOMAIN=""
|
||||
shift
|
||||
|
||||
if [ "$1" = "--domain" ]; then
|
||||
shift
|
||||
DOMAIN=$1
|
||||
shift
|
||||
fi
|
||||
|
||||
echo '<?xml version="1.0"?>' > "$OUTFILE"
|
||||
echo '<gconfschemafile><schemalist>' >> "$OUTFILE"
|
||||
|
||||
while [ "$1" ]; do
|
||||
if [ -f "$1" ]; then
|
||||
sed -e '/<?xml/d' \
|
||||
-e 's|<gconfschemafile>||g' \
|
||||
-e 's|</gconfschemafile>||g' \
|
||||
-e 's|<schemalist>||g' \
|
||||
-e 's|</schemalist>||g' "$1" >> "$OUTFILE"
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
echo '</schemalist></gconfschemafile>' >> "$OUTFILE"
|
||||
if [ "$DOMAIN" != "" ]; then
|
||||
sed -ri "s/^([[:space:]]*)(<locale name=\"C\">)/\1<gettext_domain>$DOMAIN<\/gettext_domain>\n\1\2/; /^[[:space:]]*<locale name=\"[^C]/,/^[[:space:]]*<\/locale>[[:space:]]*\$/ d; /^$/d; s/<\/schema>$/&\n/" "$OUTFILE"
|
||||
fi
|
Loading…
Reference in New Issue