Username: Password:
Find codes for doc:
To publish a document, you'll need to add the following shell script to your system and set the PATH variable to point to it.
#!/bin/bash
display_usage() {
echo "This script creates a tar (/tmp/spec.tar) from a manifest."
echo -e "\nUsage: $0 MANIFEST_URL \n"
}
urlencode() {
# urlencode
old_lc_collate=$LC_COLLATE
LC_COLLATE=C
local length="${#1}"
for (( i = 0; i < length; i++ )); do
local c="${1:$i:1}"
case $c in
[a-zA-Z0-9.~_-]) printf '%s' "$c" ;;
*) printf '%%%02X' "'$c" ;;
esac
done
LC_COLLATE=$old_lc_collate
}
if [ $# -ne 1 ]; then display_usage; exit 1; fi
MANIFEST=$1
BASE="`dirname $MANIFEST`"
TAR="/tmp/spec.tar"
IFS=$'\n'
if [ -f $TAR ]; then rm $TAR; fi
FILES=`curl -s $MANIFEST | grep -v -E '(#|^$)'`
INDEX=`echo "$FILES" | head -1 | sed -e 's/ .*$//'`
echo $INDEX
(cd /tmp
url=`urlencode "$BASE/$INDEX"`
curl -s "https://labs.w3.org/spec-generator/?type=respec&url=$url" > /tmp/Overview.html
tar -cvf $TAR Overview.html
for i in `echo "$FILES" | tail -n +2`; do
echo $i
d=`dirname $i`
if [ ! -d $d ]; then mkdir -p $d; fi
curl -s "$BASE/$i" --output $i
tar -rvf $TAR $i
done
)
You should call this script manifest2tar.sh.
The process below will use this shell script to create a ready-to-publish version of the document at /tmp/spec.tar (overwriting any existing file), and then use CURL to publish that file to /TR.
Paste the whole source code of the document here. (For documents that are built via scripts, use Firefox: open page, use Cmd-A to select whole content, right-click and select View Selection Source, then Cmd-A again selects all source text. Paste that below.)
Copy any useful lines to the echidna manifest file.