Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

executable file 50 lines (45 sloc) 1.223 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
#!/bin/bash

# Extract table of contents from index.html and delete preface link.
BOOKDIR=book-$1
TITLE="Git Magic"
case $1 in
    ru)
        TITLE="Волшебство Git"
        ;;
esac

gawk '
/<div class="toc">/ {
print $0
getline
print $0
print "<li><b>'"$TITLE"'</b></li>"
getline
while (!match($0, "</div>")) {
gsub("pr01.html", "index.html")
print $0
getline
}
print $0
exit
}
' < $BOOKDIR/index.html > toc.tmp

# For every file except the index...
for FILE in $BOOKDIR/*.html
do
  if [ $FILE != "$BOOKDIR/index.html" ]
  then
    # Prepend "Git Magic - " to titles of all pages.
    sed '/<title>/ s/<title>/&'"$TITLE"' - /' -i $FILE
    sed 's/pr01\.html/index.html/g' -i $FILE
    # Paste ToC into beginning and add div section with class content for CSS.
    sed '/<body/{n; r toc.tmp
a <div class="content">
}' -i $FILE
    sed '/^<\/body/i </div>' -i $FILE
  fi
done

# Originally this link was "My Homepage". Since it appears on translations of
# the guide, I changed it to my name so it doesn't have to be translated.
sed '/^<\/body/i </div><div class="footer"><a href="/~blynn/">Ben Lynn</a></div>' -i $BOOKDIR/*.html

cp $BOOKDIR/pr01.html $BOOKDIR/index.html
rm toc.tmp
Something went wrong with that request. Please try again.