summaryrefslogtreecommitdiff
path: root/cli/doc/doc.sh
blob: dde9acae2bdf77113b7bf116f0f057d35f1bd467 (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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#! /usr/bin/env bash

version=1.2.0-b.6

trap 'exit 1' ERR
set -o errtrace # Trap in functions.

function info () { echo "$*" 1>&2; }
function error () { info "$*"; exit 1; }

date="$(date +"%B %Y")"
copyright="$(sed -n -re 's%^Copyright \(c\) (.+)\.$%\1%p' ../LICENSE)"

while [ $# -gt 0 ]; do
  case $1 in
    --clean)
      rm -f cli.xhtml cli.1
      rm -f guide/cli-guide.ps guide/cli-guide.pdf
      exit 0
      ;;
    *)
      error "unexpected $1"
      ;;
  esac
done

function compile () # <input-name> <output-name>
{
  local i=$1; shift
  local o=$1; shift

  # Use a bash array to handle empty arguments.
  #
  local ops=()
  while [ $# -gt 0 ]; do
    ops=("${ops[@]}" "$1")
    shift
  done

  # --html-suffix .xhtml
  ../cli/cli -I .. \
-v project="cli" \
-v version="$version" \
-v date="$date" \
-v copyright="$copyright" \
"${ops[@]}" --generate-html  --stdout \
--html-prologue-file cli-prologue.xhtml \
--html-epilogue-file cli-epilogue.xhtml \
"../cli/$i.cli" >"$o.xhtml"

  # --man-suffix .1
  ../cli/cli -I .. \
-v project="cli" \
-v version="$version" \
-v date="$date" \
-v copyright="$copyright" \
"${ops[@]}" --generate-man  --stdout \
--man-prologue-file cli-prologue.1 \
--man-epilogue-file cli-epilogue.1 \
"../cli/$i.cli" >"$o.1"
}

compile options cli --suppress-undocumented

# Manual.
#

#function compile_doc ()
#{
#  html2ps -f doc.html2ps:a4.html2ps -o "$n-a4.ps" "$n.xhtml"
#  ps2pdf14 -sPAPERSIZE=a4 -dOptimize=true -dEmbedAllFonts=true "$n-a4.ps" "$n-a4.pdf"
#
#  html2ps -f doc.html2ps:letter.html2ps -o "$n-letter.ps" "$n.xhtml"
#  ps2pdf14 -sPAPERSIZE=letter -dOptimize=true -dEmbedAllFonts=true "$n-letter.ps" "$n-letter.pdf"
#}

html2ps -f guide/guide.html2ps -o guide/cli-guide.ps guide/index.xhtml
ps2pdf14 -dOptimize=true -dEmbedAllFonts=true guide/cli-guide.ps guide/cli-guide.pdf