summaryrefslogtreecommitdiff
path: root/lib/sbin/ThornDocHTML
blob: 71c762ed4d9fd8e3bfbd7bf8b997e39f4508956d (plain)
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
# Create all thorn documentations
# (C) 2003/05/24 Erik Schnetter <schnetter@uni-tuebingen.de>
# (C) 2010-04-21 Barry Wardell <barry.wardell@aei.mpg.de>
# $Header: /cactusdevcvs/Cactus/lib/sbin/ThornDoc,v 1.5 2009/11/11 22:32:53 schnetter Exp $

echo "Creating thorn documentation (HTML)..."

type -P htlatex &>/dev/null || { echo "htlatex not found.  Aborting." >&2; exit 1; }

# Selected thorn; process all thorns if this is empty
selection="$1"

abspath=$PWD

for arr in `cd arrangements; echo *`; do
  if test -d arrangements/$arr; then
    for th in `cd arrangements/$arr; echo *`; do
      if test -d arrangements/$arr/$th; then
        if test -z "$selection" || test "$th" == "$selection"; then
          if test -e arrangements/$arr/$th/doc/documentation.tex; then
            echo "  Processing thorn $arr/$th..."

            mkdir -p doc/HTML/ThornDoc/$arr/$th 2> /dev/null
            (
              cd doc/HTML/ThornDoc/$arr/$th
              rm -f documentation.tex documentation.html documentation.css documentation*.png
              path=$abspath/arrangements/$arr/$th/doc
              < $path/documentation.tex sed -e 's+\(\\includegraphics.*\){ *\(.*\) *}+\1{'"$path"'/\2}+g' |
              sed -e 's+\(\\input *\)\(.*\)+\1'"$path"'/\2+g' | 
              sed -e 's+\\usepackage{../../../../doc/latex/cactus}+\\usepackage{../../../../../doc/latex/cactus}+g' > documentation.tex

              $abspath/lib/sbin/ConvertFigures $path

              echo "  Running htlatex..."
              {
                htlatex documentation  "" "" "" -interaction=nonstopmode  < /dev/null > LATEX_MESSAGES 2>&1
              } ||
              echo "    ERROR: Could not create documentation (check for latex errors)"
            )
                        
          fi          # if thorn has documentation
        fi              # if thorn is enabled
      fi
    done                    # for thorns
  fi
done                            # for arrangements

echo "  Created thorn documentation in doc/HTML/ThornDoc directory."
echo "  Done."