#-------------------------------------------------------------- # CERN, European Laboratory for Particle Physics # # WebMaker, a FrameMaker to WWW converter # # Known Bugs in WebMaker 1.4 #-------------------------------------------------------------- This is a compiled list of standing user reported bugs in WebMaker 1.4. The bugs here are divided into the sections: WEBMAKER WML WMGRAPH WMCONFIG EXECUTION SCRIPTS INSTALLATION RUNTIME LIBRARY LICENSING DOCUMENTATION WEBMAKER ============================================== - Unterminated Anchors in the generated HTML. ACKNOWLEDGED: BR. MR. 94/09/06 FIX: Closing such anchors without text does not work in Mosaic (although this is legal according to the HTML DTD). So, a "" will be inserted prior to the end of the paragraph or before the opening of the next anchor. PATCH: A script to do the above has been put in: ftp://ptsun00.cern.ch/pub/incoming/CloseAnchors.tar MR. 95/02/18 ------------------------------------------------------------------------- - Quote all HTML attribute values. ACKNOWLEDGED: BR. MR. 94/09/06 This is the standard SGML syntax for specifying attribute values for elements. ------------------------------------------------------------------------- - Problem with the interpretation of the characters ':' and ';' in marker text. ACKNOWLEDGED: BR. MR. 94/10/25 ------------------------------------------------------------------------- - Creation of web entry page (FirstPage Node). a. default first page does not work --> lisp crashes b. If the first paragraph creates a new node then a first page is not created. ACKNOWLEDGED: BR. MR. 94/09/06 ------------------------------------------------------------------------- - If the paragraph that is mapped using the wmconfig paragraph rule "FMDocumentTitle" is in an unconnected text column. then the first page of html is not generated. REJECTED. BR. MR. 94/09/07 The first page is not generated because the first occuring paragraph is node creating. ------------------------------------------------------------------------- - Generation of lists. a. If a list level is jumped (eg from level 0 to level 2) than webmaker does not generate the correct level of list. b. inlist should have a level c. a lower level list paragraph immediately after an inlist paragraph resets the list level to 1. d. an ------------------------------------------------------------------------- - Nested Glossary lists all act as if they were level 1. This only seems to occur when the "glossterm" function is used. ACKNOWLEDGED: BR. MR. 94/09/06 ------------------------------------------------------------------------- - Check the translation of 'bullet' characters in lists. Used to give "xe1", (now fixed) but is now giving an extra ".". ACKNOWLEDGED: BR. MR. 94/09/06 This concerns the limitation in the translation of special characters to HTML A solution for lists is; when mapping such paras to
  • , the original FM autonumber string should be ignored in the configuration. If desired, the configuration may include a gif of the special character in the paragraph rule. ------------------------------------------------------------------------- - If a heading generates a new page AND has an anchored frame, the anchored frame is thrown away, i.e., it never shows up in the final conversion. ACKNOWLEDGED: BR. MR. 94/09/06 All FM statements in all paragraphs will be converted, in particular fonts and AFrames. The only instance when this may not be done is when mapping to an HTML TITLE, as markup is not allowed here. Add attribute in PARAGRAPH rule: HIGHLIGHT = < YES | NO > ( Default = YES ) to inhibit the translation of highlights. ------------------------------------------------------------------------- - This one's pretty convoluted... Suppose you have a paragraph in your framemaker document whose paragraph tag is not in the paragraph catalog (I know, you're not supposed to do that, but it shouldn't cause webmaker to die a flaming death, as it can in some circumstances (read on...)). Further, let's suppose the bogus paragraph follows one that's tagged so as to start a new node. Now run webmaker. It goes fine until you get the "! Webmaker/log: Conversion" mesage. In the "prepare" phase of the subsequent lisp execution, the bogus paragraph is recognized as having a tag that does not trigger a new node, so no new htmlfile object is allocated. During the "convert" phase of the conversion, the bogus paragraph is treated as if it were tagged the same as the prior paragraph, and hence it triggers a new node. The problem comes when the convert phase eventually runs out of html files. At that point (send **document** :currentfile) becomes NIL, and webmaker goes down in flames. As I said, I'm not arguing that webmaker should do anything intelligent about the bogus paragraph, but if the prepare and convert phases could be made to treat such paragraphs in a consistent manner, at least this type of mysterious crash would be avoided. Work-around: Get rid of bogus paragraphs with uncataloged tags. ACKNOWLEDGED: BR. MR. 94/09/06 In the production version the prepare and convert phases will be the same so no such inconsistencies may accur between the two phases anymore. ------------------------------------------------------------------------- - If no paragraph rule is given for a paragraph tag of a footnote, the footnote page is created anyway BUT the rest of the document is directed into this page. ACKNOWLEDGED: BR. MR. 94/09/06 ------------------------------------------------------------------------- - WebMaker freezes if given a file with NOTHING at all on the body pages (only stuff on the master pages). ACKNOWLEDGED: BR. MR. 94/09/06 ------------------------------------------------------------------------- - Clipping of tall graphics: Suppose I have a tall inlined frame in my FrameMaker document. Webmaker splits this out into a MIF file all by itself, where it's incorporated into a text flow via a statement in a paragraph tagged "Bodyf2html". This latter format has . Assuming the frame has not had its adjusted, the bottom of the frame will be positioned on the baseline of the first (and only) line of text on the page. Because of the fixed linespacing in the paragraph, that baseline is a fixed distance from the top of the text column. If the frame is taller than this fixed size, the top of the frame gets clipped by wmgraph. ACKNOWLEDGED: MR. AA. 94/09/12 FIX: This can be fixed by changing splitmif.awk so that it specifies for the Bodyf2html paragraph format. -------------------------------------------------------------------------- - An index marker within a Frame paragraph that is mapped as a Heading gives an index entry that points to the paragraph preceeding the heading. This is a problem whem the Heading paragraph craetes a new node. ACKNOWLEDGED: MR. BR. 94/10/11 -------------------------------------------------------------------------- - WebMaker doesn't translate to "-" ACKNOWLEDGED: MR. 94/11/15 -------------------------------------------------------------------------- - WebMaker generates an empty graphic for tables that are conditionally left out of the document. This is if the actual box of the table is conditional. If the anchor for the table is conditional this problem doesn't occur, however this is not consistent with the Frame treats conditional tables. It will leave the table out if the table box (not the cell contents, nor anchor) is conditional. This results in a lot of inefficiency for us, since it generates the graphic indicating the error over for each case, and we have to use sed to post process these references out. We are in the process of converting the table conditionality so it is the anchors and not the tables, but it still seems like this should be repaired. ACKNOWLEDGED: MR. 94/11/15 SEE also same problem under WMGRAPH. -------------------------------------------------------------------------- - An extra is sometimes inserted before or after a string formatted with . ACKNOWLEDGED: MR. 94/11/15 -------------------------------------------------------------------------- - Multiple Textflows within AFrames are incorrectly handled. The generated MIF files are invalid and cause FrameMaker and fmbatch to hang. ACKNOWLEDGED: MR. 94/11/16 -------------------------------------------------------------------------- - If the first paragraph of a MIF is of TYPE List, WebMaker bombs. ACKNOWLEDGED: MR. 94/11/22 NOTE: Only checked when no FirstPage node is specified. -------------------------------------------------------------------------- - FootNote bugs: * If more than one occurs in a paragraph, webmaker bombs. * If one occurs in a paragraph that is within an 'environment' ( such as TYPE List or CONTEXT Preformatted ), webmaker closes the environment prematurely or does some other strange behaviour. * When a paragraph in a node contains a footnote and the node assigns a variable, in the HEADER, with the value of the navigation panel, then, when this variable is written out in the FOOTER, the value is incorrect. In fact, it is always the value that this variable is assigned in the NODE FirstPage. ACKNOWLEDGED: MR. 95/01/24 -------------------------------------------------------------------------- - Clipping of graphics on Landscape pages: PROBLEM: There are four factors at work here: 1 - `webmaker` currently always produces a portrait A4 document for each graphic, with a TextRect that is slightly smaller than the page. The information whether the page was Landscape or not is not retained. 2 - The size of the PostScript page to which the inmages are printed, which is specified in the WMprintsettings.doc file, in webmaker/bin, is always a portrait A4. 3 - The scaling specified in the WM configuration (*.data) for each graphic MIF scales the PostScipt. If the scaling is big enough, the image or part of it will slide off the printed page. 4 - The PostScript image is converted to ppm. The size of the ppm file is hard-wired in the file pstoppm.ps (or pstoppm_big.ps, used only for tables). Therefore, if the PostScript image is scaled up, the ppm page may be may be too small and the ps image may land partly or entirely off the page. WORKAROUND: 1 - Process the graphic MIFs generated with webmaker, to fix some of the shortcomings, by a script as follows (You may need to adjust the lines marked with *** to suit your original MIF document, from which you can get the info needed): -- fix-lanscape.gawk --> BEGIN { bodypage = 0 textrect = 0 } { printed = 0 # *** Replace the document page size to original one before spliting if ( $1 == "" printed = 1 } # *** Make PageOrientation Landscape if ( $1 == "" printed = 1 } # Set flags for bodypage and textrect if ( $1 == " # end of TextRect" ) { textrect = 0 } if ( bodypage == 1 && $0 ~ "> # end of Page" ) { bodypage = 0 } # Don't print local bodypage size (takes the same as DPageSize) if ( bodypage == 1 && $1 == "" printed = 1 } # Fix autonumbering of paragraphs in graphics, while we're at it if ( $1 == " #! /bin/sh if [ x"$1" = x ]; then echo Usage: $0 "< directory name for location of graphic MIF files >" exit 1 fi BINDIR=`dirname $0` for i in $1/*.MIF do echo Processing $i gawk -f $BINDIR/fix-landscape.gawk $i > $i.tmp \mv -f $i.tmp $i done -- -- 2 - To control the size of the PostScript page, replace the file webmaker/bin/WMprintsettings.doc with another of the same name that prints to a A3 size paper ( 42 cm x 29.7 cm ). 3 - The bigger the scaling factor in the configuration, the bigger do the PostScript and ppm pages need to be. Also, in the case of Lanscape images, the ROTATION option of the WML (*.data) needs to be set to RIGHT. 4 - To control the size of the ppm image, you need to edit the Width and Height values in pstoppm.ps and pstoppm_big.ps. Thus, replace the Width and the Height specification lines with /Width 1500 def /Height 1500 def Then copy this file onto both pstoppm.ps and pstoppm_big.ps (Keeping origs safely aside). This will make for bigger ppm files (about 7Mb) and wmgraph will therefor run much slower. However, with fiddling, any picture, whatever the size and scaling, may be converted. This fix was done with the test case document at: http://www.cern.ch/WebMaker/examples/ma-thesis/Thesis_1.html which contains about 90 fullpage size landscape images. MR. 95/01/20 ------------------------------------------------------------------------- - Webmaker does not translate the following special characters: \x14 emspace \x13 enspace \x12 thinspace \x10 numeric space It just spits out x10, x12, x13, x14. ACKNOWLEDGED: MR. 95/01/20 ------------------------------------------------------------------------- - Webmaker does not retain any definitions of User Defined Math Elements. ACKNOWLEDGED: MR. 95/01/20 WORKAROUND: Modify wmmiftops.sh generate an fmbatch file that opens a reference MIF file containing the definitions and imports the formats into the graphic MIF. ------------------------------------------------------------------------- - Webmaker does not retain any definitions of User Defined Colors. ACKNOWLEDGED: MR. 95/01/20 WORKAROUND: Modify wmmiftops.sh generate an fmbatch file that opens a reference MIF file containing the definitions and imports the formats into the graphic MIF. ANNOTATION: MR. 95/02/08 Above does not work as FM does not overwrite the (black) colours present. The colour Catalog must be extracted from the original MIF and inserted into each individual graphic MIF. ------------------------------------------------------------------------- - WebMaker may crash when given MIF files produced by software other than FrameMaker on unix. ACKNOWLEDGED: MR. 95/01/25 Software other than Frame generally produces minimal MIFs that cause no problems to a rreal MIF interpreter. WM is not a MIF interpreter and relies on the amount of information and the layout of a MIF as generated by Frame on unix. Even MIFs produced on the MAC or PC, as they contain superficial differences to those made on unix, may cause WM to hang. ------------------------------------------------------------------------- - When a paragraph contains only an AFrame (no white space or any other characters) or is the last paragraph in the TextFlow, the .data file produced by webmaker is incorrect, cousing wmgraph to crash with a message: webmaker/bin/wmgraph: test: argument expected ACKNOWLEDGED: MR. 95/02/08 WORKAROUND: Enter blank char after the AFrame marker and make sure the para is not the last in the flow. ------------------------------------------------------------------------- - Webmaker does not translate the following special characters: \\ backslash \xd5 quoteright, when it occurs in variables. ACKNOWLEDGED: MR. 95/03/01 ------------------------------------------------------------------------- WML ============================================== - The function openfile(@LUV,mydir/myfile,new) fails in a rather unhelpful way if "mydir" doesn't exist. ACKNOWLEDGED: BR. MR. 94/09/06 WORKAROUND: Create it. ------------------------------------------------------------------------- - The function openfile() should open the file in the same place where the HTML files are being written. ACKNOWLEDGED: BR. MR. 94/09/06 ------------------------------------------------------------------------- - The USES clause for PARAGARPH rules may cycle and cause webmaker to crash. OBSELETED. BR. MR. 94/09/06 In new WML no such cycling is possible as CONVERSION rules and PARAGRAPH rules are separated. Cycling may however occur for included files. ------------------------------------------------------------------------- - 'stdout' in write() does not work ACKNOWLEDGED: BR. MR. 94/09/06 ------------------------------------------------------------------------- - If the toc() function is called with a depth greater the depth level of the highest NON-nodetriggering Heading paragraph, then the generated TOC is flat beyond this level, AND lower down levels are not included. Clear ?! Explanation: L1 NewNode (includes call to toc(3,local) L2 L3 L4 L5 L2 L3 will generate in the node created by L1 the TOC: L2 L3 L4 L2 L3 ACKNOWLEDGED, BR. MR. 94/09/12 ------------------------------------------------------------------------- - If 'previous' is specified as the first parameter in the text() function, without specifying the 2nd and 3rd parameter, then the returned text is text(current) ACKNOWLEDGED: MR. 94/09/20 ------------------------------------------------------------------------- - If the USES clause refers to an undefined PARAGRAPH rule the parser does not complain. TO BE VERIFIED: MR. 94/11/16 ------------------------------------------------------------------------- - If calls to WML functions are made within ACTIONS block, without constituting an action, ie { bold(text() }, the WML parser does not complain. TO BE VERIFIED: MR. 94/11/16 ------------------------------------------------------------------------- - If a level is skipped in the Heading heirarchy, ie if a Heading of level 3 occurs after a Heading of level 1, then the genrated TOC is incorrect (ignores subsequent Headings of level 3). ACKNOWLEDGED: MR. 95/01/17 ------------------------------------------------------------------------- - If there is a " (quotation mark) in the name of a paragraph style in the original frame document, the " is included in a quoted string in the configuration file and causes a syntax error. Avoiding paragraph styles with " marks in them eliminates the problem. ACKNOWLEDGED: MR. 95/02/15 ------------------------------------------------------------------------- WMGRAPH ============================================== - With a table, you can make either the anchor of the table conditional, the table itself, or any of the individual fields conditional. At the moment all our tables are conditional, but not the anchors or the fields. This gives the desired result for the printed version which is to have no table at all when the conditional is false. When webmaker encounters this it apparently doesn't evaluate the conditional and creates a .MIF and .data file in the graphics directory anticipating a graphic will need to be generated. Wmgraph does evaluate the conditional but generates the graphic that says "webmaker could not convert" (kmg0.gif I think). It also gives a message in the log that says "generated graphic is empty". Ideally the conditional would be evaluated in webmaker and not in wmgraph. These sorts of tables probably account for 30% of all the graphics (30% of temp space, and 30% of running time). If we make the anchor conditional, then it all works correctly, but we haven't done that. I do believe this is a bug. ACKNOWLEDGED: MR. 94/11/15 This is in fact a webmaker problem as wmgraph does not modify the MIF at all. ------------------------------------------------------------------------- - Multi-page tables: Prior to 1.4, only the first page of these was being retained. As a temporary workaround, wmgraph checks to see if a graphic is a multipage table and when it is, puts out a ps file for the image, whatever is asked by the user. The problem is that when this happens, webmaker may have pointed to this file by a different extension. So Markers of Type 25 should be inserted around the image: GRAPHIC REALFORMAT PS and END GRAPHIC. ACKNOWLEDGED: MR. 95/01/20 ------------------------------------------------------------------------- WMCONFIG ============================================= - If the Pgftag name in the MIF contain escaped characters, then wmconfig puts out an incorrect Pgftag name in the generated wml. ACKNOWLEDGED: MR. 94/11/15 ------------------------------------------------------------------------- EXECUTION SCRIPTS ============================================== - Suspending webmaker. Attempting to stop webmaker using a standard Ctrl-Z, does not always work. ACKNOWLEDGED. AK. 94/09/06 Because webmaker calls other programs such as xlisp and gawk, one Ctrl-C may not be enough to kill a process. Work-around: Enter as many Ctrl-C as it takes to stop wemaker. It is not recommeded to suspend with Ctrl-Z. ------------------------------------------------------------------------- - On HP running AFS 'mkdir -p' misbehaves. This causes a problem when webmaker tries to create directories. ACKNOWLEDGED. AK. 94/09/16 Create these directories by hand, namely wmwork, graphics, tmp. ------------------------------------------------------------------------- INSTALLATION ============================================== --------------------------------------------------------------------------- RUNTIME LIBRARY ============================================== - Webmaker fails with HP-UX awk and works with gawk2.15.5., wmgraph fails with gawk2.15.5 (internal error) and works with HP-UX awk. BEING CONSIDERED: AK. 94/09/12 So far this has proven to be an incorrect installion of gawk. ------------------------------------------------------------------------- - Some pbmplus utilities that are used by wmgraph are missing in the source tar files of WebMaker. ACKNOWLEDGED: MR. 95/01/20 FIX: We have prepared a tar for each platform containing the binaries of pbmplus. These are is in the directory: ftp://ptsun00.cern.ch/ftp/pub/webmaker/wm14/pbmplus/ Once you get, mv xyzpbmplus.tar.Z webmaker/thirdparty/pbmplus/pbmplus.tar.Z Then re-run webmaker install and ask only for pbmplus installation. ----------------------------------------------------------------- DOCUMENTATION ============================================== ---------------------------------------------------------------------------