diff options
author | Petr Prikryl <prikryl@atlas.cz> | 2014-05-30 06:45:37 (GMT) |
---|---|---|
committer | Petr Prikryl <prikryl@atlas.cz> | 2014-05-30 06:45:37 (GMT) |
commit | 39bdafef40e292515fd3ee79c6b77ebc0e38c6e2 (patch) | |
tree | f10b67594af63108570c8df05034a3c55f994a28 | |
parent | 6d969cab51f4c32784966a28b8b9d5fe2d5b2089 (diff) | |
parent | 84064ac4db9e487ca4bff9b6c37eb72992050ee3 (diff) | |
download | Doxygen-39bdafef40e292515fd3ee79c6b77ebc0e38c6e2.zip Doxygen-39bdafef40e292515fd3ee79c6b77ebc0e38c6e2.tar.gz Doxygen-39bdafef40e292515fd3ee79c6b77ebc0e38c6e2.tar.bz2 |
Merge branch 'master' of https://github.com/doxygen/doxygen.git
-rw-r--r-- | doc/htmlcmds.doc | 16 | ||||
-rw-r--r-- | qtools/qstring.cpp | 7 | ||||
-rw-r--r-- | src/config.xml | 2 | ||||
-rw-r--r-- | src/fortrancode.l | 63 | ||||
-rw-r--r-- | src/latexgen.cpp | 4 |
5 files changed, 50 insertions, 42 deletions
diff --git a/doc/htmlcmds.doc b/doc/htmlcmds.doc index b07509c..d041f1e 100644 --- a/doc/htmlcmds.doc +++ b/doc/htmlcmds.doc @@ -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. diff --git a/qtools/qstring.cpp b/qtools/qstring.cpp index 11187f6..a1a41d9 100644 --- a/qtools/qstring.cpp +++ b/qtools/qstring.cpp @@ -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 diff --git a/src/config.xml b/src/config.xml index 349c41c..4d93ee5 100644 --- a/src/config.xml +++ b/src/config.xml @@ -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. ]]> diff --git a/src/fortrancode.l b/src/fortrancode.l index 02a827e..e6cfdde 100644 --- a/src/fortrancode.l +++ b/src/fortrancode.l @@ -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 } <*>. { diff --git a/src/latexgen.cpp b/src/latexgen.cpp index a714539..40ad877 100644 --- a/src/latexgen.cpp +++ b/src/latexgen.cpp @@ -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 } |