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
This commit is contained in:
Andreas Meyer 2007-04-25 14:06:15 +00:00
parent 2047e5862f
commit 8d3fe497b1
3 changed files with 25 additions and 12 deletions

View File

@ -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}}}}}}}}}}%
}

View File

@ -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{<div class="NavTop"><hr><h2>Parts</h2><hr></div>}
\lcRawHtml{<br><table border="0">}
\lciSavestreamUse{parttoc}
\lcRawHtmlExpanded{\lciSavestreamBufferparttoc}
\lcRawHtml{</table><br>}
\lcRawHtml{<div class="NavTop"><hr><h2>Packages</h2><hr></div>}
\lcRawHtml{<table border="0">}
\lciSavestreamUse{pkgtoc}
\lcRawHtmlExpanded{\lciSavestreamBufferpkgtoc}
\lcRawHtml{</table>}
}{}
%\lciTocSync

View File

@ -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<ostringstream*>(out);
assert( sout != NULL );
return "\\lcRawHtml{" + sout->str() + "}";
return "\\gdef\\lciSavestreamBuffer" + name + "{" + sout->str() + "}";
}
return string();
}