From 8d3fe497b1e48e14a8a28ffae93b409a3fe1e4e7 Mon Sep 17 00:00:00 2001 From: Andreas Meyer Date: Wed, 25 Apr 2007 14:06:15 +0000 Subject: [PATCH] html converter: * added \expandafter, which was planned to be used for cc_manual_index .. * fixed the occurrence of plain "\ccPackageName" in index, \expandafter was not needed for this, finally --- .../html/cc_manual_index.sty | 16 ++++++++-------- .../src/latex_converter_config/html/latex.sty | 13 +++++++++++++ Manual_tools/src/output.C | 8 ++++---- 3 files changed, 25 insertions(+), 12 deletions(-) diff --git a/Manual_tools/src/latex_converter_config/html/cc_manual_index.sty b/Manual_tools/src/latex_converter_config/html/cc_manual_index.sty index 2e6d157201f..dca5e6bbff2 100644 --- a/Manual_tools/src/latex_converter_config/html/cc_manual_index.sty +++ b/Manual_tools/src/latex_converter_config/html/cc_manual_index.sty @@ -140,15 +140,15 @@ \gdef{\lciItem}{} \newcommand{\ccFonts}[2]{% - \lciIfEqualExpanded{a}{#1}{{\ccIndexAbbreviationFont \lcRawHtml{#2}}}{% + \lciIfEqualExpanded{a}{#1}{{\ccIndexAbbreviationFont \lcRawHtmlExpanded{#2}}}{% \lciIfEqualExpanded{C}{#1}{{\ccc{#2}}}{% - \lciIfEqualExpanded{c}{#1}{{\ccIndexConceptFont \lcRawHtml{#2}}}{% - \lciIfEqualExpanded{d}{#1}{{\ccIndexDSFont \lcRawHtml{#2}}}{% - \lciIfEqualExpanded{f}{#1}{{\ccIndexFunctionalityFont \lcRawHtml{#2}}}{% - \lciIfEqualExpanded{h}{#1}{{\ccIndexHintFont \lcRawHtml{#2}}}{% - \lciIfEqualExpanded{l}{#1}{{\ccIndexLibraryFont \lcRawHtml{#2}}}{% - \lciIfEqualExpanded{p}{#1}{{\ccIndexPackageFont \lcRawHtml{#2}}}{% - \lciIfEqualExpanded{t}{#1}{{\ccIndexTermFont \lcRawHtml{#2}}}{ + \lciIfEqualExpanded{c}{#1}{{\ccIndexConceptFont \lcRawHtmlExpanded{#2}}}{% + \lciIfEqualExpanded{d}{#1}{{\ccIndexDSFont \lcRawHtmlExpanded{#2}}}{% + \lciIfEqualExpanded{f}{#1}{{\ccIndexFunctionalityFont \lcRawHtmlExpanded{#2}}}{% + \lciIfEqualExpanded{h}{#1}{{\ccIndexHintFont \lcRawHtmlExpanded{#2}}}{% + \lciIfEqualExpanded{l}{#1}{{\ccIndexLibraryFont \lcRawHtmlExpanded{#2}}}{% + \lciIfEqualExpanded{p}{#1}{{\ccIndexPackageFont \lcRawHtmlExpanded{#2}}}{% + \lciIfEqualExpanded{t}{#1}{{\ccIndexTermFont \lcRawHtmlExpanded{#2}}}{ {#2}}}}}}}}}}% } diff --git a/Manual_tools/src/latex_converter_config/html/latex.sty b/Manual_tools/src/latex_converter_config/html/latex.sty index 11647855aa3..533b5d5ea64 100644 --- a/Manual_tools/src/latex_converter_config/html/latex.sty +++ b/Manual_tools/src/latex_converter_config/html/latex.sty @@ -213,6 +213,17 @@ \newcommand{\protect}{} +% trivial implementation: not "reentrant" ! +\newcommand{\expandafter}[2]{% + \lciSavestreamOpen{expandafter}% + \begin{savestream}{expandafter}#2\end{savestream}% + \lciSavestreamUse{expandafter}% + \expandafterX{#1}{\lciSavestreamBufferexpandafter}% + \lciSavestreamClose{expandafter}% +} + +\newcommand{\expandafterX}[2]{#1{#X2}} + % ___________________________________________________________________________ % ########################################################################### % | @@ -256,10 +267,12 @@ \lcRawHtml{} \lcRawHtml{
} \lciSavestreamUse{parttoc} + \lcRawHtmlExpanded{\lciSavestreamBufferparttoc} \lcRawHtml{

} \lcRawHtml{} \lcRawHtml{} \lciSavestreamUse{pkgtoc} + \lcRawHtmlExpanded{\lciSavestreamBufferpkgtoc} \lcRawHtml{
} }{} %\lciTocSync diff --git a/Manual_tools/src/output.C b/Manual_tools/src/output.C index 35713c92ea1..6a571611987 100644 --- a/Manual_tools/src/output.C +++ b/Manual_tools/src/output.C @@ -289,10 +289,10 @@ Savestream_table savestream_table; void savestream_open( const string& name ) { Savestream_table::iterator it = savestream_table.find( name ); - if( it != savestream_table.end() ) - std::cerr << "!! Error: savestream \"" << name << "\" already open!" << std::endl; - else + if( it == savestream_table.end() || savestream_table[ name ] == NULL) savestream_table[ name ] = new ostringstream; + else + std::cerr << "!! Error: savestream \"" << name << "\" already open!" << std::endl; } ostream* @@ -310,7 +310,7 @@ savestream_use( const string& name ) { if( out != NULL ) { ostringstream *sout = dynamic_cast(out); assert( sout != NULL ); - return "\\lcRawHtml{" + sout->str() + "}"; + return "\\gdef\\lciSavestreamBuffer" + name + "{" + sout->str() + "}"; } return string(); }