annotate packages/pkgconf/fixhtml.tcl @ 159:511f4dc167f6

Merge from eCos master repository on 2001-05-18-01:30:05-BST
author jlarmour
date Fri, 18 May 2001 06:32:28 +0000
parents 25e238959bae
children 0d2b193a635f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
1 #!/bin/sh
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
2 # the next line restarts using tclsh \
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
3 exec tclsh "$0" ${1+"$@"}
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
4
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
5 #===============================================================================
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
6 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
7 # fixhtml.tcl
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
8 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
9 # Patch HTML files generated from DocBook sources.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
10 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
11 #===============================================================================
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
12 #####COPYRIGHTBEGIN####
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
13 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
14 # ===============================================================
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
15 # Copyright (C) 2000, 2001 Red Hat, Inc.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
16 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
17 # This file is part of the eCos host tools.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
18 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
19 # This program is free software; you can redistribute it and/or
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
20 # modify it under the terms of the GNU General Public License as
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
21 # published by the Free Software Foundation; either version 2 of
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
22 # the License, or (at your option) any later version.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
23 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
24 # This program is distributed in the hope that it will be useful,
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
25 # but WITHOUT ANY WARRANTY; without even the implied warranty of
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
26 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
27 # GNU General Public License for more details.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
28 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
29 # You should have received a copy of the GNU General Public
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
30 # License along with this program; if not, write to the Free
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
31 # Software Foundation, Inc., 59 Temple Place - Suite 330,
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
32 # Boston, MA 02111-1307, USA.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
33 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
34 # ===============================================================
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
35 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
36 #####COPYRIGHTEND####
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
37 #===============================================================================
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
38 ######DESCRIPTIONBEGIN####
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
39 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
40 # Author(s): bartv
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
41 # Contributors: bartv
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
42 # Date: 2000-03-14
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
43 # Purpose: HTML files generated from DocBook sources using the nwalsh
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
44 # stylesheets have a number of problems. Most importantly,
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
45 # Netscape 4.x does not understand all of the character entities
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
46 # defined by HTML 4.0x
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
47 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
48 #####DESCRIPTIONEND####
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
49 #===============================================================================
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
50 #
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
51
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
52 # Find out the current year for the copyright message. Ideally
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
53 # this would be a range extracted from the sources, but that is
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
54 # a little bit tricky.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
55
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
56 set year [clock format [clock seconds] -format "%Y"]
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
57
151
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
58 set copyright_banner \
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
59 "<!-- Copyright (C) $year Red Hat, Inc. -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
60 <!-- This material may be distributed only subject to the terms -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
61 <!-- and conditions set forth in the Open Publication License, v1.0 -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
62 <!-- or later (the latest version is presently available at -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
63 <!-- http://www.opencontent.org/openpub/) -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
64 <!-- Distribution of substantively modified versions of this -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
65 <!-- document is prohibited without the explicit permission of the -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
66 <!-- copyright holder. -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
67 <!-- Distribution of the work or derivative of the work in any -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
68 <!-- standard (paper) book form is prohibited unless prior -->
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
69 <!-- permission obtained from the copyright holder -->"
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
70
150
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
71 # The generated files all have a .htm suffix rather than a .html
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
72 # suffix. For now this is preserved, to avoid having to change all the
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
73 # anchors. It might be better to rename all the files to .html in
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
74 # future, and perhaps also to change book1.htm to index.htm
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
75
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
76 set files [glob *.html]
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
77 foreach file $files {
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
78 set status [catch {
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
79
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
80 set fd [open $file "r"]
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
81 set data [read $fd]
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
82 close $fd
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
83
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
84 # If there is already a (C) message on the first line, skip this file.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
85 if {[regexp {[^\n]*Copyright (C) [0-9]* Red Hat.*} $data] == 0} {
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
86
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
87
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
88 # The DSSSL has the annoying habit of splitting tags over several lines.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
89 # This should sort things out.
159
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
90 # REMOVED by jifl: doing this can add newlines in tags like
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
91 # <literallayout>, <screen>, and/or <programlisting>
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
92 # regsub -all "\n>" $data ">\n" data
150
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
93
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
94 # Add a copyright banner
151
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 150
diff changeset
95 set data "[set copyright_banner]\n[set data]"
150
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
96
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
97 # Take care of some character entities that Netscape does not understand
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
98 regsub -all "&mgr;" $data "\\&#03BC;" data
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
99 regsub -all "&mdash;" $data "\\&#8212;" data
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
100 regsub -all "&hellip;" $data "\\&#8230;" data
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
101 regsub -all "&ldquo;" $data "\\&#8220;" data
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
102 regsub -all "&rdquo;" $data "\\&#8221;" data
159
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
103 regsub -all "&lsqb;" $data "\\&#0091;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
104 regsub -all "&rsqb;" $data "\\&#0093;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
105 regsub -all "&lcub;" $data "\\&#0123;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
106 regsub -all "&rcub;" $data "\\&#0125;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
107 regsub -all "&lsquo;" $data "\\&#8216;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
108 regsub -all "&rsquo;" $data "\\&#8217;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
109 regsub -all "&trade;" $data "\\&#8482;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
110 regsub -all "&ast;" $data "\\&#0042;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
111 regsub -all "&lowbar;" $data "\\&#0095;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
112 regsub -all "&sol;" $data "\\&#0047;" data
511f4dc167f6 Merge from eCos master repository on 2001-05-18-01:30:05-BST
jlarmour
parents: 151
diff changeset
113 regsub -all "&equals;" $data "\\&#0061;" data
150
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
114
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
115 # Now write the data back to the file. Do not bother to
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
116 # keep an old version lying around, the html files can be
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
117 # regenerated easily enough.
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
118 set fd [open $file "w"]
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
119 puts -nonewline $fd $data
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
120 close $fd
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
121 }
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
122 } result]
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
123
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
124 if {0 != $status} {
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
125 puts "Error while processing file $file\n $result"
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
126 exit 1
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
127 }
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
128 }
f0e3fb000de8 Merge from eCos master repository on 2001-01-26-06:43:02-GMT
jlarmour
parents:
diff changeset
129