Commit 39bdafef authored by Petr Prikryl's avatar Petr Prikryl

Merge branch 'master' of https://github.com/doxygen/doxygen.git

parents 6d969cab 84064ac4
......@@ -32,8 +32,6 @@ of a HTML tag are passed on to the HTML output only
<li><tt>\</B\></tt> Ends a <tt>\<B\></tt> section.
<li><tt>\<BLOCKQUOTE\></tt> Starts a quotation block.
<li><tt>\</BLOCKQUOTE\></tt> Ends the quotation block.
<li><tt>\<BODY\></tt> Does not generate any output.
<li><tt>\</BODY\></tt> Does not generate any output.
<li><tt>\<BR\></tt> Forces a line break.
<li><tt>\<CENTER\></tt> starts a section of centered text.
<li><tt>\</CENTER\></tt> ends a section of centered text.
......@@ -57,8 +55,6 @@ of a HTML tag are passed on to the HTML output only
<li><tt>\</DT\></tt> Ends an item title.
<li><tt>\<EM\></tt> Starts a piece of text displayed in an italic font.
<li><tt>\</EM\></tt> Ends a <tt>\<EM\></tt> section.
<li><tt>\<FORM\></tt> Does not generate any output.
<li><tt>\</FORM\></tt> Does not generate any output.
<li><tt>\<HR\></tt> Writes a horizontal ruler.
<li><tt>\<H1\></tt> Starts an unnumbered section.
<li><tt>\</H1\></tt> Ends an unnumbered section.
......@@ -66,15 +62,17 @@ of a HTML tag are passed on to the HTML output only
<li><tt>\</H2\></tt> Ends an unnumbered subsection.
<li><tt>\<H3\></tt> Starts an unnumbered subsubsection.
<li><tt>\</H3\></tt> Ends an unnumbered subsubsection.
<li><tt>\<H4\></tt> Starts an unnumbered subsubsection.
<li><tt>\</H4\></tt> Ends an unnumbered subsubsection.
<li><tt>\<H5\></tt> Starts an unnumbered subsubsection.
<li><tt>\</H5\></tt> Ends an unnumbered subsubsection.
<li><tt>\<H6\></tt> Starts an unnumbered subsubsection.
<li><tt>\</H6\></tt> Ends an unnumbered subsubsection.
<li><tt>\<I\></tt> Starts a piece of text displayed in an italic font.
<li><tt>\<INPUT\></tt> Does not generate any output.
<li><tt>\</I\></tt> Ends a <tt>\<I\></tt> section.
<li><tt>\<IMG\></tt> This command is written with attributes to the HTML output only.
<li><tt>\<IMG SRC="..." ...\></tt> This command is written with its attributes to the HTML output only. The SRC attribute is mandatory.
<li><tt>\<LI\></tt> Starts a new list item.
<li><tt>\</LI\></tt> Ends a list item.
<li><tt>\<META\></tt> Does not generate any output.
<li><tt>\<MULTICOL\></tt> ignored by doxygen.
<li><tt>\</MUTLICOL\></tt> ignored by doxygen.
<li><tt>\<OL\></tt> Starts a numbered item list.
<li><tt>\</OL\></tt> Ends a numbered item list.
<li><tt>\<P\></tt> Starts a new paragraph.
......
......@@ -11492,8 +11492,6 @@ int QLigature::match(QString & str, unsigned int index)
return 0;
}
#endif
// this function is just used in QString::compose()
static inline bool format(QChar::Decomposition tag, QString & str,
int index, int len)
......@@ -11515,7 +11513,7 @@ static inline bool format(QChar::Decomposition tag, QString & str,
switch (tag) {
case QChar::Medial:
return (left & right);
return (left && right);
case QChar::Initial:
return (left && !right);
case QChar::Final:
......@@ -11525,6 +11523,7 @@ static inline bool format(QChar::Decomposition tag, QString & str,
return (!right && !left);
}
} // format()
#endif
/*
QString::compose() and visual() were developed by Gordon Tisher
......@@ -11602,7 +11601,6 @@ static inline bool is_arabic(unsigned short x) {
((x >= 0xfb50) && (x <= 0xfdff)) ||
((x >= 0xfe70) && (x <= 0xfeff)));
}
#endif
static inline bool is_neutral(unsigned short dir) {
return ((dir == QChar::DirB) ||
......@@ -11611,6 +11609,7 @@ static inline bool is_neutral(unsigned short dir) {
(dir == QChar::DirON) ||
(dir == QChar::DirNSM));
}
#endif
/*!
This function returns the basic directionality of the string (QChar::DirR for
......
......@@ -2553,7 +2553,7 @@ EXTRA_PACKAGES=times
<option type='bool' id='USE_PDFLATEX' defval='1' depends='GENERATE_LATEX'>
<docs>
<![CDATA[
If the \c LATEX_PDFLATEX tag is set to \c YES, doxygen will use
If the \c USE_PDFLATEX tag is set to \c YES, doxygen will use
\c pdflatex to generate the PDF file directly from the \f$\mbox{\LaTeX}\f$
files. Set this option to \c YES to get a higher quality PDF documentation.
]]>
......
......@@ -150,7 +150,9 @@ static bool g_includeCodeFragment;
static char stringStartSymbol; // single or double quote
// count in variable declaration to filter out
// declared from referenced names
static int bracketCount = 0;
static int bracketCount = 0;
static bool g_endComment;
// simplified way to know if this is fixed form
// duplicate in fortranscanner.l
......@@ -255,6 +257,7 @@ static void startCodeLine()
g_currentDefinition = d;
g_currentMemberDef = g_sourceFileDef->getSourceMember(g_yyLineNr);
g_insideBody = FALSE;
g_endComment = FALSE;
g_parmType.resize(0);
g_parmName.resize(0);
QCString lineAnchor;
......@@ -688,8 +691,7 @@ NUM_TYPE (complex|integer|logical|real)
LOG_OPER (\.and\.|\.eq\.|\.eqv\.|\.ge\.|\.gt\.|\.le\.|\.lt\.|\.ne\.|\.neqv\.|\.or\.|\.not\.)
KIND {ARGS}
CHAR (CHARACTER{ARGS}?|CHARACTER{BS}"*"({BS}[0-9]+|{ARGS}))
TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{BS}COMPLEX|DOUBLE{BS}PRECISION|{CHAR}|PROCEDURE)
TYPE_PREFIX ((TYPE|CLASS|PROCEDURE){BS}"(")
TYPE_SPEC (({NUM_TYPE}({BS}"*"{BS}[0-9]+)?)|({NUM_TYPE}{KIND})|DOUBLE{BS}COMPLEX|DOUBLE{BS}PRECISION|{CHAR}|TYPE|CLASS|PROCEDURE)
INTENT_SPEC intent{BS}"("{BS}(in|out|in{BS}out){BS}")"
ATTR_SPEC (IMPLICIT|ALLOCATABLE|DIMENSION{ARGS}|EXTERNAL|{INTENT_SPEC}|INTRINSIC|OPTIONAL|PARAMETER|POINTER|PROTECTED|PRIVATE|PUBLIC|SAVE|TARGET|RECURSIVE|PURE|IMPURE|ELEMENTAL|VALUE|NOPASS|DEFERRED)
......@@ -718,7 +720,6 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
%x Use
%x UseOnly
%x Import
%x TypeDecl
%x Declaration
%x DeclContLine
%x Parameterlist
......@@ -828,7 +829,7 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
g_insideBody=FALSE;
}
/*-------- fortran module -----------------------------------------*/
<Start>("block"{BS}"data"|"program"|"module"|"type"|"interface")/{BS_}|({COMMA}({ACCESS_SPEC}|ABSTRACT|EXTENDS))|\n { //
<Start>("block"{BS}"data"|"program"|"module"|"interface")/{BS_}|({COMMA}{ACCESS_SPEC})|\n { //
startScope();
startFontClass("keyword");
codifyLines(yytext);
......@@ -837,6 +838,14 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
BEGIN(ClassName);
if (!qstricmp(yytext,"module")) currentModule="module";
}
<Start>("type")/{BS_}|({COMMA}({ACCESS_SPEC}|ABSTRACT|EXTENDS))|\n { //
startScope();
startFontClass("keyword");
codifyLines(yytext);
endFontClass();
yy_push_state(YY_START);
BEGIN(ClassName);
}
<ClassName>{ID} {
if (currentModule == "module")
{
......@@ -905,24 +914,6 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
endFontClass();
}
/*-------- variable declaration ----------------------------------*/
<Start>^{BS}{TYPE_PREFIX}/{ID} {
yy_push_state(YY_START);
BEGIN(TypeDecl);
startFontClass("keywordtype");
g_code->codify(yytext);
endFontClass();
}
<TypeDecl>{ID} { // link type
g_insideBody=TRUE;
generateLink(*g_code,yytext);
g_insideBody=FALSE;
}
<TypeDecl>")" {
BEGIN(Declaration);
startFontClass("keywordtype");
g_code->codify(yytext);
endFontClass();
}
<Start>{TYPE_SPEC}/[,:( ] {
yy_push_state(YY_START);
BEGIN(Declaration);
......@@ -941,7 +932,7 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
endFontClass();
}
<Declaration>{ID} { // local var
if (g_currentMemberDef && !g_currentMemberDef->isFunction())
if (g_currentMemberDef && g_currentMemberDef->isFunction() && bracketCount==0)
{
g_code->codify(yytext);
addLocalVar(yytext);
......@@ -973,7 +964,14 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
YY_FTN_RESET
}
<Declaration>"\n" { // end declaration line
codifyLines(yytext);
if (g_endComment)
{
g_endComment=FALSE;
}
else
{
codifyLines(yytext);
}
bracketCount = 0;
yy_pop_state();
YY_FTN_RESET
......@@ -1030,16 +1028,17 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
docBlock+=yytext;
}
<DocBlock>"\n" { // comment block ends at the end of this line
docBlock+=yytext;
// remove special comment (default config)
if (Config_getBool("STRIP_CODE_COMMENTS"))
{
g_yyLineNr+=((QCString)docBlock).contains('\n');
g_yyLineNr+=1;
endCodeLine();
if (g_yyLineNr<g_inputLines)
if (g_yyLineNr<g_inputLines)
{
startCodeLine();
}
g_endComment=TRUE;
}
else // do not remove comment
{
......@@ -1047,6 +1046,7 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
codifyLines(docBlock);
endFontClass();
}
unput(*yytext);
yy_pop_state();
YY_FTN_RESET
}
......@@ -1118,7 +1118,14 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
/*-----------------------------------------------------------------------------*/
<*>\n {
codifyLines(yytext);
if (g_endComment)
{
g_endComment=FALSE;
}
else
{
codifyLines(yytext);
}
YY_FTN_RESET
}
<*>. {
......
......@@ -186,6 +186,8 @@ static void writeMakeBat()
exit(1);
}
FTextStream t(&file);
t << "set Dir_Old=%cd%\n";
t << "cd /D %~dp0\n\n";
t << "del /s /f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf\n\n";
if (!Config_getBool("USE_PDFLATEX")) // use plain old latex
{
......@@ -246,6 +248,8 @@ static void writeMakeBat()
t << "endlocal\n";
t << mkidx_command << " refman.idx\n";
t << "pdflatex refman\n";
t << "cd /D %Dir_Old%\n";
t << "set Dir_Old=\n";
}
#endif
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment