]> git.ipfire.org Git - thirdparty/man-pages.git/blob - scripts/man_show_fixme.sh
man_show_fixme.sh: strip extraneous blank line at start of rendered FIXME output
[thirdparty/man-pages.git] / scripts / man_show_fixme.sh
1 #!/bin/sh
2 #
3 # Render man pages with FIXMEs shown as tables
4 # in the rendered page
5 #
6 for f in $*; do
7 cat $f | awk '
8 /^\.\\\" *FIXME/ {
9 if ($0 ~ /.*FIXME *\..*/) {
10 # FIXMES of the form "FIXME ." are "private" and
11 # ignored by this script
12 } else {
13 sub("FIXME[: ]*", "")
14 if ($0 ~ /^\.\\\"[ ]*$/) {
15
16 # If the FIXME line contains no additional text after
17 # "FIXME", then discard the blank line
18
19 getline
20 }
21 print ""
22 if (fixme == 0) {
23 print ".TS"
24 print ".allbox;"
25 print "lbw52"
26 print "l."
27 print "FIXME"
28 print "T{"
29 }
30 fixme = 1
31 }
32 }
33
34 $0 !~ /^\.\\\"/ && fixme == 1 {
35 fixme = 0
36 print "T}"
37 print ".TE"
38 print ""
39 }
40
41 fixme == 1 {
42 sub("^\\...[ ]", "")
43 sub("^\\...", "")
44 if ($0 ~ /^[ ][ ]*.*/) {
45 print ".br"
46 sub("^[ ]*", " ")
47 }
48 }
49
50 {
51 print $0
52 }
53 ' | tee "/tmp/$(basename $f).src" | man -l /dev/stdin
54 done