[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Texi2html-cvs] texi2html ./ChangeLog ./NEWS ./T2h_l2h.pm ./TOD...
From: |
Patrice Dumas |
Subject: |
[Texi2html-cvs] texi2html ./ChangeLog ./NEWS ./T2h_l2h.pm ./TOD... |
Date: |
Mon, 29 May 2006 23:36:11 +0000 |
CVSROOT: /cvsroot/texi2html
Module name: texi2html
Branch:
Changes by: Patrice Dumas <address@hidden> 06/05/29 23:36:10
Modified files:
. : ChangeLog NEWS T2h_l2h.pm TODO texi2html.init
texi2html.pl
Tests : Makefile.am Makefile.in test.sh
Tests/formatting: .cvsignore footnote_not_closed.texi
formats_not_closed.texi
Tests/formatting_res: exotic_formatting.2 footnote_not_closed.2
footnote_not_closed.html
footnote_not_closed.passfirst
footnote_not_closed.passtexi
formats_not_closed.2
formats_not_closed.html
formats_not_closed.passfirst
formats_not_closed.passtexi formatting.2
fr_formatting.2 icons_fr_formatting.2
tables.2 to_utf8_formatting.2
weird_quotes_formatting.2
doc : texi2html.html texi2html.texi
Added files:
Tests/floats : caption_not_closed.texi
Tests/floats_res: caption_not_closed.2 caption_not_closed.html
caption_not_closed.passfirst
caption_not_closed.passtexi
Tests/formatting: bad_nesting.texi commands_not_closed.texi
math_not_closed.texi
Tests/formatting_res: bad_nesting.2 bad_nesting.html
bad_nesting.passfirst bad_nesting.passtexi
commands_not_closed.2
commands_not_closed.html
commands_not_closed.passfirst
commands_not_closed.passtexi
math_not_closed.html
math_not_closed.passfirst
math_not_closed.passtexi
Log message:
* texi2html.pl, texi2html.init: rework image formatting,
more is done in the formatting functions.
Redundancy between menu entry and menu description is
handled in the formatting functions.
* texi2html.pl:
Close correctly the @-commands in pass_structure.
Remove unneeded error messages for formats not matching when
it cannot happen.
Use the same element in menu description and menu links.
Try to close paragraph when searching for the right format
to close.
Remove unclosed accent commands from the 'command_stack'.
Indentation fixes.
* T2h_l2h.pm: use the document name in the perl cache name.
* Tests/*: more tests for unclosed @-commands.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/ChangeLog.diff?tr1=1.246&tr2=1.247&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/NEWS.diff?tr1=1.53&tr2=1.54&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/T2h_l2h.pm.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/TODO.diff?tr1=1.29&tr2=1.30&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/texi2html.init.diff?tr1=1.105&tr2=1.106&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/texi2html.pl.diff?tr1=1.167&tr2=1.168&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/Makefile.am.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/Makefile.in.diff?tr1=1.36&tr2=1.37&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/test.sh.diff?tr1=1.60&tr2=1.61&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/floats/caption_not_closed.texi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/floats_res/caption_not_closed.2?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/floats_res/caption_not_closed.html?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/floats_res/caption_not_closed.passfirst?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/floats_res/caption_not_closed.passtexi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting/.cvsignore.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting/bad_nesting.texi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting/commands_not_closed.texi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting/footnote_not_closed.texi.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting/formats_not_closed.texi.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting/math_not_closed.texi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/bad_nesting.2?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/bad_nesting.html?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/bad_nesting.passfirst?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/bad_nesting.passtexi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/commands_not_closed.2?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/commands_not_closed.html?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/commands_not_closed.passfirst?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/commands_not_closed.passtexi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/exotic_formatting.2.diff?tr1=1.25&tr2=1.26&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/footnote_not_closed.2.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/footnote_not_closed.html.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/footnote_not_closed.passfirst.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/footnote_not_closed.passtexi.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/formats_not_closed.2.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/formats_not_closed.html.diff?tr1=1.20&tr2=1.21&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/formats_not_closed.passfirst.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/formats_not_closed.passtexi.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/formatting.2.diff?tr1=1.25&tr2=1.26&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/fr_formatting.2.diff?tr1=1.24&tr2=1.25&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/icons_fr_formatting.2.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/math_not_closed.html?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/math_not_closed.passfirst?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/math_not_closed.passtexi?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/tables.2.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/to_utf8_formatting.2.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/Tests/formatting_res/weird_quotes_formatting.2.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/doc/texi2html.html.diff?tr1=1.39&tr2=1.40&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html/doc/texi2html.texi.diff?tr1=1.50&tr2=1.51&r1=text&r2=text
Patches:
Index: texi2html/ChangeLog
diff -u texi2html/ChangeLog:1.246 texi2html/ChangeLog:1.247
--- texi2html/ChangeLog:1.246 Wed May 17 01:51:45 2006
+++ texi2html/ChangeLog Mon May 29 23:36:10 2006
@@ -1,5 +1,23 @@
2006-05-17 Patrice Dumas <address@hidden>
+ * texi2html.pl, texi2html.init: rework image formatting,
+ more is done in the formatting functions.
+ Redundancy between menu entry and menu description is
+ handled in the formatting functions.
+ * texi2html.pl:
+ Close correctly the @-commands in pass_structure.
+ Remove unneeded error messages for formats not matching when
+ it cannot happen.
+ Use the same element in menu description and menu links.
+ Try to close paragraph when searching for the right format
+ to close.
+ Remove unclosed accent commands from the 'command_stack'.
+ Indentation fixes.
+ * T2h_l2h.pm: use the document name in the perl cache name.
+ * Tests/*: more tests for unclosed @-commands.
+
+2006-05-17 Patrice Dumas <address@hidden>
+
* texi2html.pl, texi2html.init: teletype style is set in
table item formatting in texi2html.init, not in the main
program.
Index: texi2html/NEWS
diff -u texi2html/NEWS:1.53 texi2html/NEWS:1.54
--- texi2html/NEWS:1.53 Mon Apr 17 23:11:09 2006
+++ texi2html/NEWS Mon May 29 23:36:10 2006
@@ -43,7 +43,7 @@
file names are in the hash reference $Texi2HTML::THISDOC{'filename'}
for use in init files.
-* The API for image and normal_text and paragraph is changed.
+* The API for image, normal_text and paragraph has changed.
* The $ENCODING variable is deprecated, replaced by $ENCODING_NAME
and $OUT_ENCODING.
@@ -51,6 +51,12 @@
* Use entities for ``, '', ---, -- and quotes used for some formatting
@-commands if $USE_ISO is set.
+* don't set unset MENU-ENTRY-NAME if it is similar with the NODE-NAME,
+ it is useless as it is a construct that shouldn't happen.
+
+* avoid menu entry and description redundancy in the formatting function
+ and not in the main program.
+
* BUG FIXES
---------
Index: texi2html/T2h_l2h.pm
diff -u texi2html/T2h_l2h.pm:1.3 texi2html/T2h_l2h.pm:1.4
--- texi2html/T2h_l2h.pm:1.3 Sun Apr 23 20:47:27 2006
+++ texi2html/T2h_l2h.pm Mon May 29 23:36:10 2006
@@ -101,7 +101,7 @@
$docu_ext = $Texi2HTML::THISDOC{'extension'};
$l2h_name = "${docu_name}_l2h";
$l2h_latex_file = "$docu_rdir${l2h_name}.tex";
- $l2h_cache_file = "${docu_rdir}l2h_cache.pm";
+ $l2h_cache_file = "${docu_rdir}${docu_name}-l2h_cache.pm";
# destination dir -- generated images are put there, should be the same
# as dir of enclosing html document --
$l2h_html_file = "$docu_rdir${l2h_name}.html";
Index: texi2html/TODO
diff -u texi2html/TODO:1.29 texi2html/TODO:1.30
--- texi2html/TODO:1.29 Sun Apr 23 20:47:27 2006
+++ texi2html/TODO Mon May 29 23:36:10 2006
@@ -105,3 +105,5 @@
test of missing files.
* many FIXME in the code
+
+* test @printindex in diverse contexts
Index: texi2html/Tests/Makefile.am
diff -u texi2html/Tests/Makefile.am:1.16 texi2html/Tests/Makefile.am:1.17
--- texi2html/Tests/Makefile.am:1.16 Sun Apr 23 20:47:27 2006
+++ texi2html/Tests/Makefile.am Mon May 29 23:36:10 2006
@@ -13,7 +13,8 @@
-for dir in ${SUBDIR_TESTS}; do \
[ -d $${dir}_res ] && cp $$dir/*.passfirst $$dir/*.html $$dir/*.htm
$$dir/*.2 $$dir/*.passtexi $${dir}_res;\
done
- -rm -f formatting_res/*_l2h.html formatting_res/tex.2
formatting_res/tex_in_copying.2
+ -rm -f formatting_res/*_l2h.html formatting_res/tex.2 \
+ formatting_res/tex_in_copying.2 formatting_res/math_not_closed.2
-rm -f singular_res/*_l2h.html singular_res/sing.2
clean-local:
@@ -25,5 +26,5 @@
*_?.png *_??.png *_???.png *_l2h_img?.old *_l2h_img??.old
*_l2h_img???.old \
*_l2h_img?.png *_l2h_img??.png *_l2h_img???.png \
*_l2h.tex *_l2h.css *_l2h_images.pl *_l2h_images.tex \
- *_l2h_labels.pl l2h_cache.pm *.out; fi) ; \
+ *_l2h_labels.pl *-l2h_cache.pm l2h_cache.pm *.out; fi) ; \
done
Index: texi2html/Tests/Makefile.in
diff -u texi2html/Tests/Makefile.in:1.36 texi2html/Tests/Makefile.in:1.37
--- texi2html/Tests/Makefile.in:1.36 Sun Apr 23 20:47:27 2006
+++ texi2html/Tests/Makefile.in Mon May 29 23:36:10 2006
@@ -282,7 +282,8 @@
-for dir in ${SUBDIR_TESTS}; do \
[ -d $${dir}_res ] && cp $$dir/*.passfirst $$dir/*.html $$dir/*.htm
$$dir/*.2 $$dir/*.passtexi $${dir}_res;\
done
- -rm -f formatting_res/*_l2h.html formatting_res/tex.2
formatting_res/tex_in_copying.2
+ -rm -f formatting_res/*_l2h.html formatting_res/tex.2 \
+ formatting_res/tex_in_copying.2 formatting_res/math_not_closed.2
-rm -f singular_res/*_l2h.html singular_res/sing.2
clean-local:
@@ -294,7 +295,7 @@
*_?.png *_??.png *_???.png *_l2h_img?.old *_l2h_img??.old
*_l2h_img???.old \
*_l2h_img?.png *_l2h_img??.png *_l2h_img???.png \
*_l2h.tex *_l2h.css *_l2h_images.pl *_l2h_images.tex \
- *_l2h_labels.pl l2h_cache.pm *.out; fi) ; \
+ *_l2h_labels.pl *-l2h_cache.pm l2h_cache.pm *.out; fi) ; \
done
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
Index: texi2html/Tests/formatting/.cvsignore
diff -u texi2html/Tests/formatting/.cvsignore:1.2
texi2html/Tests/formatting/.cvsignore:1.3
--- texi2html/Tests/formatting/.cvsignore:1.2 Sun Apr 23 20:47:27 2006
+++ texi2html/Tests/formatting/.cvsignore Mon May 29 23:36:10 2006
@@ -13,4 +13,7 @@
tex_in_copying_l2h_images.log
tex_in_copying_l2h_images.out
tex_l2h_images.out
-l2h_cache.pm
+math_not_closed_l2h.css
+math_not_closed_l2h_images.log
+math_not_closed_l2h_images.out
+*-l2h_cache.pm
Index: texi2html/Tests/formatting/footnote_not_closed.texi
diff -u texi2html/Tests/formatting/footnote_not_closed.texi:1.1
texi2html/Tests/formatting/footnote_not_closed.texi:1.2
--- texi2html/Tests/formatting/footnote_not_closed.texi:1.1 Sun Apr 23
20:47:28 2006
+++ texi2html/Tests/formatting/footnote_not_closed.texi Mon May 29 23:36:10 2006
@@ -11,11 +11,19 @@
@menu
* chapter:: the chapter
+* chapter2:: the second chapter
@end menu
@node chapter
@chapter Chapter
-In chapter
+In address@hidden footnote
+
address@hidden
+In a quotation
+
address@hidden chapter2
address@hidden Chapter2
+
@bye
Index: texi2html/Tests/formatting/formats_not_closed.texi
diff -u texi2html/Tests/formatting/formats_not_closed.texi:1.2
texi2html/Tests/formatting/formats_not_closed.texi:1.3
--- texi2html/Tests/formatting/formats_not_closed.texi:1.2 Sun Jan 4
20:52:32 2004
+++ texi2html/Tests/formatting/formats_not_closed.texi Mon May 29 23:36:10 2006
@@ -53,4 +53,12 @@
text flushed right
address@hidden a section
+
+group not closed
+
address@hidden
+
+text in group
+
@bye
Index: texi2html/Tests/formatting_res/exotic_formatting.2
diff -u texi2html/Tests/formatting_res/exotic_formatting.2:1.25
texi2html/Tests/formatting_res/exotic_formatting.2:1.26
--- texi2html/Tests/formatting_res/exotic_formatting.2:1.25 Wed May 17
01:51:46 2006
+++ texi2html/Tests/formatting_res/exotic_formatting.2 Mon May 29 23:36:10 2006
@@ -31,11 +31,11 @@
*** Unknown node in menu entry `description' (l. 11)
** Unknown command address@hidden' (left as is) (l. 474 in mymacro)
** TeX requires {} (l. 474 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 474 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 474 in mymacro)
*** no file argument for @image (l. 474 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 474 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 474 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
@@ -52,11 +52,11 @@
*** Need a node name for @inforef (l. 474 in mymacro)
** Unknown command address@hidden' (left as is) (l. 477 in mymacro)
** TeX requires {} (l. 477 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 477 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 477 in mymacro)
*** no file argument for @image (l. 477 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 477 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 477 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
Index: texi2html/Tests/formatting_res/footnote_not_closed.2
diff -u texi2html/Tests/formatting_res/footnote_not_closed.2:1.1
texi2html/Tests/formatting_res/footnote_not_closed.2:1.2
--- texi2html/Tests/formatting_res/footnote_not_closed.2:1.1 Sun Apr 23
20:47:28 2006
+++ texi2html/Tests/formatting_res/footnote_not_closed.2 Mon May 29
23:36:10 2006
@@ -1 +1,3 @@
-** closing footnote (l. 16)
+** closing @-command footnote (l. 17)
+** closing @-command footnote (l. 25)
+** closing `quotation'
Index: texi2html/Tests/formatting_res/footnote_not_closed.html
diff -u texi2html/Tests/formatting_res/footnote_not_closed.html:1.1
texi2html/Tests/formatting_res/footnote_not_closed.html:1.2
--- texi2html/Tests/formatting_res/footnote_not_closed.html:1.1 Sun Apr 23
20:47:28 2006
+++ texi2html/Tests/formatting_res/footnote_not_closed.html Mon May 29
23:36:10 2006
@@ -56,11 +56,11 @@
<a name="SEC1"></a>
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="#SEC_Top" title="Previous
section in reading order"> < </a>]</td>
-<td valign="middle" align="left">[ > ]</td>
+<td valign="middle" align="left">[<a href="#SEC2" title="Next section in
reading order"> > </a>]</td>
<td valign="middle" align="left"> </td>
<td valign="middle" align="left">[ << ]</td>
<td valign="middle" align="left">[<a href="#SEC_Top" title="Up section"> Up
</a>]</td>
-<td valign="middle" align="left">[ >> ]</td>
+<td valign="middle" align="left">[<a href="#SEC2" title="Next chapter">
>> </a>]</td>
<td valign="middle" align="left"> </td>
<td valign="middle" align="left"> </td>
<td valign="middle" align="left"> </td>
@@ -72,8 +72,28 @@
</tr></table>
<h1 class="chapter"> 1. Chapter </h1>
-<p>In chapter
-</p>
+<p>In chapter<a name="DOCF2" href="#FOOT2">(2)</a></p><hr size="6">
+<a name="chapter2"></a>
+<a name="SEC2"></a>
+<table cellpadding="1" cellspacing="1" border="0">
+<tr><td valign="middle" align="left">[<a href="#SEC1" title="Previous section
in reading order"> < </a>]</td>
+<td valign="middle" align="left">[ > ]</td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left">[<a href="#SEC1" title="Beginning of this
chapter or previous chapter"> << </a>]</td>
+<td valign="middle" align="left">[<a href="#SEC_Top" title="Up section"> Up
</a>]</td>
+<td valign="middle" align="left">[ >> ]</td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left">[<a href="#SEC_Top" title="Cover (top) of
document">Top</a>]</td>
+<td valign="middle" align="left">[Contents]</td>
+<td valign="middle" align="left">[Index]</td>
+<td valign="middle" align="left">[<a href="#SEC_About" title="About (help)"> ?
</a>]</td>
+</tr></table>
+<h1 class="chapter"> 2. Chapter2 </h1>
+
+
<hr size="6">
<a name="SEC_Foot"></a>
<table cellpadding="1" cellspacing="1" border="0">
@@ -91,7 +111,14 @@
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top"><a href="#SEC1">1.
Chapter</a></td><td> </td><td align="left" valign="top">
the chapter
</td></tr>
+<tr><td align="left" valign="top"><a href="#SEC2">2.
Chapter2</a></td><td> </td><td align="left" valign="top">
the second chapter
+</td></tr>
</table>
+<h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>Another footnote
+</p>
+<blockquote><p>In a quotation
+</p></blockquote>
<hr size="1">
<a name="SEC_About"></a>
<table cellpadding="1" cellspacing="1" border="0">
Index: texi2html/Tests/formatting_res/footnote_not_closed.passfirst
diff -u texi2html/Tests/formatting_res/footnote_not_closed.passfirst:1.1
texi2html/Tests/formatting_res/footnote_not_closed.passfirst:1.2
--- texi2html/Tests/formatting_res/footnote_not_closed.passfirst:1.1 Sun Apr
23 20:47:28 2006
+++ texi2html/Tests/formatting_res/footnote_not_closed.passfirst Mon May
29 23:36:10 2006
@@ -10,11 +10,19 @@
footnote_not_closed.texi(,11)
footnote_not_closed.texi(,12) @menu
footnote_not_closed.texi(,13) * chapter:: the chapter
-footnote_not_closed.texi(,14) @end menu
-footnote_not_closed.texi(,15)
-footnote_not_closed.texi(,16) @node chapter
-footnote_not_closed.texi(,17) @chapter Chapter
-footnote_not_closed.texi(,18)
-footnote_not_closed.texi(,19) In chapter
-footnote_not_closed.texi(,20)
-footnote_not_closed.texi(,21) @bye
+footnote_not_closed.texi(,14) * chapter2:: the second chapter
+footnote_not_closed.texi(,15) @end menu
+footnote_not_closed.texi(,16)
+footnote_not_closed.texi(,17) @node chapter
+footnote_not_closed.texi(,18) @chapter Chapter
+footnote_not_closed.texi(,19)
+footnote_not_closed.texi(,20) In address@hidden footnote
+footnote_not_closed.texi(,21)
+footnote_not_closed.texi(,22) @quotation
+footnote_not_closed.texi(,23) In a quotation
+footnote_not_closed.texi(,24)
+footnote_not_closed.texi(,25) @node chapter2
+footnote_not_closed.texi(,26) @chapter Chapter2
+footnote_not_closed.texi(,27)
+footnote_not_closed.texi(,28)
+footnote_not_closed.texi(,29) @bye
Index: texi2html/Tests/formatting_res/footnote_not_closed.passtexi
diff -u texi2html/Tests/formatting_res/footnote_not_closed.passtexi:1.1
texi2html/Tests/formatting_res/footnote_not_closed.passtexi:1.2
--- texi2html/Tests/formatting_res/footnote_not_closed.passtexi:1.1 Sun Apr
23 20:47:28 2006
+++ texi2html/Tests/formatting_res/footnote_not_closed.passtexi Mon May 29
23:36:10 2006
@@ -10,11 +10,19 @@
footnote_not_closed.texi(,11)
footnote_not_closed.texi(,12) @menu
footnote_not_closed.texi(,13) * chapter:: the chapter
-footnote_not_closed.texi(,14) @end menu
-footnote_not_closed.texi(,15)
-footnote_not_closed.texi(,16) @node chapter
-footnote_not_closed.texi(,17) @chapter Chapter
-footnote_not_closed.texi(,18)
-footnote_not_closed.texi(,19) In chapter
-footnote_not_closed.texi(,20)
-footnote_not_closed.texi(,21) @bye
+footnote_not_closed.texi(,14) * chapter2:: the second chapter
+footnote_not_closed.texi(,15) @end menu
+footnote_not_closed.texi(,16)
+footnote_not_closed.texi(,17) @node chapter
+footnote_not_closed.texi(,18) @chapter Chapter
+footnote_not_closed.texi(,19)
+footnote_not_closed.texi(,20) In address@hidden footnote
+footnote_not_closed.texi(,21)
+footnote_not_closed.texi(,22) @quotation
+footnote_not_closed.texi(,23) In a quotation
+footnote_not_closed.texi(,24)
+footnote_not_closed.texi(,25) @node chapter2
+footnote_not_closed.texi(,26) @chapter Chapter2
+footnote_not_closed.texi(,27)
+footnote_not_closed.texi(,28)
+footnote_not_closed.texi(,29) @bye
Index: texi2html/Tests/formatting_res/formats_not_closed.2
diff -u texi2html/Tests/formatting_res/formats_not_closed.2:1.5
texi2html/Tests/formatting_res/formats_not_closed.2:1.6
--- texi2html/Tests/formatting_res/formats_not_closed.2:1.5 Sat Jan 15
23:45:34 2005
+++ texi2html/Tests/formatting_res/formats_not_closed.2 Mon May 29 23:36:10 2006
@@ -8,3 +8,4 @@
** closing `defvar' (l. 48)
** closing `deffn' (l. 48)
** closing `flushright' (l. 56)
+** closing `group' (l. 64)
Index: texi2html/Tests/formatting_res/formats_not_closed.html
diff -u texi2html/Tests/formatting_res/formats_not_closed.html:1.20
texi2html/Tests/formatting_res/formats_not_closed.html:1.21
--- texi2html/Tests/formatting_res/formats_not_closed.html:1.20 Wed May 17
01:51:46 2006
+++ texi2html/Tests/formatting_res/formats_not_closed.html Mon May 29
23:36:10 2006
@@ -171,11 +171,11 @@
<a name="SEC5"></a>
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="#SEC4" title="Previous section
in reading order"> < </a>]</td>
-<td valign="middle" align="left">[ > ]</td>
+<td valign="middle" align="left">[<a href="#SEC6" title="Next section in
reading order"> > </a>]</td>
<td valign="middle" align="left"> </td>
<td valign="middle" align="left">[<a href="#SEC4" title="Beginning of this
chapter or previous chapter"> << </a>]</td>
<td valign="middle" align="left">[<a href="#Top" title="Up section"> Up
</a>]</td>
-<td valign="middle" align="left">[ >> ]</td>
+<td valign="middle" align="left">[<a href="#SEC6" title="Next chapter">
>> </a>]</td>
<td valign="middle" align="left"> </td>
<td valign="middle" align="left"> </td>
<td valign="middle" align="left"> </td>
@@ -193,6 +193,31 @@
<p align="right">text flushed right
</p>
<hr size="6">
+<a name="SEC6"></a>
+<table cellpadding="1" cellspacing="1" border="0">
+<tr><td valign="middle" align="left">[<a href="#SEC5" title="Previous section
in reading order"> < </a>]</td>
+<td valign="middle" align="left">[ > ]</td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left">[<a href="#SEC5" title="Beginning of this
chapter or previous chapter"> << </a>]</td>
+<td valign="middle" align="left">[<a href="#Top" title="Up section"> Up
</a>]</td>
+<td valign="middle" align="left">[ >> ]</td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left"> </td>
+<td valign="middle" align="left">[<a href="#Top" title="Cover (top) of
document">Top</a>]</td>
+<td valign="middle" align="left">[Contents]</td>
+<td valign="middle" align="left">[Index]</td>
+<td valign="middle" align="left">[<a href="#SEC_About" title="About (help)"> ?
</a>]</td>
+</tr></table>
+<h2 class="section"> 6. a section </h2>
+
+<p>group not closed
+</p>
+
+<p>text in group
+</p>
+<hr size="6">
<a name="SEC_About"></a>
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="#Top" title="Cover (top) of
document">Top</a>]</td>
Index: texi2html/Tests/formatting_res/formats_not_closed.passfirst
diff -u texi2html/Tests/formatting_res/formats_not_closed.passfirst:1.6
texi2html/Tests/formatting_res/formats_not_closed.passfirst:1.7
--- texi2html/Tests/formatting_res/formats_not_closed.passfirst:1.6 Sat Jan
15 23:45:34 2005
+++ texi2html/Tests/formatting_res/formats_not_closed.passfirst Mon May 29
23:36:10 2006
@@ -52,4 +52,12 @@
formats_not_closed.texi(,53)
formats_not_closed.texi(,54) text flushed right
formats_not_closed.texi(,55)
-formats_not_closed.texi(,56) @bye
+formats_not_closed.texi(,56) @section a section
+formats_not_closed.texi(,57)
+formats_not_closed.texi(,58) group not closed
+formats_not_closed.texi(,59)
+formats_not_closed.texi(,60) @group
+formats_not_closed.texi(,61)
+formats_not_closed.texi(,62) text in group
+formats_not_closed.texi(,63)
+formats_not_closed.texi(,64) @bye
Index: texi2html/Tests/formatting_res/formats_not_closed.passtexi
diff -u texi2html/Tests/formatting_res/formats_not_closed.passtexi:1.3
texi2html/Tests/formatting_res/formats_not_closed.passtexi:1.4
--- texi2html/Tests/formatting_res/formats_not_closed.passtexi:1.3 Sun Jan
4 20:52:32 2004
+++ texi2html/Tests/formatting_res/formats_not_closed.passtexi Mon May 29
23:36:10 2006
@@ -52,4 +52,12 @@
formats_not_closed.texi(,53)
formats_not_closed.texi(,54) text flushed right
formats_not_closed.texi(,55)
-formats_not_closed.texi(,56) @bye
+formats_not_closed.texi(,56) @section a section
+formats_not_closed.texi(,57)
+formats_not_closed.texi(,58) group not closed
+formats_not_closed.texi(,59)
+formats_not_closed.texi(,60) @group
+formats_not_closed.texi(,61)
+formats_not_closed.texi(,62) text in group
+formats_not_closed.texi(,63)
+formats_not_closed.texi(,64) @bye
Index: texi2html/Tests/formatting_res/formatting.2
diff -u texi2html/Tests/formatting_res/formatting.2:1.25
texi2html/Tests/formatting_res/formatting.2:1.26
--- texi2html/Tests/formatting_res/formatting.2:1.25 Wed May 17 01:51:46 2006
+++ texi2html/Tests/formatting_res/formatting.2 Mon May 29 23:36:10 2006
@@ -31,11 +31,11 @@
*** Unknown node in menu entry `description' (l. 11)
** Unknown command address@hidden' (left as is) (l. 474 in mymacro)
** TeX requires {} (l. 474 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 474 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 474 in mymacro)
*** no file argument for @image (l. 474 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 474 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 474 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
@@ -52,11 +52,11 @@
*** Need a node name for @inforef (l. 474 in mymacro)
** Unknown command address@hidden' (left as is) (l. 477 in mymacro)
** TeX requires {} (l. 477 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 477 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 477 in mymacro)
*** no file argument for @image (l. 477 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 477 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 477 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
Index: texi2html/Tests/formatting_res/fr_formatting.2
diff -u texi2html/Tests/formatting_res/fr_formatting.2:1.24
texi2html/Tests/formatting_res/fr_formatting.2:1.25
--- texi2html/Tests/formatting_res/fr_formatting.2:1.24 Wed May 17 01:51:46 2006
+++ texi2html/Tests/formatting_res/fr_formatting.2 Mon May 29 23:36:10 2006
@@ -31,11 +31,11 @@
*** Unknown node in menu entry `description' (l. 11)
** Unknown command address@hidden' (left as is) (l. 474 in mymacro)
** TeX requires {} (l. 474 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 474 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 474 in mymacro)
*** no file argument for @image (l. 474 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 474 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 474 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
@@ -52,11 +52,11 @@
*** Need a node name for @inforef (l. 474 in mymacro)
** Unknown command address@hidden' (left as is) (l. 477 in mymacro)
** TeX requires {} (l. 477 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 477 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 477 in mymacro)
*** no file argument for @image (l. 477 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 477 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 477 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
Index: texi2html/Tests/formatting_res/icons_fr_formatting.2
diff -u texi2html/Tests/formatting_res/icons_fr_formatting.2:1.5
texi2html/Tests/formatting_res/icons_fr_formatting.2:1.6
--- texi2html/Tests/formatting_res/icons_fr_formatting.2:1.5 Wed May 17
01:51:46 2006
+++ texi2html/Tests/formatting_res/icons_fr_formatting.2 Mon May 29
23:36:10 2006
@@ -31,11 +31,11 @@
*** Unknown node in menu entry `description' (l. 11)
** Unknown command address@hidden' (left as is) (l. 474 in mymacro)
** TeX requires {} (l. 474 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 474 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 474 in mymacro)
*** no file argument for @image (l. 474 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 474 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 474 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
@@ -52,11 +52,11 @@
*** Need a node name for @inforef (l. 474 in mymacro)
** Unknown command address@hidden' (left as is) (l. 477 in mymacro)
** TeX requires {} (l. 477 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 477 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 477 in mymacro)
*** no file argument for @image (l. 477 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 477 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 477 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
Index: texi2html/Tests/formatting_res/tables.2
diff -u texi2html/Tests/formatting_res/tables.2:1.1
texi2html/Tests/formatting_res/tables.2:1.2
--- texi2html/Tests/formatting_res/tables.2:1.1 Wed May 17 01:51:46 2006
+++ texi2html/Tests/formatting_res/tables.2 Mon May 29 23:36:10 2006
@@ -1,6 +1,6 @@
-** closing ref (l. 16)
+** closing @-command ref (l. 16)
** closing `table' (l. 16)
** @item outside of table or list
*** @end table without corresponding opening
-** closing ref (l. 19)
+** closing @-command ref (l. 19)
*** '}' without opening '{' before: (l. 20)
Index: texi2html/Tests/formatting_res/to_utf8_formatting.2
diff -u texi2html/Tests/formatting_res/to_utf8_formatting.2:1.4
texi2html/Tests/formatting_res/to_utf8_formatting.2:1.5
--- texi2html/Tests/formatting_res/to_utf8_formatting.2:1.4 Wed May 17
01:51:46 2006
+++ texi2html/Tests/formatting_res/to_utf8_formatting.2 Mon May 29 23:36:10 2006
@@ -31,11 +31,11 @@
*** Unknown node in menu entry `description' (l. 11)
** Unknown command address@hidden' (left as is) (l. 474 in mymacro)
** TeX requires {} (l. 474 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 474 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 474 in mymacro)
*** no file argument for @image (l. 474 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 474 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 474 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
@@ -52,11 +52,11 @@
*** Need a node name for @inforef (l. 474 in mymacro)
** Unknown command address@hidden' (left as is) (l. 477 in mymacro)
** TeX requires {} (l. 477 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 477 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 477 in mymacro)
*** no file argument for @image (l. 477 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 477 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 477 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
Index: texi2html/Tests/formatting_res/weird_quotes_formatting.2
diff -u texi2html/Tests/formatting_res/weird_quotes_formatting.2:1.3
texi2html/Tests/formatting_res/weird_quotes_formatting.2:1.4
--- texi2html/Tests/formatting_res/weird_quotes_formatting.2:1.3 Wed May
17 01:51:46 2006
+++ texi2html/Tests/formatting_res/weird_quotes_formatting.2 Mon May 29
23:36:10 2006
@@ -31,11 +31,11 @@
*** Unknown node in menu entry `description' (l. 11)
** Unknown command address@hidden' (left as is) (l. 474 in mymacro)
** TeX requires {} (l. 474 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 474 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 474 in mymacro)
*** no file argument for @image (l. 474 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 474 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 474 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
@@ -52,11 +52,11 @@
*** Need a node name for @inforef (l. 474 in mymacro)
** Unknown command address@hidden' (left as is) (l. 477 in mymacro)
** TeX requires {} (l. 477 in mymacro)
-** no image file for f-ile, (using f-ile.jpg) (l. 477 in mymacro)
+** no image file for f-ile, (using f-ile.jpg)
*** no file argument for @image (l. 477 in mymacro)
*** no file argument for @image (l. 477 in mymacro)
-** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg) (l. 477 in mymacro)
-** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden) (l. 477 in mymacro)
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _"
%@:}.jpg)
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden
ext} address@hidden)
*** '}' without opening '{' before:
*** '}' without opening '{' before: after
*** '{' without macro. Before:
Index: texi2html/Tests/test.sh
diff -u texi2html/Tests/test.sh:1.60 texi2html/Tests/test.sh:1.61
--- texi2html/Tests/test.sh:1.60 Wed May 17 01:51:45 2006
+++ texi2html/Tests/test.sh Mon May 29 23:36:10 2006
@@ -44,7 +44,7 @@
echo " !!! no file $dir/$texi_file"
return
fi
-(cd $dir && rm $basename.html ${basename}_???.html ${basename}_??.html
${basename}_?.html ${basename}_frame.html ${basename}_toc_frame.html
${basename}_???.htm ${basename}_??.htm ${basename}_?.htm ${basename}_????.png
${basename}_???.png ${basename}_??.png ${basename}_?.png ${basename}_l2h.css
${basename}_l2h.html ${basename}_l2h_images.* ${basename}_l2h_labels.pl
${basename}_l2h.tex $basename.passfirst $basename.passtexi $basename.2
l2h_cache.pm) > /dev/null 2>&1
+(cd $dir && rm $basename.html ${basename}_???.html ${basename}_??.html
${basename}_?.html ${basename}_frame.html ${basename}_toc_frame.html
${basename}_???.htm ${basename}_??.htm ${basename}_?.htm ${basename}_????.png
${basename}_???.png ${basename}_??.png ${basename}_?.png ${basename}_l2h.css
${basename}_l2h.html ${basename}_l2h_images.* ${basename}_l2h_labels.pl
${basename}_l2h.tex $basename.passfirst $basename.passtexi $basename.2
${basename}-l2h_cache.pm) > /dev/null 2>&1
export T2H_HOME=../..
# generate a dump of the first pass
@@ -221,6 +221,7 @@
#test_texi floats float.texi "-split chapter -node-files -top-file index.html"
0 texi float_node_files
test_texi floats float_with_at_commands.texi
test_texi floats float_copying.texi "-split chapter -output ."
+test_texi floats caption_not_closed.texi
test_texi formatting clean.texi
test_texi formatting formatting.texi
test_texi formatting formatting.texi "-split section -nosec-nav -nonumber
-toc-links -def-table -short-ref -no-separated-footnotes -prefix
exotic_formatting -output ." 0 texi exotic_formatting
@@ -253,7 +254,10 @@
test_texi formatting comments.texi
test_texi formatting comments.texi "-init redefine_need.init -prefix
comments_redefined" 0 texi comments_redefined
test_texi formatting equivalent_nodes.texi "" 5
+test_texi formatting bad_nesting.texi
test_texi formatting formats_not_closed.texi "" 12
+test_texi formatting commands_not_closed.texi "" 4
+test_texi formatting math_not_closed.texi "--l2h --iftex" 8
test_texi formatting not_closed_in_menu.texi "" 7
test_texi formatting macro_call_not_closed.texi "" 1
test_texi formatting macro_def_not_closed.texi "" 1
Index: texi2html/doc/texi2html.html
diff -u texi2html/doc/texi2html.html:1.39 texi2html/doc/texi2html.html:1.40
--- texi2html/doc/texi2html.html:1.39 Wed May 17 01:51:46 2006
+++ texi2html/doc/texi2html.html Mon May 29 23:36:10 2006
@@ -31,7 +31,7 @@
permission notice may be stated in a translation approved
by the Free Software Foundation.
-->
-<!-- Created on May, 17 2006 by texi2html @PACKAGE_VERSION@ -->
+<!-- Created on May, 30 2006 by texi2html 1.77 -->
<!--
Written by: Lionel Cons <address@hidden> (original author)
Karl Berry <address@hidden>
@@ -48,7 +48,7 @@
<meta name="keywords" content="Texi2HTML – Texinfo to HTML v1.77:
Texi2HTML">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
-<meta name="Generator" content="texi2html @PACKAGE_VERSION@">
+<meta name="Generator" content="texi2html 1.77">
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css">
<!--
@@ -3212,7 +3212,7 @@
</td></tr>
<tr><td align="left" valign="top"><a href="#SEC65">7.8 Commands used for
centering and flushing of text</a></td><td> </td><td align="left"
valign="top"> <code>@center</code>, <code>@flushleft</code>…
</td></tr>
-<tr><td align="left" valign="top"><a href="#SEC66">7.9 Formatting or not a
paragraph or a preformatted region</a></td><td> </td><td
align="left" valign="top">
+<tr><td align="left" valign="top"><a href="#SEC66">7.9 Formatting (or not) a
paragraph and a preformatted region</a></td><td> </td><td
align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top"><a href="#SEC69">7.10 Formatting of complex
formats (<code>@example</code>,
<code>@display</code>…)</a></td><td> </td><td align="left"
valign="top"> <code>@example</code>, <code>@display</code>…
</td></tr>
@@ -3702,21 +3702,45 @@
<acronym>HTML</acronym> element.
</p></dd></dl>
-<p>The formatting of <code>@image</code> is controlled by:
+<p>To customize the images produced by <code>@image</code>, the first
possibility
+is to modify the <a name="IDX212"></a>
+<code>@IMAGE_EXTENSIONS</code>, which holds a list of
+filename extensions for image files. It is also possible to redefine
+the function used to determine the filename of the image:
+</p>
+<dl>
+<dt><u>Function Reference:</u> $filename <b>image_files</b><i> $basename
$extension</i>
+<a name="IDX213"></a>
+</dt>
+<dd><p><var>$basename</var> is the first <code>@image</code> argument,
<var>$extension</var>
+is the corresponding <code>@image</code> argument. This function reference
+should return an array of image filenames without path that the main
+program should look for.
+</p></dd></dl>
+
+<p>Last, it is possible to control
+the formatting of <code>@image</code> by redefining:
</p><dl>
-<dt><u>Function Reference:</u> $image <b>image</b><i> $file_path $basename
$preformatted $file_name $alt_text</i>
-<a name="IDX212"></a>
+<dt><u>Function Reference:</u> $image <b>image</b><i> $file_path $basename
$preformatted $file_name $alt_text $width $height $raw_alt $extension
$working_dir $file_path</i>
+<a name="IDX214"></a>
</dt>
<dd><p><var>$file_path</var> is the image file name with the path,
<var>$basename</var>
the file name without extension. <var>$preformatted</var> is true if the image
appears in preformatted text. <var>$file_name</var> is the file name without
path
-but with extension. <var>$alt_text</var> is the alternate text, it may be
undefined.
+but with extension. <var>$alt_text</var> is the alternate text, it may be
+undefined. <var>$width</var> and <var>$height</var> are the corresponding
arguments
+of <code>@image</code>, <var>$raw_alt</var> is the unmodified alt argument of
+<code>@image</code> and <var>$extension</var> holds the corresponding
+<code>@image</code> argument.
+<var>$working_dir</var> is the path to working dir relative to the output
+directory. <var>$file_path</var> is the file name relative to the
+<var>$working_dir</var>.
</p></dd></dl>
<p>The formatting of <code>@sp</code> is controlled by:
</p><dl>
<dt><u>Function Reference:</u> $sp <b>sp</b><i> $number $preformatted</i>
-<a name="IDX213"></a>
+<a name="IDX215"></a>
</dt>
<dd><p><var>$number</var> is the numeric argument of <code>@sp</code>.
<var>$preformatted</var> is true if the <code>@sp</code> appears in
preformatted text.
@@ -3725,7 +3749,7 @@
<p>The formatting of <code>@acronym</code> and <code>@abbr</code> is
controlled by:
</p><dl>
<dt><u>Function Reference:</u> $acronym <b>acronym_like</b><i> $acronym_texi
$acronym_text $with_explanation address@hidden $explanation_text
$explanation_simply_formatted</i>
-<a name="IDX214"></a>
+<a name="IDX216"></a>
</dt>
<dd><p><var>$acronym_texi</var> is the acronym argument with texinfo
@-commands,
<var>$acronym_text</var> is formatted.
@@ -3733,13 +3757,13 @@
<p>The other arguments are related with
the explanation, the second arg of the acronym. <var>$with_explanation</var>
is
true if the second argument of the acronym command is present. If an
-explanation exists, coming from previous <code>@acronym</code> or as an arg of
this
-command, the other args are defined: <var>address@hidden</var> is a
+explanation exists, coming from previous <code>@acronym</code> or as an arg of
+this command, the other args are defined: <var>address@hidden</var> is a
reference on an array containing the simply fomatted explanation lines,
<var>$explanation_text</var> is the explanation text formatted,
-<var>$explanation_simply_formatted</var> is the explanation with a light
formatting,
-unabling in <acronym>HTML</acronym> (or <acronym>XML</acronym>) the
explanation to be in an
-attribute.
+<var>$explanation_simply_formatted</var> is the explanation with a light
+formatting, unabling in <acronym>HTML</acronym> (or <acronym>XML</acronym>)
the explanation
+to be in an attribute.
</p></dd></dl>
<hr size="6">
@@ -3774,7 +3798,7 @@
<dl>
<dt><u>Function Reference:</u> $processed_text <b>normal_text</b><i> $text
$in_raw_text $in_preformatted $in_code $command_stack </i>
-<a name="IDX215"></a>
+<a name="IDX217"></a>
</dt>
<dd><p>The function processes <var>$text</var> and returns
<var>$processed_text</var>.
The other arguments give some information about the context of the text.
@@ -3800,7 +3824,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $protected_text <b>protect_text</b><i> $text</i>
-<a name="IDX216"></a>
+<a name="IDX218"></a>
</dt>
<dd><p>The function processes the unprotected text <var>$text</var> and returns
the resulting protected text <var>$protected_text</var>.
@@ -3811,7 +3835,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $resulting_text <b>empty_line</b><i>
$empty_line $state</i>
-<a name="IDX217"></a>
+<a name="IDX219"></a>
</dt>
<dd><p>This function processes an <var>$empty_line</var> and returns the
resulting
text <var>$resulting_text</var>. <var>$state</var> is a structure that holds
informations
@@ -3846,13 +3870,13 @@
various places, at the page footers, on the help page, for special
section headings, buttons alt text and so on. These strings are
customizable. The string chosen depends on the language of the
-document (set by <a name="IDX218"></a>
-‘<samp>--lang</samp>’, <a name="IDX219"></a>
+document (set by <a name="IDX220"></a>
+‘<samp>--lang</samp>’, <a name="IDX221"></a>
<code>$LANG</code> or
<code>@documentlanguage</code>). This is the basis for internationalization
as it allows for strings translations.
</p>
-<p>The strings are found in a hash reference, <a name="IDX220"></a>
+<p>The strings are found in a hash reference, <a name="IDX222"></a>
<code>$LANGUAGES</code>.
Each key is a language code. The associated value is also a hash
reference. The key is an english string and the associated value
@@ -3938,7 +3962,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $href <b>external_href</b><i> $node
$node_identifier $xml_node_identifier $manual_file_name</i>
-<a name="IDX221"></a>
+<a name="IDX223"></a>
</dt>
<dd><p><var>$node</var> is the node name, with @-commands.
<var>$node_identifer</var> is the
node name mapped to an identifier acceptable as a file name.
@@ -3955,7 +3979,7 @@
<dl>
<dt><u>Function Reference:</u> $text <b>external_ref</b><i> $command $section
$book $node_and_file $href $cross_ref_name</i>
-<a name="IDX222"></a>
+<a name="IDX224"></a>
</dt>
<dd><p>This function formats a reference to an external texinfo manual.
The <var>$command</var> is the ref command (<code>ref</code>,
<code>xref</code> or
@@ -3996,7 +4020,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $text <b>internal_ref</b><i> $command $href
$short_name $name $is_section</i>
-<a name="IDX223"></a>
+<a name="IDX225"></a>
</dt>
<dd><p>This function formats a reference to a node in the current manual.
The <var>$command</var> is the ref command (<code>ref</code>,
<code>xref</code> or
@@ -4036,17 +4060,17 @@
<p>When a command controlling the alignement of text is used
(<code>@center</code>,
<code>@flushleft</code> and <code>@flushright</code>), the main program takes
care of opening and closing paragraphs. The alignement commands are the
-key of the <a name="IDX224"></a>
+key of the <a name="IDX226"></a>
<code>%paragraph_style</code> hash.
The value is used in the function doing the formatting of the paragraphs.
-See section <a href="#SEC66">Formatting or not a paragraph or a preformatted
region</a>.
+See section <a href="#SEC66">Formatting (or not) a paragraph and a
preformatted region</a>.
</p>
<p>A function references allows for a customization of the formatting of the
text
appearing in the command block.
</p>
<dl>
<dt><u>Function Reference:</u> $result <b>paragraph_style_command</b><i>
$command $text</i>
-<a name="IDX225"></a>
+<a name="IDX227"></a>
</dt>
<dd><p><var>$command</var> is the command name, <var>$text</var> is the text
appearing within
the command. This function returns a formatted text.
@@ -4072,7 +4096,7 @@
<td valign="middle" align="left">[<a href="#SEC99"
title="Index">Index</a>]</td>
<td valign="middle" align="left">[<a href="#SEC_About" title="About (help)"> ?
</a>]</td>
</tr></table>
-<h2 class="section"> 7.9 Formatting or not a paragraph or a preformatted
region </h2>
+<h2 class="section"> 7.9 Formatting (or not) a paragraph and a preformatted
region </h2>
<table class="menu" border="0" cellspacing="0">
@@ -4109,7 +4133,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $paragraph_text <b>paragraph</b><i> $text
$alignement $index $formatting_command $formatting_command_formatted
\$paragraph_number $format $item_number $enumerate_style $number
$command_stack_at_end $command_stack_at_begin</i>
-<a name="IDX226"></a>
+<a name="IDX228"></a>
</dt>
<dd><p>This function formats a paragraph. <var>$text</var> is the text of the
paragraph,
<var>$alignement</var> is the empty string when no alignement command has
@@ -4144,7 +4168,7 @@
<dl>
<dt><u>Function Reference:</u> $preformatted_text <b>preformatted</b><i> $text
$style $region_name $formatting_command $formatting_command_formatted
\$preformatted_number $format $item_number $enumerate_style $number
$command_stack_at_end $command_stack_at_begin</i>
-<a name="IDX227"></a>
+<a name="IDX229"></a>
</dt>
<dd><p>This function formats a preformatted region. <var>$text</var> is the
text of the
preformatted region, <var>$style</var> is the css style associated with that
@@ -4206,7 +4230,7 @@
<p>It is possible to avoid that a format closes the previous paragraph or
preformatted region and reopens one, by putting the format command in a
-hash, <a name="IDX228"></a>
+hash, <a name="IDX230"></a>
<code>%format_in_paragraph</code> with a true value.
</p>
<hr size="6">
@@ -4232,12 +4256,12 @@
<p>Here we see how a whole complex format is formatted. For the formatting
-of the text, see <a href="#SEC66">Formatting or not a paragraph or a
preformatted region</a>.
+of the text, see <a href="#SEC66">Formatting (or not) a paragraph and a
preformatted region</a>.
</p>
<p>The formatting of the complex formats is ultimately controlled by a
function, however the default for this function uses a hash reference and
changing the hash reference values should be enough in most cases. This
-hash reference is called <a name="IDX229"></a>
+hash reference is called <a name="IDX231"></a>
<code>$complex_format_map</code>. It has a key for each
of the complex format commands (<code>example</code>,
<code>smallexample</code>,
<code>lisp</code>, <code>smalllisp</code>, <code>display</code>,
<code>smalldisplay</code>,
@@ -4264,7 +4288,7 @@
</dl>
<p>The enclosed text will be formatted as described in
-<a href="#SEC66">Formatting or not a paragraph or a preformatted region</a>,
and the name of the complex
+<a href="#SEC66">Formatting (or not) a paragraph and a preformatted
region</a>, and the name of the complex
format will be available to the function formatting the text.
</p>
<p>If you aren't satisfied with this scheme, you can redefine the following
@@ -4272,10 +4296,10 @@
</p>
<dl>
<dt><u>Function Reference:</u> $complex_format_text <b>complex_format</b><i>
$format_name $preformatted_text</i>
-<a name="IDX230"></a>
+<a name="IDX232"></a>
</dt>
<dd><p><var>$format_name</var> is the complex format name,
<var>$preformatted_text</var> is the
-text allready formatted as described in <a href="#SEC66">Formatting or not a
paragraph or a preformatted region</a>.
+text allready formatted as described in <a href="#SEC66">Formatting (or not) a
paragraph and a preformatted region</a>.
This function returns the whole complex format.
</p></dd></dl>
@@ -4344,7 +4368,7 @@
<p>The default is to apply the command to the text item, however it is possible
to avoid it.
-The hash <a name="IDX231"></a>
+The hash <a name="IDX233"></a>
<code>%special_list_commands</code> has an entry for each of the
format command. Each of these entries is a hash reference. If a formatting
command is a key of the hash reference, then the formatting command is not
@@ -4366,7 +4390,7 @@
<dd><p>The items of lists are formatted using the following function reference:
</p><dl>
<dt><u>Function Reference:</u> $list_item <b>list_item</b><i> $text $format
$command $formatted_command $item_number $enumerate_style $number</i>
-<a name="IDX232"></a>
+<a name="IDX234"></a>
</dt>
<dd><p>This function formats the text between <code>@item</code> commands.
<var>$text</var>
is the text corresponding with the item. <var>$format</var> is the type of
format,
@@ -4389,7 +4413,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $table_item <b>table_item</b><i> $item_text
$index_label_text $format $command $formatted_command $command_stack</i>
-<a name="IDX233"></a>
+<a name="IDX235"></a>
</dt>
<dd><p>This function is used to format the text on the <code>@item</code> line.
<var>$text_item</var> is the text line. In case there is an index entry
@@ -4406,7 +4430,7 @@
<dl>
<dt><u>Function Reference:</u> $table_line <b>table_line</b><i> $text</i>
-<a name="IDX234"></a>
+<a name="IDX236"></a>
</dt>
<dd><p>This function is used to format the text on the lines following
the <code>@item</code> line. <var>$text</var> is the corresponding text.
@@ -4419,7 +4443,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $multitable_cell <b>cell</b><i> $text</i>
-<a name="IDX235"></a>
+<a name="IDX237"></a>
</dt>
<dd><p>This function is used to format the text of a multitable cell, the text
following a <code>@item</code> or a <code>@tab</code>.
@@ -4428,10 +4452,10 @@
<dl>
<dt><u>Function Reference:</u> $multitable_row <b>row</b><i> $text
$item_command</i>
-<a name="IDX236"></a>
+<a name="IDX238"></a>
</dt>
<dd><p>This function is used to format a multitable row. <var>$text</var> is
-the row text, with cells allready formatted with the <a name="IDX237"></a>
+the row text, with cells allready formatted with the <a name="IDX239"></a>
<code>$cell</code>
function reference. <var>$item_command</var> is the command used to introduce
the row, such that it is possible to distinguish between <code>@item</code> and
@@ -4461,7 +4485,7 @@
</tr></table>
<h3 class="subsection"> 7.11.2 Formatting of a whole table or list </h3>
-<p>If the Texinfo command is a key of the <a name="IDX238"></a>
+<p>If the Texinfo command is a key of the <a name="IDX240"></a>
<code>%format_map</code>, the associated
value is used to specify the formatting of the construct, otherwise a function
is called.
@@ -4488,19 +4512,19 @@
</p>
<dl>
<dt><u>Function Reference:</u> $whole_table_list <b>table_list</b><i> $command
$text</i>
-<a name="IDX239"></a>
+<a name="IDX241"></a>
</dt>
<dd><p><var>$command</var> is the Texinfo command name, <var>$text</var> is
the formatted
items.
</p></dd></dl>
-<p>If you still want to use <a name="IDX240"></a>
+<p>If you still want to use <a name="IDX242"></a>
<code>%format_map</code> but differently from
the default, it is possible to redefine the following function reference:
</p>
<dl>
<dt><u>Function Reference:</u> $whole_table_list <b>format</b><i> $command
$format $text</i>
-<a name="IDX241"></a>
+<a name="IDX243"></a>
</dt>
<dd><p><var>$command</var> is the @-command, <var>$format</var> is the entry
associated with
<var>$command</var> in <code>%format_map</code>. <var>$text</var> is the
formatted items.
@@ -4560,7 +4584,7 @@
</tr></table>
<h3 class="subsection"> 7.12.1 Customizing the interpretation of a definition
line </h3>
-<p>The keys of the hash <a name="IDX242"></a>
+<p>The keys of the hash <a name="IDX244"></a>
<code>%def_map</code> are definition command names.
There are two types of entries:
</p>
@@ -4626,10 +4650,10 @@
<p>Four functions are used when formatting a definition command:
</p>
<dl compact="compact">
-<dt> category name</dt>
+<dt> <strong>category name</strong></dt>
<dd><dl>
<dt><u>Function Reference:</u> $category <b>definition_category</b><i>
$category_or_name $class $style</i>
-<a name="IDX243"></a>
+<a name="IDX245"></a>
</dt>
<dd><p>This function precise a category or an index entry name associating a
class
<var>$class</var> (if given) with <var>$category_or_name</var>. The
<var>$style</var> of the
@@ -4637,13 +4661,13 @@
for type.
</p></dd></dl>
</dd>
-<dt> formatting of the definition line</dt>
+<dt> <strong>formatting of the definition line</strong></dt>
<dd><dl>
<dt><u>Function Reference:</u> $line <b>def_line</b><i> $category $name $type
$arguments $index_label</i>
-<a name="IDX244"></a>
+<a name="IDX246"></a>
</dt>
<dd><p>This function formats the definition line. <var>$category</var> is the
category
-formatted with <a name="IDX245"></a>
+formatted with <a name="IDX247"></a>
<code>$definition_category</code>, <var>$name</var>, <var>$type</var> and
<var>arguments</var> are the element of the definition line.
<var>$index_label</var> is
the text inserted at the place where an index entry appears.
@@ -4651,19 +4675,19 @@
</p></dd></dl>
</dd>
-<dt> definition text</dt>
+<dt> <strong>definition text</strong></dt>
<dd><dl>
<dt><u>Function Reference:</u> $definition_text <b>def_item</b><i> $text</i>
-<a name="IDX246"></a>
+<a name="IDX248"></a>
</dt>
<dd><p>This function formats the definition text, <var>$text</var>.
</p></dd></dl>
</dd>
-<dt> the whole definition</dt>
+<dt> <strong>the whole definition</strong></dt>
<dd><dl>
<dt><u>Function Reference:</u> $definition <b>def</b><i> $text</i>
-<a name="IDX247"></a>
+<a name="IDX249"></a>
</dt>
<dd><p>This function formats the whole definition. The definition line and
text
formatted by the above functions are in <var>$text</var>.
@@ -4697,7 +4721,7 @@
with the corresponding function reference:
</p><dl>
<dt><u>Function Reference:</u> $heading_text <b>heading</b><i>
\%element_reference</i>
-<a name="IDX248"></a>
+<a name="IDX250"></a>
</dt>
<dd><p>The <var>\%element_reference</var> is a reference on a hash
corresponding
with the sectioning element. The following keys are of interest:
@@ -4726,7 +4750,7 @@
with the following function reference (called for headings and nodes):
</p><dl>
<dt><u>Function Reference:</u> $result_texi <b>heading_texi</b><i>
$heading_command $heading $number</i>
-<a name="IDX249"></a>
+<a name="IDX251"></a>
</dt>
<dd><p><var>$heading_command</var> is the sectioning @-command of that
heading.
<var>$heading</var> is the texinfo for that heading. <var>$number</var> is the
@@ -4761,20 +4785,20 @@
</p>
<dl>
<dt><u>Function Reference:</u> $raw_region <b>raw</b><i> $command $text</i>
-<a name="IDX250"></a>
+<a name="IDX252"></a>
</dt>
<dd><p><var>$command</var> is the command name, <var>$text</var> is the raw
text.
</p></dd></dl>
<p>If LaTeX2HTML is used, <code>@tex</code> regions are handled differently,
-from within the main program.
+(see section <a href="#SEC90">Bypassing normal formatting</a>).
</p>
<p>The <code>@cartouche</code> command formatting is controlled by the
function reference:
</p>
<dl>
<dt><u>Function Reference:</u> $cartouche <b>cartouche</b><i> $text</i>
-<a name="IDX251"></a>
+<a name="IDX253"></a>
</dt>
<dd><p><var>$text</var> is the text appearing within the cartouche.
</p></dd></dl>
@@ -4785,7 +4809,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $prepended_string
<b>quotation_prepend_text</b><i> $text</i>
-<a name="IDX252"></a>
+<a name="IDX254"></a>
</dt>
<dd><p><var>$text</var> is the argument of the quotation with @-commands not
interpreted. This function
@@ -4797,7 +4821,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $quotation <b>quotation</b><i> $quotation_text
$argument_text $argument_text_texi</i>
-<a name="IDX253"></a>
+<a name="IDX255"></a>
</dt>
<dd><p><var>$quotation_text</var> is the quotation text, formatted, with the
text
prepended by the function above. <var>$argument_text</var> is the argument
@@ -4836,7 +4860,7 @@
part of the menu;
</li></ul>
-<p>The simple formatting is used if <a name="IDX254"></a>
+<p>The simple formatting is used if <a name="IDX256"></a>
<code>$SIMPLE_MENU</code> is true,
otherwise the format with tables is used (this is the default).
</p>
@@ -4937,7 +4961,7 @@
different parts of a menu:
</p><dl>
<dt><u>Function Reference:</u> $link <b>menu_link</b><i> $section \%state
$href $node $name $ending</i>
-<a name="IDX255"></a>
+<a name="IDX257"></a>
</dt>
<dd><p><var>$section</var> is the section name corresponding with the link,
<var>$href</var>
is the link hypertextual reference. <var>$href</var> may be absent.
<var>\%state</var>
@@ -4950,16 +4974,17 @@
</p></dd></dl>
<dl>
-<dt><u>Function Reference:</u> $description <b>menu_description</b><i>
$description_text \%state</i>
-<a name="IDX256"></a>
+<dt><u>Function Reference:</u> $description <b>menu_description</b><i>
$description_text \%state $element_text</i>
+<a name="IDX258"></a>
</dt>
<dd><p><var>$description_text</var> is the text of the menu description.
<var>\%state</var>
-should be used similarly than for the menu link.
+should be used similarly than for the menu link. <var>$element_text</var>
+is the heading of the element associated with the node.
</p></dd></dl>
<dl>
<dt><u>Function Reference:</u> $menu_comment <b>menu_comment</b><i> $text</i>
-<a name="IDX257"></a>
+<a name="IDX259"></a>
</dt>
<dd><p><var>$text</var> is the text of the menu comment. It is always in a
preformatted
environment.
@@ -4972,7 +4997,7 @@
specially, but treated like normal text.
</p><dl>
<dt><u>Function Reference:</u> $link <b>simple_menu_link</b><i> $link_text
$href $node $name $ending</i>
-<a name="IDX258"></a>
+<a name="IDX260"></a>
</dt>
<dd><p><var>$link_text</var> is the text corresponding with the link name,
<var>$href</var>
is the link hypertextual reference.
@@ -5033,25 +5058,25 @@
<h3 class="subsection"> 7.15.4 The formatting of the menu in a table </h3>
<p>In the default case, the name of the section corresponding with the
-node is used instead of the node name. If <a name="IDX259"></a>
+node is used instead of the node name. If <a name="IDX261"></a>
<code>$NODE_NAME_IN_MENU</code> is
-true, however, node names are used. If <a name="IDX260"></a>
+true, however, node names are used. If <a name="IDX262"></a>
<code>$AVOID_MENU_REDUNDANCY</code>
is true and menu entry equal menu description the description isn't printed.
This is the default. Likewise, if node or section name equal entry name,
do not print entry name.
</p>
-<p>A symbol, <a name="IDX261"></a>
+<p>A symbol, <a name="IDX263"></a>
<code>$MENU_SYMBOL</code> is put at the beginning of menu entries
when the node name is used. The default is
‘<samp>&bull;</samp>’.
-If <a name="IDX262"></a>
+If <a name="IDX264"></a>
<code>$UNNUMBERED_SYMBOL_IN_MENU</code> is true it is
also put at the beginning of unnumbered section names. This is not
done by default.
</p>
<p>The menu comments are considered to be preformatted text. The style
associated with this preformatted text is determined by
-<a name="IDX263"></a>
+<a name="IDX265"></a>
<code>$MENU_PRE_STYLE</code>. Default is ‘<samp>font-family:
serif</samp>’.
The css class associated with menu comments is <code>menu-comments</code>.
</p>
@@ -5060,7 +5085,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $menu <b>menu</b><i> $menu_components_text</i>
-<a name="IDX264"></a>
+<a name="IDX266"></a>
</dt>
<dd><p><var>$menu_components_text</var> is the formatted menu components text,
obtained
as explained above.
@@ -5128,7 +5153,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $target <b>index_entry_label</b><i> $identifier
$preformatted</i>
-<a name="IDX265"></a>
+<a name="IDX267"></a>
</dt>
<dd><p><var>$identifier</var> should be used to create
a target for links (typically associated with a name or id
@@ -5166,7 +5191,7 @@
and should be used to jump directly to a letter entry. Indices lists
may be split across pages, thus the different letters may appear on different
files. The number of index entries appearing on each page is determined
-by a variable <a name="IDX266"></a>
+by a variable <a name="IDX268"></a>
<code>$SPLIT_INDEX</code> if set. The default is to split
indices after 100 entries.
</p>
@@ -5177,7 +5202,7 @@
<dt> <em>formatting of a letter in a summary</em></dt>
<dd><dl>
<dt><u>Function Reference:</u> $letter <b>summary_letter</b><i> $letter $file
$identifier</i>
-<a name="IDX267"></a>
+<a name="IDX269"></a>
</dt>
<dd><p>This function is used to format a letter appearing in a summary,
refering
to a letter entry in the index list.
@@ -5192,7 +5217,7 @@
<dt> <em>formatting of a summary</em></dt>
<dd><dl>
<dt><u>Function Reference:</u> $summary <b>index_summary</b><i> address@hidden
address@hidden</i>
-<a name="IDX268"></a>
+<a name="IDX270"></a>
</dt>
<dd><p><var>address@hidden</var> and <var>address@hidden</var> contain the
formatted summary letters, formatted with the above function.
@@ -5202,7 +5227,7 @@
<dt> <em>formatting of an index entry</em></dt>
<dd><dl>
<dt><u>Function Reference:</u> $entry <b>index_entry</b><i> $entry_href
$entry_text $section_href $section_heading</i>
-<a name="IDX269"></a>
+<a name="IDX271"></a>
</dt>
<dd><p><var>$entry_href</var> is a reference to the place where the index
entry
appeared, <var>$entry_text</var> is the corresponding text.
<var>$section_href</var>
@@ -5214,7 +5239,7 @@
<dt> <em>formatting of letter entry</em></dt>
<dd><dl>
<dt><u>Function Reference:</u> $letter_entry <b>index_letter</b><i> $letter
$identifier $index_entries_text</i>
-<a name="IDX270"></a>
+<a name="IDX272"></a>
</dt>
<dd><p>This function formats a letter entry, consisting in all the index
entries
beginning with this letter. <var>$letter</var> is the letter,
<var>$identifier</var>
@@ -5227,7 +5252,7 @@
<dt> <em>formatting of whole index</em></dt>
<dd><dl>
<dt><u>Function Reference:</u> $index <b>print_index</b><i> $index_text
$index_name</i>
-<a name="IDX271"></a>
+<a name="IDX273"></a>
</dt>
<dd><p><var>$index_text</var> is the text of all the index entries grouped by
letter
appearing in that page formatted as above. <var>index_name</var> is the name of
@@ -5336,7 +5361,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> (address@hidden, address@hidden)
<b>caption_shortcaption</b><i> \%float address@hidden address@hidden</i>
-<a name="IDX272"></a>
+<a name="IDX274"></a>
</dt>
<dd><p><var>\%float</var> is the structure defined above.
<var>address@hidden</var> and
<var>address@hidden</var> are references on arrays containing the
@@ -5349,7 +5374,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $text <b>float</b><i> $float_text \%float
$caption_text $shortcaption_text</i>
-<a name="IDX273"></a>
+<a name="IDX275"></a>
</dt>
<dd><p><var>$float_text</var> is the text appearing within the
<code>@float</code>, formatted.
<var>\%float</var> is still the structure defined above.
<var>$caption_text</var> and
@@ -5384,7 +5409,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $style_texi_returned
<b>listoffloats_style</b><i> $style_texi</i>
-<a name="IDX274"></a>
+<a name="IDX276"></a>
</dt>
<dd><p><var>$style_texi</var> is the <code>@listoffloats</code> argument with
texinfo
@-commands kept. It is possible to make changes to the <var>$style_texi</var>
and
@@ -5398,7 +5423,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $float_style_texi_returned
<b>listoffloats_float_style</b><i> $style_texi \%float</i>
-<a name="IDX275"></a>
+<a name="IDX277"></a>
</dt>
<dd><p><var>$style_texi</var> is the style, and <var>\%float</var> is the
structure described
above. This function reference returns a style to be formatted in the
@@ -5407,7 +5432,7 @@
<dl>
<dt><u>Function Reference:</u> $caption_texi_returned
<b>listoffloats_caption</b><i> \%float</i>
-<a name="IDX276"></a>
+<a name="IDX278"></a>
</dt>
<dd><p><var>\%float</var> is the structure described
above. This function reference returns a caption to be formatted in the
@@ -5418,7 +5443,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $listoffloats_entry
<b>listoffloats_entry</b><i> $style_texi \%float $float_style $caption $href</i>
-<a name="IDX277"></a>
+<a name="IDX279"></a>
</dt>
<dd><p><var>$style_texi</var> is the style with @-commands,
<var>$float_style</var> is the
style returned by the above function and formatted. <var>$caption</var> is the
@@ -5431,7 +5456,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $listoffloats <b>listoffloats</b><i>
$style_texi $style address@hidden</i>
-<a name="IDX278"></a>
+<a name="IDX280"></a>
</dt>
<dd><p><var>$style_texi</var> is the style with @-commands, <var>$style</var>
is the
style returned by the above function and formatted. The array reference
@@ -5470,7 +5495,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> (address@hidden $text_for_document)
<b>foot_line_and_ref</b><i> $number_in_doc $number_in_page $footnote_id
$place_id $document_file $footnote_file address@hidden \%state</i>
-<a name="IDX279"></a>
+<a name="IDX281"></a>
</dt>
<dd><p><var>$number_in_doc</var> is the footnote number in the whole document,
<var>$number_in_page</var> is the footnote number in the current page.
@@ -5503,7 +5528,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> <b>foot_section</b><i> address@hidden</i>
-<a name="IDX280"></a>
+<a name="IDX282"></a>
</dt>
<dd><p>This function formats a group of footnotes. <var>address@hidden</var>
is a
reference on an array holding the lines of all the footnote entries
@@ -5548,7 +5573,7 @@
the interface to LaTeX2HTML
(see section <a href="#SEC16">Expanding <code>@tex</code> and
<code>@math</code> regions using LaTeX2HTML</a>), and the examples are taken
from that use.
</p>
-<p>The @-commands that are keys of the <a name="IDX281"></a>
+<p>The @-commands that are keys of the <a name="IDX283"></a>
<code>%command_handler</code> hash
are collected in the collecting pass and expanded in the expansion
pass using user defined functions. The associated value is a reference on
@@ -5576,7 +5601,7 @@
</p>
<dl>
<dt><u>Function Reference:</u> $status
<b>$command_handler{'$command'}</b><i>->{'init'} $command $text $count</i>
-<a name="IDX282"></a>
+<a name="IDX284"></a>
</dt>
<dd><p><var>$command</var> is the @-command name, <var>$text</var> is the text
appearing
within the @-command. <var>$count</var> is a counter counting how many times
@@ -5587,7 +5612,7 @@
<dl>
<dt><u>Function Reference:</u> $result
<b>$command_handler{'$command'}</b><i>->{'expand'} $command $count $state
$text</i>
-<a name="IDX283"></a>
+<a name="IDX285"></a>
</dt>
<dd><p><var>$command</var> is the @-command name, <var>$count</var> is a
counter counting
how many times this @-command appeared. <var>$state</var> is a reference on a
@@ -5598,20 +5623,20 @@
<p>There are three places for user defined functions, associated with arrays:
</p><dl compact="compact">
<dt> <code>@command_handler_init</code>
-<a name="IDX284"></a>
+<a name="IDX286"></a>
</dt>
<dd><p>The function references in that array are called before the collecting
pass.
At that time the information available is essentially the file names.
</p></dd>
<dt> <code>@command_handler_process</code>
-<a name="IDX285"></a>
+<a name="IDX287"></a>
</dt>
<dd><p>The function references in that array are called between the collecting
pass and the expansion pass. At that time all the special @-commands
have been collected as explained above but no output has been produced.
</p></dd>
<dt> <code>@command_handler_finish</code>
-<a name="IDX286"></a>
+<a name="IDX288"></a>
</dt>
<dd><p>he function references in that array are called after the end of the
output generation.
@@ -5667,7 +5692,7 @@
same function than the one used for unknown commands.
</p>
<p>Those special commands without braces are the key of a hash:
-<a name="IDX287"></a>
+<a name="IDX289"></a>
<code>%misc_command</code>. The associated value is a reference on a
hash enabling to set the properties of these commands. The
keys of this hash reference is the name of a property, the value
@@ -5721,17 +5746,17 @@
<p>Commands which don't appear in the hashes
-<a name="IDX288"></a>
-<code>%simple_map</code>, <a name="IDX289"></a>
-<code>%simple_map_pre</code>,
<a name="IDX290"></a>
+<code>%simple_map</code>, <a name="IDX291"></a>
+<code>%simple_map_pre</code>,
+<a name="IDX292"></a>
<code>%simple_map_texi</code> and <code>%misc_command</code>, or that appear in
<code>%misc_command</code> but with <code>keep</code> true are processed by
the
following function reference:
</p>
<dl>
<dt><u>Function Reference:</u> ($result_line, $result, $result_text, $message)
<b>unknown</b><i> $command $line</i>
-<a name="IDX291"></a>
+<a name="IDX293"></a>
</dt>
<dd><p><var>$command</var> is the @-command, <var>$line</var> is the line
following the
<var>$command</var>. <var>$result</var> is a boolean. If it is true then the
other return
@@ -5743,16 +5768,16 @@
</p></dd></dl>
<p>Commands with braces not specified above
-nor in <a name="IDX292"></a>
-<code>%style_map</code>, <a name="IDX293"></a>
+nor in <a name="IDX294"></a>
+<code>%style_map</code>, <a name="IDX295"></a>
<code>%style_map_pre</code> and
-<a name="IDX294"></a>
+<a name="IDX296"></a>
<code>%style_map_texi</code> are processed
by the following function reference
</p>
<dl>
<dt><u>Function Reference:</u> ($result, $result_text, $message)
<b>unknown_style</b><i> $command $text</i>
-<a name="IDX295"></a>
+<a name="IDX297"></a>
</dt>
<dd><p><var>$command</var> is the @-command, <var>$text</var> is the text
appearing within
the braces (allready formatted). <var>$result</var> is a boolean. If it is
true then
@@ -6049,8 +6074,10 @@
changed completely. There
are much more arguments to give informations about the context, and
normal_text now does more text manipulation.
-</li><li> New argument for image
-(the alt text).
+</li><li> New arguments for image the alt text, the height and width,
+the path to working dir and the path to image file relative
+to working dir. More image formatting is
+done in the formatting function.
</li><li> New argument for empty_line.
</li><li> End of line removal is done in formatting function of definition line
formatting.
@@ -6289,7 +6316,7 @@
<tr><td></td><td valign="top"><a
href="#IDX65">l2h-l2h=<var>program</var></a></td><td valign="top"><a
href="#SEC16">4.7 Expanding <code>@tex</code> and <code>@math</code> regions
using LaTeX2HTML</a></td></tr>
<tr><td></td><td valign="top"><a href="#IDX67">l2h-tmp</a></td><td
valign="top"><a href="#SEC16">4.7 Expanding <code>@tex</code> and
<code>@math</code> regions using LaTeX2HTML</a></td></tr>
<tr><td></td><td valign="top"><a href="#IDX75">lang</a></td><td
valign="top"><a href="#SEC17">4.8 Use initialization files for fine
tuning</a></td></tr>
-<tr><td></td><td valign="top"><a href="#IDX218">lang</a></td><td
valign="top"><a href="#SEC61">7.6 Customizing strings written by
<code>texi2html</code></a></td></tr>
+<tr><td></td><td valign="top"><a href="#IDX220">lang</a></td><td
valign="top"><a href="#SEC61">7.6 Customizing strings written by
<code>texi2html</code></a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX31">lang=<var>lang</var></a></td><td valign="top"><a
href="#SEC13">4.4 Command line options related to Texinfo language
features</a></td></tr>
<tr><td colspan="3"> <hr></td></tr>
<tr><th><a name="SEC99_7">M</a></th><td></td><td></td></tr>
@@ -6402,16 +6429,16 @@
<tr><td></td><td valign="top"><a
href="#IDX167"><code>$AFTER_TOC_LINES</code></a></td><td valign="top"><a
href="#SEC46">6.11.1.2 Table of contents and Short table of
contents</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX81"><code>$anchor</code></a></td><td valign="top"><a
href="#SEC20">5.2 Redefining functions in initialization files</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX210"><code>$anchor</code></a></td><td valign="top"><a
href="#SEC59">7.4 Formatting of special simple commands</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX260"><code>$AVOID_MENU_REDUNDANCY</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX262"><code>$AVOID_MENU_REDUNDANCY</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX164"><code>$BEFORE_OVERVIEW</code></a></td><td valign="top"><a
href="#SEC46">6.11.1.2 Table of contents and Short table of
contents</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX166"><code>$BEFORE_TOC_LINES</code></a></td><td valign="top"><a
href="#SEC46">6.11.1.2 Table of contents and Short table of
contents</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX86"><code>$BIG_RULE</code></a></td><td valign="top"><a
href="#SEC24">6.2 Page layout and navigation panel overview</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX120"><code>$BODYTEXT</code></a></td><td valign="top"><a
href="#SEC37">6.5 Preparing the output</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX137"><code>$BODYTEXT</code></a></td><td valign="top"><a
href="#SEC40">6.8 Customizing the page header</a></td></tr>
-<tr><td></td><td valign="top"><a href="#IDX237"><code>$cell</code></a></td><td
valign="top"><a href="#SEC71">7.11.1 Formatting individual table and list
items</a></td></tr>
+<tr><td></td><td valign="top"><a href="#IDX239"><code>$cell</code></a></td><td
valign="top"><a href="#SEC71">7.11.1 Formatting individual table and list
items</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX206"><code>$CLOSE_QUOTE_SYMBOL</code></a></td><td valign="top"><a
href="#SEC56">7.3.1 An interface for commands formatting with a hash
reference</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX208"><code>$CLOSE_QUOTE_SYMBOL</code></a></td><td valign="top"><a
href="#SEC57">7.3.2 An interface for commands formatting with a
string</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX229"><code>$complex_format_map</code></a></td><td valign="top"><a
href="#SEC69">7.10 Formatting of complex formats (<code>@example</code>,
<code>@display</code>…)</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX231"><code>$complex_format_map</code></a></td><td valign="top"><a
href="#SEC69">7.10 Formatting of complex formats (<code>@example</code>,
<code>@display</code>…)</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX126"><code>$CSS_LINES</code></a></td><td valign="top"><a
href="#SEC39">6.7 Customizing the <code>texi2html</code> css lines</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX128"><code>$CSS_LINES</code></a></td><td valign="top"><a
href="#SEC39">6.7 Customizing the <code>texi2html</code> css lines</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX130"><code>$CSS_LINES</code></a></td><td valign="top"><a
href="#SEC39">6.7 Customizing the <code>texi2html</code> css lines</a></td></tr>
@@ -6419,7 +6446,7 @@
<tr><td></td><td valign="top"><a
href="#IDX57"><code>$DEF_TABLE</code></a></td><td valign="top"><a
href="#SEC15">4.6 Customizing the <acronym>HTML</acronym> and text
style</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX80"><code>$DEFAULT_ENCODING</code></a></td><td valign="top"><a
href="#SEC19">5.1 Setting the encodings</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX84"><code>$DEFAULT_RULE</code></a></td><td valign="top"><a
href="#SEC24">6.2 Page layout and navigation panel overview</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX245"><code>$definition_category</code></a></td><td valign="top"><a
href="#SEC75">7.12.2 Customization of the definition formatting</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX247"><code>$definition_category</code></a></td><td valign="top"><a
href="#SEC75">7.12.2 Customization of the definition formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX162"><code>$DO_CONTENTS</code></a></td><td valign="top"><a
href="#SEC46">6.11.1.2 Table of contents and Short table of
contents</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX163"><code>$DO_SCONTENTS</code></a></td><td valign="top"><a
href="#SEC46">6.11.1.2 Table of contents and Short table of
contents</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX48"><code>$DOCTYPE</code></a></td><td valign="top"><a
href="#SEC15">4.6 Customizing the <acronym>HTML</acronym> and text
style</a></td></tr>
@@ -6440,15 +6467,15 @@
<tr><td></td><td valign="top"><a
href="#IDX68"><code>$L2H_TMP</code></a></td><td valign="top"><a
href="#SEC16">4.7 Expanding <code>@tex</code> and <code>@math</code> regions
using LaTeX2HTML</a></td></tr>
<tr><td></td><td valign="top"><a href="#IDX32"><code>$LANG</code></a></td><td
valign="top"><a href="#SEC13">4.4 Command line options related to Texinfo
language features</a></td></tr>
<tr><td></td><td valign="top"><a href="#IDX74"><code>$LANG</code></a></td><td
valign="top"><a href="#SEC17">4.8 Use initialization files for fine
tuning</a></td></tr>
-<tr><td></td><td valign="top"><a href="#IDX219"><code>$LANG</code></a></td><td
valign="top"><a href="#SEC61">7.6 Customizing strings written by
<code>texi2html</code></a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX220"><code>$LANGUAGES</code></a></td><td valign="top"><a
href="#SEC61">7.6 Customizing strings written by
<code>texi2html</code></a></td></tr>
+<tr><td></td><td valign="top"><a href="#IDX221"><code>$LANG</code></a></td><td
valign="top"><a href="#SEC61">7.6 Customizing strings written by
<code>texi2html</code></a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX222"><code>$LANGUAGES</code></a></td><td valign="top"><a
href="#SEC61">7.6 Customizing strings written by
<code>texi2html</code></a></td></tr>
<tr><td></td><td valign="top"><a
href="#SEC93"><code>$LANGUAGES</code></a></td><td valign="top"><a
href="#SEC93">A.1 Translating strings</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX263"><code>$MENU_PRE_STYLE</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX261"><code>$MENU_SYMBOL</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX265"><code>$MENU_PRE_STYLE</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX263"><code>$MENU_SYMBOL</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX85"><code>$MIDDLE_RULE</code></a></td><td valign="top"><a
href="#SEC24">6.2 Page layout and navigation panel overview</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX25"><code>$NODE_FILES</code></a></td><td valign="top"><a
href="#SEC11">4.2 Setting output file and directory names</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX188"><code>$NODE_FILES</code></a></td><td valign="top"><a
href="#SEC50">6.12 Customizing the file names</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX259"><code>$NODE_NAME_IN_MENU</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX261"><code>$NODE_NAME_IN_MENU</code></a></td><td valign="top"><a
href="#SEC82">7.15.4 The formatting of the menu in a table</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX61"><code>$NUMBER_SECTIONS</code></a></td><td valign="top"><a
href="#SEC15">4.6 Customizing the <acronym>HTML</acronym> and text
style</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX205"><code>$OPEN_QUOTE_SYMBOL</code></a></td><td valign="top"><a
href="#SEC56">7.3.1 An interface for commands formatting with a hash
reference</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX207"><code>$OPEN_QUOTE_SYMBOL</code></a></td><td valign="top"><a
href="#SEC57">7.3.2 An interface for commands formatting with a
string</a></td></tr>
@@ -6477,10 +6504,10 @@
<tr><td></td><td valign="top"><a
href="#IDX59"><code>$SHORT_REF</code></a></td><td valign="top"><a
href="#SEC15">4.6 Customizing the <acronym>HTML</acronym> and text
style</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX19"><code>$SHORTEXTN</code></a></td><td valign="top"><a
href="#SEC11">4.2 Setting output file and directory names</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX30"><code>$SHOW_MENU</code></a></td><td valign="top"><a
href="#SEC12">4.3 Specifying which regions get expanded</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX254"><code>$SIMPLE_MENU</code></a></td><td valign="top"><a
href="#SEC78">7.15 Menu formatting</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX256"><code>$SIMPLE_MENU</code></a></td><td valign="top"><a
href="#SEC78">7.15 Menu formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX83"><code>$SMALL_RULE</code></a></td><td valign="top"><a
href="#SEC24">6.2 Page layout and navigation panel overview</a></td></tr>
<tr><td></td><td valign="top"><a href="#IDX8"><code>$SPLIT</code></a></td><td
valign="top"><a href="#SEC10">4.1 Specifying where to split the generated
document</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX266"><code>$SPLIT_INDEX</code></a></td><td valign="top"><a
href="#SEC85">7.16.2 Customizing the formatting of index lists</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX268"><code>$SPLIT_INDEX</code></a></td><td valign="top"><a
href="#SEC85">7.16.2 Customizing the formatting of index lists</a></td></tr>
<tr><td></td><td valign="top"><a
href="#SEC93"><code>$T2H_OBSOLETE_STRINGS</code></a></td><td valign="top"><a
href="#SEC93">A.1 Translating strings</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX99"><code>$Texi2HTML::NODE{Next}</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX114"><code>$Texi2HTML::OVERVIEW</code></a></td><td valign="top"><a
href="#SEC35">Section lines</a></td></tr>
@@ -6496,7 +6523,7 @@
<tr><td></td><td valign="top"><a
href="#IDX168"><code>$TOC_LIST_STYLE</code></a></td><td valign="top"><a
href="#SEC46">6.11.1.2 Table of contents and Short table of
contents</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX21"><code>$TOP_FILE</code></a></td><td valign="top"><a
href="#SEC11">4.2 Setting output file and directory names</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX87"><code>$TOP_HEADING</code></a></td><td valign="top"><a
href="#SEC25">Element labels</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX262"><code>$UNNUMBERED_SYMBOL_IN_MENU</code></a></td><td
valign="top"><a href="#SEC82">7.15.4 The formatting of the menu in a
table</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX264"><code>$UNNUMBERED_SYMBOL_IN_MENU</code></a></td><td
valign="top"><a href="#SEC82">7.15.4 The formatting of the menu in a
table</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX51"><code>$USE_ISO</code></a></td><td valign="top"><a
href="#SEC15">4.6 Customizing the <acronym>HTML</acronym> and text
style</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX10"><code>$USE_NODES</code></a></td><td valign="top"><a
href="#SEC10">4.1 Specifying where to split the generated document</a></td></tr>
<tr><td></td><td valign="top"><a href="#IDX149"><code>$USER</code></a></td><td
valign="top"><a href="#SEC42">6.10 Customizing the page footer</a></td></tr>
@@ -6511,34 +6538,34 @@
<tr><td></td><td valign="top"><a
href="#IDX123"><code>%BUTTONS_GOTO</code></a></td><td valign="top"><a
href="#SEC37">6.5 Preparing the output</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX103"><code>%BUTTONS_NAME</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX122"><code>%BUTTONS_NAME</code></a></td><td valign="top"><a
href="#SEC37">6.5 Preparing the output</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX281"><code>%command_handler</code></a></td><td valign="top"><a
href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX283"><code>%command_handler</code></a></td><td valign="top"><a
href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX125"><code>%css_map</code></a></td><td valign="top"><a
href="#SEC39">6.7 Customizing the <code>texi2html</code> css lines</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX127"><code>%css_map</code></a></td><td valign="top"><a
href="#SEC39">6.7 Customizing the <code>texi2html</code> css lines</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX242"><code>%def_map</code></a></td><td valign="top"><a
href="#SEC74">7.12.1 Customizing the interpretation of a definition
line</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX228"><code>%format_in_paragraph</code></a></td><td valign="top"><a
href="#SEC68">7.9.2 Avoiding paragraphs in formats</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX238"><code>%format_map</code></a></td><td valign="top"><a
href="#SEC72">7.11.2 Formatting of a whole table or list</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX244"><code>%def_map</code></a></td><td valign="top"><a
href="#SEC74">7.12.1 Customizing the interpretation of a definition
line</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX230"><code>%format_in_paragraph</code></a></td><td valign="top"><a
href="#SEC68">7.9.2 Avoiding paragraphs in formats</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX240"><code>%format_map</code></a></td><td valign="top"><a
href="#SEC72">7.11.2 Formatting of a whole table or list</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX242"><code>%format_map</code></a></td><td valign="top"><a
href="#SEC72">7.11.2 Formatting of a whole table or list</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX110"><code>%main::value</code></a></td><td valign="top"><a
href="#SEC34">Flags</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX111"><code>%main::value</code></a></td><td valign="top"><a
href="#SEC34">Flags</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX287"><code>%misc_command</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX289"><code>%misc_command</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX100"><code>%NAVIGATION_TEXT</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX121"><code>%NAVIGATION_TEXT</code></a></td><td valign="top"><a
href="#SEC37">6.5 Preparing the output</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX224"><code>%paragraph_style</code></a></td><td valign="top"><a
href="#SEC65">7.8 Commands used for centering and flushing of text</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX226"><code>%paragraph_style</code></a></td><td valign="top"><a
href="#SEC65">7.8 Commands used for centering and flushing of text</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX102"><code>%PASSIVE_ICONS</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX199"><code>%pre_map</code></a></td><td valign="top"><a
href="#SEC54">7.2 Customizing the formatting of commands without
argument</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX195"><code>%simple_map</code></a></td><td valign="top"><a
href="#SEC54">7.2 Customizing the formatting of commands without
argument</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX288"><code>%simple_map</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX290"><code>%simple_map</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX196"><code>%simple_map_pre</code></a></td><td valign="top"><a
href="#SEC54">7.2 Customizing the formatting of commands without
argument</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX289"><code>%simple_map_pre</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX291"><code>%simple_map_pre</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX197"><code>%simple_map_texi</code></a></td><td valign="top"><a
href="#SEC54">7.2 Customizing the formatting of commands without
argument</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX290"><code>%simple_map_texi</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX231"><code>%special_list_commands</code></a></td><td valign="top"><a
href="#SEC71">7.11.1 Formatting individual table and list items</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX292"><code>%simple_map_texi</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX233"><code>%special_list_commands</code></a></td><td valign="top"><a
href="#SEC71">7.11.1 Formatting individual table and list items</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX201"><code>%style_map</code></a></td><td valign="top"><a
href="#SEC55">7.3 Customizing accent, style and other simple
commands</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX292"><code>%style_map</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX294"><code>%style_map</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX202"><code>%style_map_pre</code></a></td><td valign="top"><a
href="#SEC55">7.3 Customizing accent, style and other simple
commands</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX293"><code>%style_map_pre</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX295"><code>%style_map_pre</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX203"><code>%style_map_texi</code></a></td><td valign="top"><a
href="#SEC55">7.3 Customizing accent, style and other simple
commands</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX294"><code>%style_map_texi</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX296"><code>%style_map_texi</code></a></td><td valign="top"><a
href="#SEC91">7.20 Customizing other commands, and unknown
commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX106"><code>%Texi2HTML::HREF</code></a></td><td valign="top"><a
href="#SEC31">6.4.1 Accessing elements informations</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX105"><code>%Texi2HTML::NAME</code></a></td><td valign="top"><a
href="#SEC31">6.4.1 Accessing elements informations</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX108"><code>%Texi2HTML::NO_TEXI</code></a></td><td valign="top"><a
href="#SEC31">6.4.1 Accessing elements informations</a></td></tr>
@@ -6549,11 +6576,12 @@
<tr><td colspan="3"> <hr></td></tr>
<tr><th><a name="SEC100_2">@</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX97"><code>@CHAPTER_BUTTONS</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX286"><code>@command_handler_finish</code></a></td><td valign="top"><a
href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX284"><code>@command_handler_init</code></a></td><td valign="top"><a
href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#IDX285"><code>@command_handler_process</code></a></td><td
valign="top"><a href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX288"><code>@command_handler_finish</code></a></td><td valign="top"><a
href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX286"><code>@command_handler_init</code></a></td><td valign="top"><a
href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX287"><code>@command_handler_process</code></a></td><td
valign="top"><a href="#SEC90">7.19 Bypassing normal formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX53"><code>@CSS_FILES</code></a></td><td valign="top"><a
href="#SEC15">4.6 Customizing the <acronym>HTML</acronym> and text
style</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX28"><code>@EXPAND</code></a></td><td valign="top"><a
href="#SEC12">4.3 Specifying which regions get expanded</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#IDX212"><code>@IMAGE_EXTENSIONS</code></a></td><td valign="top"><a
href="#SEC59">7.4 Formatting of special simple commands</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX38"><code>@INCLUDE_DIRS</code></a></td><td valign="top"><a
href="#SEC13">4.4 Command line options related to Texinfo language
features</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX98"><code>@MISC_BUTTONS</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
<tr><td></td><td valign="top"><a
href="#IDX94"><code>@NODE_FOOTER_BUTTONS</code></a></td><td valign="top"><a
href="#SEC28">6.3.2 Specifying the buttons formatting</a></td></tr>
@@ -6797,7 +6825,7 @@
<li><a name="TOC60" href="#SEC64">7.7.2 Reference to an internal
node</a></li>
</ul></li>
<li><a name="TOC61" href="#SEC65">7.8 Commands used for centering and
flushing of text</a></li>
- <li><a name="TOC62" href="#SEC66">7.9 Formatting or not a paragraph or a
preformatted region</a>
+ <li><a name="TOC62" href="#SEC66">7.9 Formatting (or not) a paragraph and
a preformatted region</a>
<ul class="toc">
<li><a name="TOC63" href="#SEC67">7.9.1 Paragraph and preformatted
region formatting</a></li>
<li><a name="TOC64" href="#SEC68">7.9.2 Avoiding paragraphs in
formats</a></li>
@@ -6888,7 +6916,7 @@
</tr></table>
<h1>About This Document</h1>
<p>
- This document was generated by <em>Patrice Dumas</em> on <em>May, 17
2006</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html
@PACKAGE_VERSION@</em></a>.
+ This document was generated by <em>Patrice Dumas</em> on <em>May, 30
2006</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html
1.77</em></a>.
</p>
<p>
The buttons in the navigation panels have the following meaning:
@@ -6990,7 +7018,7 @@
<hr size="1">
<p>
<font size="-1">
- This document was generated by <em>Patrice Dumas</em> on <em>May, 17
2006</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html
@PACKAGE_VERSION@</em></a>.
+ This document was generated by <em>Patrice Dumas</em> on <em>May, 30
2006</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html
1.77</em></a>.
</font>
<br>
Index: texi2html/doc/texi2html.texi
diff -u texi2html/doc/texi2html.texi:1.50 texi2html/doc/texi2html.texi:1.51
--- texi2html/doc/texi2html.texi:1.50 Wed May 17 01:51:46 2006
+++ texi2html/doc/texi2html.texi Mon May 29 23:36:10 2006
@@ -2379,12 +2379,32 @@
@acronym{HTML} element.
@end deftypefn
-The formatting of @code{@@image} is controlled by:
address@hidden {Function Reference} $image image $file_path $basename
$preformatted $file_name $alt_text
+To customize the images produced by @code{@@image}, the first possibility
+is to modify the @variable{@@IMAGE_EXTENSIONS}, which holds a list of
+filename extensions for image files. It is also possible to redefine
+the function used to determine the filename of the image:
+
address@hidden {Function Reference} $filename image_files $basename $extension
address@hidden is the first @code{@@image} argument, @var{$extension}
+is the corresponding @code{@@image} argument. This function reference
+should return an array of image filenames without path that the main
+program should look for.
address@hidden deftypefn
+
+Last, it is possible to control
+the formatting of @code{@@image} by redefining:
address@hidden {Function Reference} $image image $file_path $basename
$preformatted $file_name $alt_text $width $height $raw_alt $extension
$working_dir $file_path
@var{$file_path} is the image file name with the path, @var{$basename}
the file name without extension. @var{$preformatted} is true if the image
appears in preformatted text. @var{$file_name} is the file name without path
-but with extension. @var{$alt_text} is the alternate text, it may be undefined.
+but with extension. @var{$alt_text} is the alternate text, it may be
+undefined. @var{$width} and @var{$height} are the corresponding arguments
+of @code{@@image}, @var{$raw_alt} is the unmodified alt argument of
address@hidden@@image} and @var{$extension} holds the corresponding
address@hidden@@image} argument.
address@hidden is the path to working dir relative to the output
+directory. @var{$file_path} is the file name relative to the
address@hidden
@end deftypefn
The formatting of @code{@@sp} is controlled by:
@@ -2401,13 +2421,13 @@
The other arguments are related with
the explanation, the second arg of the acronym. @var{$with_explanation} is
true if the second argument of the acronym command is present. If an
-explanation exists, coming from previous @code{@@acronym} or as an arg of this
-command, the other args are defined: @var{\@@explanation_lines} is a
+explanation exists, coming from previous @code{@@acronym} or as an arg of
+this command, the other args are defined: @var{\@@explanation_lines} is a
reference on an array containing the simply fomatted explanation lines,
@var{$explanation_text} is the explanation text formatted,
address@hidden is the explanation with a light formatting,
-unabling in @acronym{HTML} (or @acronym{XML}) the explanation to be in an
-attribute.
address@hidden is the explanation with a light
+formatting, unabling in @acronym{HTML} (or @acronym{XML}) the explanation
+to be in an attribute.
@end deftypefn
@c --------------------------------------------------------
@@ -2600,7 +2620,7 @@
@c --------------------------------------------------------
@node Paragraph and preformatted region
address@hidden Formatting or not a paragraph or a preformatted region
address@hidden Formatting (or not) a paragraph and a preformatted region
@menu
@@ -2960,7 +2980,7 @@
Four functions are used when formatting a definition command:
address@hidden @asis
address@hidden @strong
@item category name
@deftypefn {Function Reference} $category definition_category
$category_or_name $class $style
This function precise a category or an index entry name associating a class
@@ -3037,7 +3057,7 @@
@end deftypefn
If address@hidden is used, @code{@@tex} regions are handled differently,
-from within the main program.
+(@pxref{Bypassing normal formatting}).
The @code{@@cartouche} command formatting is controlled by the
function reference:
@@ -3171,9 +3191,10 @@
in general @samp{::} followed by some spaces.
@end deftypefn
address@hidden {Function Reference} $description menu_description
$description_text \%state
address@hidden {Function Reference} $description menu_description
$description_text \%state $element_text
@var{$description_text} is the text of the menu description. @var{\%state}
-should be used similarly than for the menu link.
+should be used similarly than for the menu link. @var{$element_text}
+is the heading of the element associated with the node.
@end deftypefn
@deftypefn {Function Reference} $menu_comment menu_comment $text
@@ -3889,8 +3910,10 @@
changed completely. There
are much more arguments to give informations about the context, and
normal_text now does more text manipulation.
address@hidden New argument for image
-(the alt text).
address@hidden New arguments for image the alt text, the height and width,
+the path to working dir and the path to image file relative
+to working dir. More image formatting is
+done in the formatting function.
@item New argument for empty_line.
@item End of line removal is done in formatting function of definition line
formatting.
Index: texi2html/texi2html.init
diff -u texi2html/texi2html.init:1.105 texi2html/texi2html.init:1.106
--- texi2html/texi2html.init:1.105 Wed May 17 01:51:45 2006
+++ texi2html/texi2html.init Mon May 29 23:36:10 2006
@@ -12,7 +12,7 @@
# Afterwards, load the file with command-line
# option -init-file <your_init_file>
#
-# $Id: texi2html.init,v 1.105 2006/05/17 01:51:45 pertusus Exp $
+# $Id: texi2html.init,v 1.106 2006/05/29 23:36:10 pertusus Exp $
######################################################################
# The following variables can also be set by command-line options
@@ -487,6 +487,7 @@
'Last', '',
);
address@hidden = ('png','jpg','jpeg','gif');
$init_out = \&t2h_default_init_out;
$finish_out = \&t2h_default_finish_out;
@@ -3158,6 +3159,7 @@
$preformatted = \&t2h_default_preformatted;
$foot_line_and_ref = \&t2h_default_foot_line_and_ref;
$foot_section = \&t2h_default_foot_section;
+$image_files = \&t2h_default_image_files;
$image = \&t2h_default_image;
$address = \&t2h_default_address;
$index_entry_label = \&t2h_default_index_entry_label;
@@ -3660,6 +3662,13 @@
return "<tr><td align=\"left\"
valign=\"top\">$entry</td><td> </td>";
}
+sub simplify_text($)
+{
+ my $text = shift;
+ $text =~ s/[^\w]//og;
+ return $text;
+}
+
# formats a menu entry description, ie the text appearing after the node
# specification in a menu entry an spanning until there is another
# menu entry, an empty line or some text at the very beginning of the line
@@ -3668,16 +3677,22 @@
# arguments:
# the description text
# the state. See menu_entry.
-sub t2h_default_menu_description($$)
+# the heading of the element associated with the node.
+sub t2h_default_menu_description($$$)
{
my $text = shift;
my $state = shift;
+ my $element_text = shift;
return $text if ($SIMPLE_MENU);
#print STDERR "MENU_DESCRIPTION\n";
if ($state->{'preformatted'})
{
return main::do_preformatted($text, $state) . '</td></tr>';
}
+ elsif ($AVOID_MENU_REDUNDANCY)
+ {
+ $text = '' if (simplify_text($element_text) eq simplify_text($text));
+ }
return "<td align=\"left\" valign=\"top\">$text</td></tr>\n";
}
@@ -4370,6 +4385,20 @@
return $lines;
}
+sub t2h_default_image_files($$)
+{
+ my $base = shift;
+ my $extension = shift;
+ my @files = ();
+ return @files if (!defined($base) or ($base eq ''));
+ push @files,"$base.$extension" if (defined($extension) and ($extension ne
''));
+ foreach my $ext (@IMAGE_EXTENSIONS)
+ {
+ push @files, "$base.$ext";
+ }
+ return @files;
+}
+
# format an image
#
# arguments:
@@ -4378,19 +4407,44 @@
# a boolean true if we are in a preformatted format
# image file name without path
# alt text
-sub t2h_default_image($$$$$)
+# width
+# height
+# raw alt
+# extension
+# path to working dir
+# path to file relative from working dir
+sub t2h_default_image($$$$$$$$$$$)
{
- my $file = shift;
- my $base = shift;
- my $preformatted = shift;
- my $file_name = shift;
- my $alt = shift;
- $alt = &$protect_text($base) if (!defined($alt) or ($alt eq ''));
- return "[ $alt ]" if ($preformatted);
- # it is possible that $file_name is more correct as it allows the user
- # to chose the relative path.
- $file = &$protect_text($file);
- return "<img src=\"$file\" alt=\"$alt\">";
+ my $file = shift;
+ my $base = shift;
+ my $preformatted = shift;
+ my $file_name = shift;
+ my $alt = shift;
+ my $width = shift;
+ my $height = shift;
+ my $raw_alt = shift;
+ my $extension = shift;
+ my $working_dir = shift;
+ my $file_path = shift;
+
+ if (!defined($file_path) or $file_path eq '')
+ {
+ if (defined($extension) and $extension ne '')
+ {
+ $file = "$base.$extension";
+ }
+ else
+ {
+ $file = "$base.jpg";
+ }
+ main::echo_warn ("no image file for $base, (using $file)");
+ }
+ $alt = &$protect_text($base) if (!defined($alt) or ($alt eq ''));
+ return "[ $alt ]" if ($preformatted);
+ # it is possible that $file_name is more correct as it allows the user
+ # to chose the relative path.
+ $file = &$protect_text($file);
+ return "<img src=\"$file\" alt=\"$alt\">";
}
# address put in footer describing when was generated and who did the manual
Index: texi2html/texi2html.pl
diff -u texi2html/texi2html.pl:1.167 texi2html/texi2html.pl:1.168
--- texi2html/texi2html.pl:1.167 Wed May 17 01:51:45 2006
+++ texi2html/texi2html.pl Mon May 29 23:36:10 2006
@@ -59,7 +59,7 @@
#--##########################################################################
# CVS version:
-# $Id: texi2html.pl,v 1.167 2006/05/17 01:51:45 pertusus Exp $
+# $Id: texi2html.pl,v 1.168 2006/05/29 23:36:10 pertusus Exp $
# Homepage:
my $T2H_HOMEPAGE = "http://www.nongnu.org/texi2html/";;
@@ -298,6 +298,7 @@
@SECTION_BUTTONS
@SECTION_FOOTER_BUTTONS
@NODE_FOOTER_BUTTONS
address@hidden
);
# customization variables which may be guessed in the script
@@ -384,6 +385,7 @@
$foot_section
$address
$image
+$image_files
$index_entry_label
$index_entry
$index_letter
@@ -1458,8 +1460,8 @@
# specified for texinfo
sub cross_manual_links()
{
- print STDERR "# Doing ".scalar(keys(%nodes)) .
- " cross manual links\n" if ($T2H_DEBUG);
+ print STDERR "# Doing ".scalar(keys(%nodes))." cross manual links\n"
+ if ($T2H_DEBUG);
my $normal_text_kept = $Texi2HTML::Config::normal_text;
$::simple_map_texi_ref = \%cross_ref_simple_map_texi;
$::style_map_texi_ref = \%cross_ref_style_map_texi;
@@ -1469,6 +1471,7 @@
foreach my $key (keys(%nodes))
{
my $node = $nodes{$key};
+ #print STDERR "CROSS_MANUAL:$key,$node\n";
next if ($node->{'index_page'});
if (!defined($node->{'texi'}))
{
@@ -3194,13 +3197,13 @@
print STDERR "# Report (with texinfo file) if you want, otherwise
ignore that message.\n";
next unless ($state->{'bye'});
}
- push @lines, split_lines ($_);
+ push @lines, split_lines($_);
last if ($state->{'bye'});
}
# close stack at the end of pass texi
#print STDERR "close stack at the end of pass texi\n";
close_stack_texi_structure(\$text, address@hidden, $state,
$texi_line_number);
- push @lines, split_lines ($text);
+ push @lines, split_lines($text);
print STDERR "# end of pass texi\n" if $T2H_VERBOSE;
}
@@ -3394,12 +3397,12 @@
close_stack_texi_structure(\$text, address@hidden, $state,
$line_nr);
if (exists($state->{'region_lines'}))
{
- push
@{$region_lines{$state->{'region_lines'}->{'format'}}}, split_lines ($text);
+ push
@{$region_lines{$state->{'region_lines'}->{'format'}}}, split_lines($text);
close_region($state);
}
else
{
- push @doc_lines, split_lines ($text);
+ push @doc_lines, split_lines($text);
}
$text = '';
}
@@ -3615,11 +3618,11 @@
next if (!defined($_));
if ($state->{'region_lines'})
{
- push @{$region_lines{$state->{'region_lines'}->{'format'}}},
split_lines ($_);
+ push @{$region_lines{$state->{'region_lines'}->{'format'}}},
split_lines($_);
}
else
{
- push @doc_lines, split_lines ($_);
+ push @doc_lines, split_lines($_);
}
}
if (@stack)
@@ -3630,11 +3633,11 @@
if (exists($state->{'region_lines'}))
{
push @{$region_lines{$state->{'region_lines'}->{'format'}}},
- split_lines ($text);
+ split_lines($text);
}
else
{
- push @doc_lines, split_lines ($text);
+ push @doc_lines, split_lines($text);
}
}
}
@@ -3643,6 +3646,8 @@
}
# split line at end of line and put each resulting line in an array
+# FIXME there must be a more perlish way to do it... Not a big deal
+# as long as it work
sub split_lines($)
{
my $line = shift;
@@ -5852,7 +5857,7 @@
sub pass_text()
{
my %state;
- initialise_state (\%state);
+ initialise_state(\%state);
my @stack;
my $text;
my $doc_nr;
@@ -6923,6 +6928,10 @@
return '' if ($state->{'multiple_pass'});
$anchor = normalise_node($anchor);
+ if (!exists($nodes{$anchor}) or !defined($nodes{$anchor}->{'id'}))
+ {
+ print STDERR "Bug: unknown anchor `$anchor'\n";
+ }
return &$Texi2HTML::Config::anchor($nodes{$anchor}->{'id'});
}
@@ -7214,13 +7223,6 @@
}
return '';
}
-# if ($style eq 'tex')
-# {
- # add space to the end -- tex(i2dvi) does this, as well
- #return (l2h_ToLatex($text . " "));
-# return (Texi2HTML::LaTeX2HTML::to_latex($style,$text));
-# }
-
}
sub do_insertcopying($)
@@ -7469,10 +7471,11 @@
if (defined($Texi2HTML::Config::def_map{$format}))
{
- close_stack($text, $stack, $state, $line_nr, undef, 'deff_item')
+ close_stack($text, $stack, $state, $line_nr, undef, 'deff_item')
unless ($format_ref->{'format'} eq 'deff_item');
add_prev($text, $stack,
&$Texi2HTML::Config::def_item($format_ref->{'text'}));
$format_ref = pop @$stack; # pop deff
+ ######################################### debug
if (!defined($format_ref->{'format'}) or
!defined($Texi2HTML::Config::def_map{$format_ref->{'format'}}))
{
print STDERR "Bug: not a def* under deff_item\n";
@@ -7480,6 +7483,7 @@
dump_stack($text, $stack, $state);
pop @$stack;
}
+ ######################################### end debug
elsif ($format_ref->{'format'} ne $format)
{
$format_mismatch = 1;
@@ -7493,20 +7497,17 @@
}
elsif ($format eq 'float')
{
- if (!defined($state->{'float'}))
- {
- $format_mismatch = 1;
- echo_warn ("Waiting for address@hidden $format_ref->{'format'},
found address@hidden $format ", $line_nr);
- }
- else
+ unless (defined($state->{'float'}))
{
- my ($caption_lines, $shortcaption_lines) =
&$Texi2HTML::Config::caption_shortcaption($state->{'float'});
- my ($caption_text, $shortcaption_text);
- $caption_text = substitute_text(duplicate_state($state),
@$caption_lines) if (defined($caption_lines));
- $shortcaption_text = substitute_text(duplicate_state($state),
@$shortcaption_lines) if (defined($shortcaption_lines));
- add_prev($text, $stack,
&$Texi2HTML::Config::float($format_ref->{'text'}, $state->{'float'},
$caption_text, $shortcaption_text));
- delete $state->{'float'};
+ print STDERR "Bug: state->{'float'} not defined in float\n";
+ next;
}
+ my ($caption_lines, $shortcaption_lines) =
&$Texi2HTML::Config::caption_shortcaption($state->{'float'});
+ my ($caption_text, $shortcaption_text);
+ $caption_text = substitute_text(duplicate_state($state),
@$caption_lines) if (defined($caption_lines));
+ $shortcaption_text = substitute_text(duplicate_state($state),
@$shortcaption_lines) if (defined($shortcaption_lines));
+ add_prev($text, $stack,
&$Texi2HTML::Config::float($format_ref->{'text'}, $state->{'float'},
$caption_text, $shortcaption_text));
+ delete $state->{'float'};
}
elsif (exists ($Texi2HTML::Config::complex_format_map->{$format}))
{
@@ -7530,7 +7531,8 @@
pop @{$state->{'table_list_stack'}};
#dump_stack($text, $stack, $state);
if ($format_ref->{'format'} ne $format)
- {
+ { # for example vtable closing a table. Cannot be known
+ # before if in a cell
$format_mismatch = 1;
echo_warn ("Waiting for address@hidden $format_ref->{'format'},
found address@hidden $format ", $line_nr);
}
@@ -7571,11 +7573,6 @@
}
elsif (exists($Texi2HTML::Config::format_map{$format}))
{
- if ($format_ref->{'format'} ne $format)
- { # FIXME hasn't that case been handled before ?
- $format_mismatch = 1;
- echo_warn ("Waiting for address@hidden $format_ref->{'format'},
found address@hidden $format ", $line_nr);
- }
add_prev($text, $stack, end_simple_format($format_ref->{'format'},
$format_ref->{'text'}));
}
else
@@ -7655,7 +7652,7 @@
}
}
-# Format menu link, the
+# Format menu link
sub do_menu_link($$;$)
{
my $state = shift;
@@ -7664,23 +7661,19 @@
my $menu_entry = $state->{'menu_entry'};
my $file = $state->{'element'}->{'file'};
my $node_name = normalise_node($menu_entry->{'node'});
-
+
my $substitution_state = duplicate_state($state);
my $name = substitute_line($menu_entry->{'name'}, $substitution_state);
my $node_formatted = substitute_line($menu_entry->{'node'},
$substitution_state);
- if (($name ne '') and !$state->{'preformatted'} and
$Texi2HTML::Config::AVOID_MENU_REDUNDANCY)
- { # FIXME ths should be configureable
- $name = '' unless (clean_text(remove_texi($menu_entry->{'text'}))
- ne clean_text(remove_texi($menu_entry->{'node'})))
- }
-
my $entry = '';
my $href;
my $element = $nodes{$node_name};
+
+ # menu points to an unknown node
if (!$element->{'seen'})
{
- if ($menu_entry->{'node'} =~ /^\s*\(.*\)/ or $novalidate)
+ if ($menu_entry->{'node'} =~ /^\s*\(.*\)/o or $novalidate)
{
# menu entry points to another info manual or invalid nodes
# and novalidate is set
@@ -7690,6 +7683,7 @@
else
{
echo_error ("Unknown node in menu entry `$node_name'", $line_nr);
+ # try to find an equivalent node
my @equivalent_nodes = equivalent_nodes($node_name);
my $node_seen;
foreach my $equivalent_node (@equivalent_nodes)
@@ -7707,7 +7701,8 @@
}
}
}
-
+
+ # the original node or an equivalent node was seen
if ($element->{'seen'})
{
if ($element->{'reference_element'})
@@ -7719,11 +7714,12 @@
$href = href($element, $file);
if (! $element->{'node'})
{
- $entry = $element->{'text'}; # this is the section name without
number
- #$entry = $element->{'name'} if
(!$Texi2HTML::Config::NUMBER_SECTIONS);
+ $entry = $element->{'text'}; # this is the section/node name
$entry = "$Texi2HTML::Config::MENU_SYMBOL $entry" if (($entry ne
'') and (!defined($element->{'number'}) or ($element->{'number'} =~ /^\s*$/))
and $Texi2HTML::Config::UNNUMBERED_SYMBOL_IN_MENU);
}
}
+ # save the element used for the href for the description
+ $menu_entry->{'menu_reference_element'} = $element;
return &$Texi2HTML::Config::menu_link($entry, $substitution_state, $href,
$node_formatted, $name, $menu_entry->{'ending'}) unless ($simple);
return &$Texi2HTML::Config::simple_menu_link($entry,
$state->{'preformatted'}, $href, $node_formatted, $name,
$menu_entry->{'ending'});
@@ -7734,42 +7730,21 @@
my $descr = shift;
my $state = shift;
my $menu_entry = $state->{'menu_entry'};
- my $node_name = normalise_node($menu_entry->{'node'});
- my $element = $nodes{$node_name};
- if ($element->{'seen'})
- {
- if ($element->{'reference_element'})
- {
- $element = $element->{'reference_element'};
- }
- if ($Texi2HTML::Config::AVOID_MENU_REDUNDANCY && ($descr ne '') &&
!$state->{'preformatted'})
- { # FIXME this should be configurable
- $descr = '' if (clean_text($element->{'text_nonumber'}) eq
clean_text($descr));
- }
- }
- return &$Texi2HTML::Config::menu_description($descr,
duplicate_state($state));
-}
+ my $element = $menu_entry->{'menu_reference_element'};
-sub clean_text($)
-{
- my $text = shift;
- $text =~ s/[^\w]//g;
- return $text;
+ return &$Texi2HTML::Config::menu_description($descr,
duplicate_state($state),$element->{'text_nonumber'});
}
sub do_xref($$$$)
{
my $macro = shift;
- #my $text = shift;
my $args = shift;
my $style_stack = shift;
my $state = shift;
my $line_nr = shift;
my $result = '';
- #$text =~ s/\s+/ /gos; # remove useless spaces and newlines
- #my @args = split(/\s*,\s*/, $text);
my @args = @$args;
#print STDERR "DO_XREF: $macro\n";
my $j = 0;
@@ -7778,7 +7753,6 @@
$args[$j] = normalise_space($args[$j]);
# print STDERR " ($j)$args[$j]\n";
}
- #$args[0] = normalise_space($args[0]);
$args[0] = '' if (!defined($args[0]));
my $node_texi = normalise_node($args[0]);
# a ref to a node in an info manual
@@ -7866,9 +7840,9 @@
else
{
echo_warn ("address@hidden not in text (in anchor, node,
section...)", $line_nr);
- # if Texi2HTML::Config::SPLIT the file is '' which ensures a
href with the file
- # name. if ! Texi2HTML::Config::SPLIT the 2 file will be the
same thus there
- # won't be the file name
+ # if Texi2HTML::Config::SPLIT the file is '' which ensures
+ # a href with the file name. if ! Texi2HTML::Config::SPLIT
+ # the 2 file will be the same thus there won't be the file name
$file = $element->{'file'} unless ($Texi2HTML::Config::SPLIT);
}
#print STDERR "SUBHREF in ref to node `$node_texi': $_";
@@ -8079,7 +8053,7 @@
$from_file = $state->{'element'}->{'file'};
}
my %state;
- initialise_state (\%state);
+ initialise_state(\%state);
if ($Texi2HTML::Config::SEPARATED_FOOTNOTES)
{
$state{'element'} = $footnote_element;
@@ -8121,42 +8095,29 @@
$args[3] = '' if (!defined($args[3]));
my $image;
my $file_name;
- $image = locate_include_file("$base.$args[4]") if (defined($args[4]) and
($args[4] ne ''));
- if (defined($image))
- {
- $file_name = "$base.$args[4]";
- }
- # FIXME there should instead be a list of file extension to search for,
- # set by the user.
- elsif ($image = locate_include_file("$base.png"))
+ my @file_names = &$Texi2HTML::Config::image_files($base,$args[4]);
+# $image = locate_include_file("$base.$args[4]") if ($args[4] ne '');
+ foreach my $file (@file_names)
{
- $file_name = "$base.png";
- }
- elsif ($image = locate_include_file("$base.jpg"))
- {
- $file_name = "$base.jpg";
- }
- elsif ($image = locate_include_file("$base.gif"))
- {
- $file_name = "$base.gif";
+ if ($image = locate_include_file($file))
+ {
+ $file_name = $file;
+ last;
+ }
}
- else
- {
- $image = "$base.jpg";
- $image = "$base.$args[4]" if (defined($args[4]) and ($args[4] ne ''));
- $file_name = $image;
- echo_warn ("no image file for $base, (using $image)", $line_nr);
- }
+ $image = '' if (!defined($image));
+
my $alt;
if ($args[3] =~ /\S/)
{
- # FIXME makeinfo don't do that. Maybe it should be remove_texi or
- # simple_format?
- $args[3] = do_text($args[3]);
- $alt = $args[3] if ($args[3] =~ /\S/);
+ # makeinfo don't do that. Maybe it should be remove_texi or
+ # simple_format... The raw alt is also given in argument
+ $alt = do_text($args[3]);
+ $alt = $alt if ($alt =~ /\S/);
}
return &$Texi2HTML::Config::image($path_to_working_dir . $image, $base,
- $state->{'preformatted'}, $file_name, $alt);
+ $state->{'preformatted'}, $file_name, $alt, $args[1], $args[2],
+ $args[3], $args[4], $path_to_working_dir, $image);
}
sub duplicate_state($)
@@ -8387,10 +8348,11 @@
}
else
{
- # If the $indexed_element element and the $index entry are on
the same
- # file the indexed_element is prefered. If they aren't on the
same file
- # the entry id is choosed as it means that the indexed_element
element
- # and the index entry are separated by a printindex.
+ # If the $indexed_element element and the $index entry are
+ # in the same file the indexed_element is prefered. If they
+ # aren't in the same file the entry id is choosed as it means
+ # that the indexed_element element and the index entry are
+ # separated by a printindex.
print STDERR "id undef ($entry) entry: $entry->{'entry'},
label: $indexed_element->{'text'}\n" if (!defined($entry->{'id'}));
if ($entry->{'file'} eq $indexed_element->{'file'})
{
@@ -8930,11 +8892,11 @@
return if ($state->{'ignored'});
if (s/^\s+([a-z]+)\s*,\s*([^\s]+)\s*,\s*([^\s]+)//)
{
- $info_enclose{$1} = [ $2, $3 ];
+ $info_enclose{$1} = [ $2, $3 ];
}
else
{
- echo_error("Bad address@hidden", $line_nr);
+ echo_error("Bad address@hidden", $line_nr);
}
return if (/^\s*$/);
s/^\s*//;
@@ -8997,11 +8959,11 @@
{ #FIXME with 'arg_expansion' should it be passed unmodified ?
if ($state->{'ignored'})
{
- s/^\s+(\w+)//;
+ s/^\s+(\w+)//;
}
else
{
- delete $macros->{$1} if (s/^\s+(\w+)//);
+ delete $macros->{$1} if (s/^\s+(\w+)//);
}
return if (/^\s*$/);
s/^\s*//;
@@ -9094,11 +9056,11 @@
my $result;
if (($style->{'style'} ne '') and
exists($info_enclose{$style->{'style'}}) and !$state->{'arg_expansion'})
{
- $result = $info_enclose{$style->{'style'}}->[0] .
$style->{'text'} . $info_enclose{$style->{'style'}}->[1];
+ $result = $info_enclose{$style->{'style'}}->[0] .
$style->{'text'} . $info_enclose{$style->{'style'}}->[1];
}
elsif ($style->{'style'} ne '')
{
- $result = '@' . $style->{'style'} . '{' .
$style->{'text'} . '}';
+ $result = '@' . $style->{'style'} . '{' .
$style->{'text'} . '}';
}
else
{
@@ -9136,6 +9098,69 @@
return 1;
}
+sub close_structure_command($$$$)
+{
+ my $cmd_ref = shift;
+ my $state = shift;
+ my $unclosed_commands = shift;
+ my $line_nr = shift;
+ my $result;
+
+ if ($cmd_ref->{'style'} eq 'anchor')
+ {
+ my $anchor = $cmd_ref->{'text'};
+ $anchor = normalise_node($anchor);
+ if ($nodes{$anchor})
+ {
+ echo_error ("Duplicate node for anchor found: $anchor", $line_nr);
+ return '';
+ }
+ $anchor_num++;
+ $nodes{$anchor} = { 'anchor' => 1, 'seen' => 1, 'texi' => $anchor,
'id' => 'ANC' . $anchor_num};
+ push @{$state->{'place'}}, $nodes{$anchor};
+ }
+ elsif ($cmd_ref->{'style'} eq 'footnote')
+ {
+ if ($Texi2HTML::Config::SEPARATED_FOOTNOTES)
+ {
+ $state->{'element'} = $state->{'footnote_element'};
+ $state->{'place'} = $state->{'footnote_place'};
+ }
+ }
+ elsif ($cmd_ref->{'style'} eq 'caption' or $cmd_ref->{'style'}
+ eq 'shortcaption' and $state->{'float'})
+ {
+ my @texi_lines = map {$_ = $_."\n"} split (/\n/, $cmd_ref->{'text'});
+ $state->{'float'}->{$cmd_ref->{'style'} . "_texi"} = address@hidden;
+ }
+ if (($cmd_ref->{'style'} eq 'titlefont') and ($cmd_ref->{'text'} =~ /\S/))
+ {
+ $state->{'element'}->{'titlefont'} = $cmd_ref->{'text'} unless
((exists($state->{'region_lines'}) and ($state->{'region_lines'}->{'format'} eq
'titlepage')) or defined($state->{'element'}->{'titlefont'})) ;
+ }
+ if (defined($Texi2HTML::Config::command_handler{$cmd_ref->{'style'}}))
+ {
+ $result = init_special($cmd_ref->{'style'},$cmd_ref->{'text'});
+ if ($unclosed_commands)
+ {
+ $result .= "\n"; # the end of line is eaten by init_special
+ echo_error("Closing specially handled address@hidden
$cmd_ref->{'style'}",$line_nr);
+ }
+ }
+ elsif ($cmd_ref->{'style'})
+ {
+ $result = '@' . $cmd_ref->{'style'} . '{' . $cmd_ref->{'text'};
+ $result .= '}' unless ($unclosed_commands);
+ }
+ else
+ {
+ $result = '{' . $cmd_ref->{'text'};
+ # don't close { if we are closing stack as we are not
+ # sure this is a licit { ... } construct.
+ $result .= '}' unless ($unclosed_commands);
+ }
+ return $result;
+}
+
sub scan_structure($$$$;$)
{
my $line = shift;
@@ -9355,7 +9380,7 @@
}
elsif (defined($text_macros{$macro}))
{
- #print STDERR "TEXT_MACRO: $macro\n";
+ #print STDERR "TEXT_MACRO: $macro\n";
if ($text_macros{$macro} eq 'raw')
{
$state->{'raw'} = $macro;
@@ -9372,20 +9397,20 @@
{
if (exists($state->{'region_lines'}) and
($state->{'region_lines'}->{'format'} ne $macro))
{
- echo_error("address@hidden not allowed within
$state->{'region_lines'}->{'format'}", $line_nr);
- next;
+ echo_error("address@hidden not allowed within
$state->{'region_lines'}->{'format'}", $line_nr);
+ next;
}
if (!exists($state->{'region_lines'}))
{
- $state->{'region_lines'}->{'format'} = $macro;
- $state->{'region_lines'}->{'number'} = 1;
- $state->{'region_lines'}->{'after_element'} = 1 if
($state->{'after_element'});
- $state->{'region_lines'}->{'kept_place'} =
$state->{'place'};
- $state->{'place'} = $region_place;
+ $state->{'region_lines'}->{'format'} = $macro;
+ $state->{'region_lines'}->{'number'} = 1;
+ $state->{'region_lines'}->{'after_element'} = 1 if
($state->{'after_element'});
+ $state->{'region_lines'}->{'kept_place'} =
$state->{'place'};
+ $state->{'place'} = $region_place;
}
else
{
- $state->{'region_lines'}->{'number'}++;
+ $state->{'region_lines'}->{'number'}++;
}
push @{$state->{'text_macro_stack'}}, $macro;
}
@@ -9530,54 +9555,8 @@
{
my $style = pop @$stack;
my $result;
- if ($style->{'style'} eq 'anchor')
- {
- my $anchor = $style->{'text'};
- $anchor = normalise_node($anchor);
- if ($nodes{$anchor})
- {
- echo_error ("Duplicate node for anchor found:
$anchor", $line_nr);
- next;
- }
- $anchor_num++;
- $nodes{$anchor} = { 'anchor' => 1, 'seen' => 1, 'texi'
=> $anchor, 'id' => 'ANC' . $anchor_num};
- push @{$state->{'place'}}, $nodes{$anchor};
- }
- elsif ($style->{'style'} eq 'footnote')
- {
- if ($Texi2HTML::Config::SEPARATED_FOOTNOTES)
- {
- $state->{'element'} = $state->{'footnote_element'};
- $state->{'place'} = $state->{'footnote_place'};
- }
- }
- elsif ($style->{'style'} eq 'caption' or $style->{'style'}
-eq 'shortcaption' and $state->{'float'})
- {
- my @texi_lines = map {$_ = $_."\n"} split (/\n/,
$style->{'text'});
- $state->{'float'}->{$style->{'style'} . "_texi"} =
address@hidden;
- }
- if (($style->{'style'} eq 'titlefont') and
($style->{'text'} =~ /\S/))
- {
- $state->{'element'}->{'titlefont'} = $style->{'text'}
unless ((exists($state->{'region_lines'}) and
($state->{'region_lines'}->{'format'} eq 'titlepage')) or
defined($state->{'element'}->{'titlefont'})) ;
- }
- if
(defined($Texi2HTML::Config::command_handler{$style->{'style'}}))
- {
- $result =
init_special($style->{'style'},$style->{'text'});
- }
- elsif ($style->{'style'})
- {
- $result = '@' . $style->{'style'} . '{' .
$style->{'text'} . '}';
- }
- else
- {
- $result = '{' . $style->{'text'};
- # don't close { if we are closing stack as we are not
- # sure this is a licit { ... } construct.
- $result .= '}' unless $state->{'close_stack'};
- }
- add_prev ($text, $stack, $result);
- #print STDERR "MACRO end $style->{'style'} remaining: $_";
+ add_prev ($text, $stack, close_structure_command($style,
+ $state, 0, $line_nr));
next;
}
else
@@ -9757,7 +9736,7 @@
while(1)
{
# scan_line
- #print STDERR "WHILE (l): $_";
+ #print STDERR "WHILE (l): $_|";
#dump_stack($text, $stack, $state);
# we're in a raw format (html, tex if !L2H, verbatim)
if (defined($state->{'raw'}))
@@ -9893,7 +9872,8 @@
next;
}
unless ($Texi2HTML::Config::format_in_paragraph{$end_tag})
- {
+ { # If the $end_tag is wrong we may be keeping paragraph
+ # for a format with paragraphs on the stack
close_paragraph($text, $stack, $state, $line_nr);
}
@@ -9949,6 +9929,19 @@
)
)
{
+ # this is not the right format. We try to close other
+ # formats to find the format we are searching for.
+ # First we close paragraphs, as with a wrong $end_format
+ # they may not be closed properly.
+ close_paragraph($text, $stack, $state, $line_nr);
+ $top_stack = top_stack($stack);
+ if (!$top_stack or (!defined($top_stack->{'format'})))
+ {
+ echo_error ("address@hidden $end_tag without corresponding
opening element", $line_nr);
+ add_prev($text, $stack, "address@hidden $end_tag");
+ dump_stack ($text, $stack, $state) if ($T2H_DEBUG);
+ next;
+ }
my $waited_format = $top_stack->{'format'};
$waited_format = $fake_format{$top_stack->{'format'}} if
($format_type{$top_stack->{'format'}} eq 'fake');
echo_error ("waiting for end of $waited_format, found
address@hidden $end_tag", $line_nr);
@@ -10244,14 +10237,12 @@
{
my ($style, $category, $name, $type, $class, $arguments);
($style, $category, $name, $type, $class, $arguments) =
parse_def($macro, $_, $line_nr);
+ # FIXME -- --- ''... lead to simple text in texi2html
+ # while they are kept as is in html coments by makeinfo
$category = remove_texi($category) if
(defined($category));
- # FIXME -- --- ''... should be protected (not by makeinfo)
$name = remove_texi($name) if (defined($name));
- # FIXME -- --- ''... should be protected (not by makeinfo)
$type = remove_texi($type) if (defined($type));
- # FIXME -- --- ''... should be protected (not by makeinfo)
$class = remove_texi($class) if (defined($class));
- # FIXME -- --- ''... should be protected?
$arguments = remove_texi($arguments) if
(defined($arguments));
chomp($arguments);
add_prev($text, $stack,
&$Texi2HTML::Config::def_line_no_texi($category, $name, $type, $arguments));
@@ -10411,15 +10402,13 @@
$state->{'deff_line'}->{'style'} = $style;
$state->{'deff_line'}->{'category'} =
substitute_line($category) if (defined($category));
$state->{'deff_line'}->{'category'} = '' if
(!defined($category));
- # FIXME -- --- ''... should be protected (not by makeinfo)
+ # FIXME -- --- ''... are transformed to entities by
+ # makeinfo. It may be wrong.
$state->{'deff_line'}->{'name'} = substitute_line($name)
if (defined($name));
$state->{'deff_line'}->{'name'} = '' if (!defined($name));
- # FIXME -- --- ''... should be protected (not by makeinfo)
$state->{'deff_line'}->{'type'} = substitute_line($type)
if (defined($type));
- # FIXME -- --- ''... should be protected (not by makeinfo)
$state->{'deff_line'}->{'class'} = substitute_line($class)
if (defined($class));
- # FIXME -- --- ''... should be protected
- # for the remaining of the line (the argument)
+ # the remaining of the line (the argument)
open_cmd_line($stack, $state, ['keep'], \&do_def_line);
next;
}
@@ -10451,7 +10440,7 @@
# for similar reasons, we may have a bad stack nesting
# which results in } after a closing. For example
# @center @samp{something @center end of samp}
- # results tosamp being kept in the 'command_stack'
+ # results to samp being kept in the 'command_stack'
# we keep the end of line for @center, to
# avoid the return in case there is only spaces
@@ -10595,7 +10584,6 @@
}
else
{
-
echo_error("'}' without opening '{' before: $_", $line_nr);
}
}
@@ -10623,7 +10611,7 @@
if ($command)
{
$style->{'no_close'} = 1 if ($state->{'no_close'});
- if ($::style_map_ref->{$command} and !$style->{'no_close'}
and (defined($style_type{$command})) and (($style_type{$command} eq 'style') or
($style_type{$command} eq 'accent')))
+ if ($::style_map_ref->{$command} and
(defined($style_type{$command})) and ((!$style->{'no_close'} and
($style_type{$command} eq 'style')) or ($style_type{$command} eq 'accent')))
{
my $style_command = pop @{$state->{'command_stack'}};
if ($style_command ne $command)
@@ -10643,7 +10631,6 @@
}
else
{
- #print STDERR "# Unstack from main $command
(@{$state->{'command_stack'}})\n" if ($T2H_DEBUG);
$result = do_simple($command, $style->{'text'},
$state, $style->{'args'}, $line_nr, $style->{'no_open'}, $style->{'no_close'});
if ($state->{'code_style'} < 0)
{
@@ -10993,25 +10980,25 @@
$format->{'paragraph_number'} = 0;
if ($format->{'format'} eq 'enumerate')
{
- $format->{'number'} = '';
- my $spec = $format->{'spec'};
- $format->{'item_nr'}++;
- if ($spec =~ /^[0-9]$/)
- {
- $format->{'number'} = $spec + $format->{'item_nr'} - 1;
- }
- else
- {
- my $base_letter = ord('a');
- $base_letter = ord('A') if (ucfirst($spec) eq $spec);
+ $format->{'number'} = '';
+ my $spec = $format->{'spec'};
+ $format->{'item_nr'}++;
+ if ($spec =~ /^[0-9]$/)
+ {
+ $format->{'number'} = $spec + $format->{'item_nr'} - 1;
+ }
+ else
+ {
+ my $base_letter = ord('a');
+ $base_letter = ord('A') if (ucfirst($spec) eq $spec);
- my @letter_ords = decompose(ord($spec) - $base_letter +
$format->{'item_nr'} - 1, 26);
- foreach my $ord (@letter_ords)
- {# WARNING we go directly to 'ba' after 'z', and not 'aa'
- #because 'ba' is 1,0 and 'aa' is 0,0.
- $format->{'number'} = chr($base_letter + $ord) .
$format->{'number'};
- }
- }
+ my @letter_ords = decompose(ord($spec) - $base_letter +
$format->{'item_nr'} - 1, 26);
+ foreach my $ord (@letter_ords)
+ {# WARNING we go directly to 'ba' after 'z', and not 'aa'
+ #because 'ba' is 1,0 and 'aa' is 0,0.
+ $format->{'number'} = chr($base_letter + $ord) .
$format->{'number'};
+ }
+ }
}
#dump_stack ($text, $stack, $state);
@@ -11025,7 +11012,7 @@
my $formatted_command;
if (defined($format->{'command'}) and
exists($::things_map_ref->{$format->{'command'}}))
{
- $formatted_command = do_simple($format->{'command'}, '', $state);
+ $formatted_command = do_simple($format->{'command'}, '', $state);
}
#chomp($item->{'text'});
add_prev($text, $stack,
&$Texi2HTML::Config::list_item($item->{'text'},$format->{'format'},$format->{'command'},
$formatted_command, $format->{'item_nr'}, $format->{'spec'},
$format->{'number'}));
@@ -11064,25 +11051,25 @@
# \n may in certain circumstances, protect end of lines
if ($macro eq "\n")
{
- $state->{'end_of_line_protected'} = 1;
- #print STDERR "PROTECTING END OF LINE\n";
+ $state->{'end_of_line_protected'} = 1;
+ #print STDERR "PROTECTING END OF LINE\n";
}
if ($state->{'keep_texi'})
{
- return "address@hidden";
+ return "address@hidden";
}
elsif ($state->{'remove_texi'})
{
#print STDERR "DO_SIMPLE remove_texi $macro\n";
- return $::simple_map_texi_ref->{$macro};
+ return $::simple_map_texi_ref->{$macro};
}
elsif ($state->{'preformatted'})
{
- return $::simple_map_pre_ref->{$macro};
+ return $::simple_map_pre_ref->{$macro};
}
else
{
- return $::simple_map_ref->{$macro};
+ return $::simple_map_ref->{$macro};
}
}
if (defined($::things_map_ref->{$macro}))
@@ -11090,20 +11077,20 @@
my $result;
if ($state->{'keep_texi'})
{
- $result = "address@hidden" . '{}';
+ $result = "address@hidden" . '{}';
}
elsif ($state->{'remove_texi'})
{
- $result = $::texi_map_ref->{$macro};
+ $result = $::texi_map_ref->{$macro};
#print STDERR "DO_SIMPLE remove_texi texi_map $macro\n";
}
elsif ($state->{'preformatted'})
{
- $result = $::pre_map_ref->{$macro};
+ $result = $::pre_map_ref->{$macro};
}
else
{
- $result = $::things_map_ref->{$macro};
+ $result = $::things_map_ref->{$macro};
}
return $result . $text;
}
@@ -11111,34 +11098,34 @@
{
if ($state->{'keep_texi'})
{
- return "address@hidden" . '{' . $text . '}';
+ return "address@hidden" . '{' . $text . '}';
}
else
{
- my $style;
- my $result;
- if ($state->{'remove_texi'})
- {
+ my $style;
+ my $result;
+ if ($state->{'remove_texi'})
+ {
#print STDERR "REMOVE $macro, $style_map_texi_ref->{$macro}, fun
$style_map_texi_ref->{$macro}->{'function'} remove cmd " .
\&Texi2HTML::Config::t2h_remove_command . " ascii acc " .
\&t2h_default_ascii_accent;
- $style = $::style_map_texi_ref->{$macro};
- }
- elsif ($state->{'preformatted'})
- {
- $style = $::style_map_pre_ref->{$macro};
- }
- else
- {
- $style = $::style_map_ref->{$macro};
- }
- if (defined($style))
- { # known style
- $result = &$Texi2HTML::Config::style($style, $macro, $text,
$args, $no_close, $no_open, $line_nr, $state, $state->{'command_stack'});
- }
- if (!$no_close)
- {
- close_arg($macro,$arg_nr, $state);
- }
- return $result;
+ $style = $::style_map_texi_ref->{$macro};
+ }
+ elsif ($state->{'preformatted'})
+ {
+ $style = $::style_map_pre_ref->{$macro};
+ }
+ else
+ {
+ $style = $::style_map_ref->{$macro};
+ }
+ if (defined($style))
+ { # known style
+ $result = &$Texi2HTML::Config::style($style, $macro, $text,
$args, $no_close, $no_open, $line_nr, $state, $state->{'command_stack'});
+ }
+ if (!$no_close)
+ {
+ close_arg($macro,$arg_nr, $state);
+ }
+ return $result;
}
}
elsif ($macro =~ /^special_(\w+)_(\d+)$/o)
@@ -11148,17 +11135,17 @@
print STDERR "Bug? text in address@hidden not empty.\n" if ($text ne
'');
if ($state->{'keep_texi'})
{# text should be empty
- return "address@hidden" . '{' . $text . '}';
+ return "address@hidden" . '{' . $text . '}';
}
if (defined($Texi2HTML::Config::command_handler{$style}) and
defined($Texi2HTML::Config::command_handler{$style}->{'expand'}))
{
- my $struct_count = 1+ $special_commands{$style}->{'max'} -
$special_commands{$style}->{'count'};
- if (($count != $struct_count) and $T2H_DEBUG)
- {
- print STDERR "count $count in address@hidden $style and
structure $struct_count differ\n";
- }
- $special_commands{$style}->{'count'}--;
+ my $struct_count = 1+ $special_commands{$style}->{'max'} -
$special_commands{$style}->{'count'};
+ if (($count != $struct_count) and $T2H_DEBUG)
+ {
+ print STDERR "count $count in address@hidden $style and
structure $struct_count differ\n";
+ }
+ $special_commands{$style}->{'count'}--;
}
my $result = $Texi2HTML::Config::command_handler{$style}->{'expand'}
($style,$count,$state,$text);
@@ -11170,19 +11157,19 @@
my ($done, $result_text, $message) =
&$Texi2HTML::Config::unknown_style($macro, $text,$state);
if ($done)
{
- echo_warn($message, $line_nr) if (defined($message));
- if (defined($result_text))
- {
- $result = $result_text;
- }
+ echo_warn($message, $line_nr) if (defined($message));
+ if (defined($result_text))
+ {
+ $result = $result_text;
+ }
}
else
{
unless ($no_open)
{ # we warn only if no_open is true, i.e. it is the first time we
# close the macro for a multiline macro
- echo_warn ("Unknown command with braces address@hidden'",
$line_nr);
- $result = do_text("address@hidden") . "{";
+ echo_warn ("Unknown command with braces address@hidden'",
$line_nr);
+ $result = do_text("address@hidden") . "{";
}
$result .= $text;
$result .= '}' unless ($no_close);
@@ -11323,35 +11310,43 @@
while ($stack_level--)
{
- my $stack_text = $stack->[$stack_level]->{'text'};
- $stack_text = '' if (!defined($stack_text));
- if ($stack->[$stack_level]->{'format'})
- {
- my $format = $stack->[$stack_level]->{'format'};
- if ($format eq 'index_item')
- {
- enter_table_index_entry($text, $stack, $state, $line_nr);
- next;
- }
- elsif (!defined($format_type{$format}) or
($format_type{$format} ne 'fake'))
- {
- $stack_text = "address@hidden" . $stack_text;
- }
- }
- elsif (defined($stack->[$stack_level]->{'style'}))
- {
- my $style = $stack->[$stack_level]->{'style'};
- if ($style ne '')
- {
- $stack_text = "address@hidden" . $stack_text;
- }
- else
- {# this is a lone opened brace. We readd it there.
- $stack_text = "\{" . $stack_text;
- }
- }
- pop @$stack;
- add_prev($text, $stack, $stack_text);
+ my $stack_text = $stack->[$stack_level]->{'text'};
+ $stack_text = '' if (!defined($stack_text));
+ if ($stack->[$stack_level]->{'format'})
+ {
+ my $format = $stack->[$stack_level]->{'format'};
+ if ($format eq 'index_item')
+ {
+ enter_table_index_entry($text, $stack, $state, $line_nr);
+ next;
+ }
+ elsif (!defined($format_type{$format}) or ($format_type{$format}
ne 'fake'))
+ {
+ $stack_text = "address@hidden" . $stack_text;
+ }
+ }
+ elsif (defined($stack->[$stack_level]->{'style'}))
+ {
+ if ($state->{'structure'})
+ {
+ $stack_text = close_structure_command($stack->[$stack_level],
+ $state,1,$line_nr)
+ }
+ else
+ {
+ my $style = $stack->[$stack_level]->{'style'};
+ if ($style ne '')
+ {
+ $stack_text = "address@hidden" . $stack_text;
+ }
+ else
+ {# this is a lone opened brace. We readd it there.
+ $stack_text = "\{" . $stack_text;
+ }
+ }
+ }
+ pop @$stack;
+ add_prev($text, $stack, $stack_text);
}
$stack = [ ];
@@ -11461,23 +11456,33 @@
{
my $style = $stack->[$stack_level]->{'style'};
# FIXME images, footnotes, xrefs, anchors with $close_paragraphs?
+ # seems that it is not possible, as it is triggered by
+ # close_paragraph which shouldn't be called with keep_texi
+ # and when the arguments are expanded, there is a
+ # substitute_line or similar with a new stack.
if ($close_paragraph)
{ #duplicate the stack
- if (exists($style_type{$style}) and ($style_type{$style} eq
'style') or (!exists($style_type{$style})))
+ # the !exists($style_type{$style}) condition catches the unknown
+ # @-commands: by default they are considered as style commands
+ if ((exists($style_type{$style}) and ($style_type{$style} eq
'style')) or (!exists($style_type{$style})))
{
push @$new_stack, { 'style' => $style, 'text' => '',
'no_open' => 1, 'arg_nr' => 0 };
$string .= '}';
}
- elsif (exists($style_type{$style}) and ($style_type{$style} eq
'simple_style'))
+ elsif (($style_type{$style} eq 'simple_style') or
($style_type{$style} eq 'accent'))
{
$string .= '}';
}
+ else
+ {
+ print STDERR "$style while closing paragraph\n";
+ }
}
else
{
dump_stack ($text, $stack, $state) if (!defined($style)); # bug
$string .= '}';
- echo_warn ("closing $style", $line_nr) if ($style);
+ echo_warn ("closing address@hidden $style", $line_nr) if
($style);
}
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Texi2html-cvs] texi2html ./ChangeLog ./NEWS ./T2h_l2h.pm ./TOD...,
Patrice Dumas <=