summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2010-10-09 08:04:33 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2010-10-09 08:04:33 (GMT)
commit8a48f6c3f4827171edf41a40bfdbc03e53d9be6b (patch)
treefac3e1fdcea37381cbfa5042e20155883cf97372
parent6dbef217c477d43fb61e90b429531ee109bf0e75 (diff)
downloadDoxygen-8a48f6c3f4827171edf41a40bfdbc03e53d9be6b.zip
Doxygen-8a48f6c3f4827171edf41a40bfdbc03e53d9be6b.tar.gz
Doxygen-8a48f6c3f4827171edf41a40bfdbc03e53d9be6b.tar.bz2
Release-1.7.2
-rw-r--r--INSTALL4
-rw-r--r--README21
-rw-r--r--addon/doxywizard/doxywizard.cpp2
-rwxr-xr-xconfigure4
-rw-r--r--doc/commands.doc128
-rw-r--r--doc/config.doc212
-rw-r--r--doc/doxygen_usage.doc2
-rw-r--r--doc/formulas.doc5
-rw-r--r--doc/language.doc11
-rw-r--r--doc/maintainers.txt1
-rw-r--r--doc/translator.py17
-rw-r--r--doc/translator_report.txt17
-rw-r--r--src/commentscan.l7
-rw-r--r--src/config.xml23
-rw-r--r--src/configoptions.cpp32
-rw-r--r--src/doxygen.cpp19
-rw-r--r--src/htmldocvisitor.cpp36
-rw-r--r--src/htmlgen.cpp18
-rw-r--r--src/htmlhelp.cpp6
-rw-r--r--src/latexdocvisitor.cpp8
-rw-r--r--src/pre.l3
-rw-r--r--src/translator_eo.h68
22 files changed, 485 insertions, 159 deletions
diff --git a/INSTALL b/INSTALL
index 0846406..923fe64 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
-DOXYGEN Version 1.7.1-20100920
+DOXYGEN Version 1.7.2
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
-Dimitri van Heesch (20 September 2010)
+Dimitri van Heesch (08 October 2010)
diff --git a/README b/README
index c7372e7..5711f1b 100644
--- a/README
+++ b/README
@@ -1,13 +1,14 @@
-DOXYGEN Version 1.7.1_20100920
+DOXYGEN Version 1.7.2
Please read INSTALL for compilation instructions.
-The latest version of doxygen can be obtained at
+The latest version of doxygen can be obtained from:
http://www.doxygen.org/
-There are two mailing lists
- doxygen-users@lists.sourceforge.net
- doxygen-develop@lists.sourceforge.net
+There are three mailing lists:
+ doxygen-users@lists.sourceforge.net For doxygen users
+ doxygen-develop@lists.sourceforge.net For doxygen developers
+ doxygen-announce@lists.sourceforge.net Announcement of new releases only
please follow the link in
@@ -15,6 +16,14 @@ please follow the link in
to subscribe to the lists or to visit the archives.
+Use the bug tracker to report bugs:
+
+ https://bugzilla.gnome.org/enter_bug.cgi?product=doxygen
+
+Before reporting a bug, please check that it has not already been reported.
+Also, please use the bug tracker for reporting bugs rather than the help
+forum.
+
Enjoy,
-Dimitri van Heesch (dimitri@stack.nl) (20 September 2010)
+Dimitri van Heesch (dimitri@stack.nl) (08 October 2010)
diff --git a/addon/doxywizard/doxywizard.cpp b/addon/doxywizard/doxywizard.cpp
index 5299c10..c26a389 100644
--- a/addon/doxywizard/doxywizard.cpp
+++ b/addon/doxywizard/doxywizard.cpp
@@ -191,7 +191,7 @@ void MainWindow::about()
t << QString::fromAscii("<qt><center>A tool to configure and run doxygen version ")+
QString::fromAscii(versionString)+
QString::fromAscii(" on your source files.</center><p><br>"
- "<center>Written by<br> Dimitri van Heesch<br>&copy; 2000-2009</center><p>"
+ "<center>Written by<br> Dimitri van Heesch<br>&copy; 2000-2010</center><p>"
"</qt>");
QMessageBox::about(this,tr("Doxygen GUI"),msg);
}
diff --git a/configure b/configure
index 0147796..0e01a6e 100755
--- a/configure
+++ b/configure
@@ -17,10 +17,10 @@
doxygen_version_major=1
doxygen_version_minor=7
-doxygen_version_revision=1
+doxygen_version_revision=2
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
-doxygen_version_mmn=20100920
+doxygen_version_mmn=NO
bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
diff --git a/doc/commands.doc b/doc/commands.doc
index 69f22e7..42e76e0 100644
--- a/doc/commands.doc
+++ b/doc/commands.doc
@@ -43,6 +43,7 @@ documentation:
\refitem cmdarg \\arg
\refitem cmdattention \\attention
\refitem cmdauthor \\author
+\refitem cmdauthors \\authors
\refitem cmdb \\b
\refitem cmdbrief \\brief
\refitem cmdbug \\bug
@@ -80,6 +81,7 @@ documentation:
\refitem cmdendlink \\endlink
\refitem cmdendmanonly \\endmanonly
\refitem cmdendmsc \\endmsc
+\refitem cmdendrtfonly \\endrtfonly
\refitem cmdendverbatim \\endverbatim
\refitem cmdendxmlonly \\endxmlonly
\refitem cmdenum \\enum
@@ -138,14 +140,20 @@ documentation:
\refitem cmdpublic \\public
\refitem cmdpublic \\publicsection
\refitem cmdref \\ref
+\refitem cmdrelated \\related
\refitem cmdrelates \\relates
+\refitem cmdrelatedalso \\relatedalso
\refitem cmdrelatesalso \\relatesalso
+\refitem cmdremark \\remark
\refitem cmdremarks \\remarks
\refitem cmdreturn \\return
+\refitem cmdreturns \\returns
\refitem cmdretval \\retval
+\refitem cmdrtfonly \\rtfonly
\refitem cmdsa \\sa
\refitem cmdsection \\section
\refitem cmdsee \\see
+\refitem cmdshort \\short
\refitem cmdshowinitializer \\showinitializer
\refitem cmdsince \\since
\refitem cmdskip \\skip
@@ -156,6 +164,7 @@ documentation:
\refitem cmdsubsubsection \\subsubsection
\refitem cmdtest \\test
\refitem cmdthrow \\throw
+\refitem cmdthrows \\throws
\refitem cmdtodo \\todo
\refitem cmdtparam \\tparam
\refitem cmdtypedef \\typedef
@@ -829,6 +838,12 @@ Structural indicators
\endhtmlonly
<hr>
+\section cmdrelated \\related <name>
+
+ \addindex related
+ Equivalent to \ref cmdrelates "\\relates"
+
+<hr>
\section cmdrelatesalso \\relatesalso <name>
\addindex \\relatesalso
@@ -840,6 +855,12 @@ Structural indicators
class. It only works for functions.
<hr>
+\section cmdrelatedalso \\relatedalso <name>
+
+ \addindex relatedalso
+ Equivalent to \ref cmdrelatesalso "\\relatesalso"
+
+<hr>
\section cmdshowinitializer \\showinitializer
\addindex \\showinitializer
@@ -940,6 +961,11 @@ Section indicators
Click <a href="$(DOXYGEN_DOCDIR)/examples/author/html/class_windows_n_t.html">here</a>
for the corresponding HTML documentation that is generated by doxygen.
\endhtmlonly
+<hr>
+\section cmdauthors \\authors { list of authors }
+
+ \addindex \\authors
+ Equivalent to \ref cmdauthor "\\author".
<hr>
\section cmdbrief \\brief {brief description}
@@ -956,7 +982,7 @@ Section indicators
\ref cmdauthor "\\author" for an example.
Synonymous to \\short.
-
+
<hr>
\section cmdbug \\bug { bug description }
@@ -1337,9 +1363,9 @@ void memcpy(void *dest, const void *src, size_t n);
sectioning command is encountered.
<hr>
-\section cmdremarks \\remarks { remark text }
+\section cmdremark \\remark { remark text }
- \addindex \\remarks
+ \addindex \\remark
Starts a paragraph where one or more remarks may be entered.
The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual
@@ -1351,6 +1377,12 @@ void memcpy(void *dest, const void *src, size_t n);
sectioning command is encountered.
<hr>
+\section cmdremarks \\remarks { remark text }
+
+ \addindex \\remarks
+ Equivalent to \ref cmdremark "\\remark".
+
+<hr>
\section cmdreturn \\return { description of the return value }
\addindex \\return
@@ -1361,12 +1393,18 @@ void memcpy(void *dest, const void *src, size_t n);
The \\return description ends when a blank line or some other
sectioning command is encountered. See section \ref cmdfn "\\fn" for an
example.
+
+<hr>
+\section cmdreturns \\returns { description of the return value }
+
+ \addindex \\returns
+ Equivalent to \ref cmdreturn "\\return".
<hr>
\section cmdretval \\retval <return value> { description }
\addindex \\retval
- Starts a return value description for a function with name
+ Starts a description for a function's return value with name
\<return value\>. Followed by a description of the return value.
The text of the paragraph that forms the description has no special
internal structure. All visual enhancement commands may be used inside the
@@ -1400,6 +1438,12 @@ void memcpy(void *dest, const void *src, size_t n);
Equivalent to \ref cmdsa "\\sa". Introduced for compatibility with Javadoc.
<hr>
+\section cmdshort \\short {short description}
+
+ \addindex \\short
+ Equivalent to \\ref cmdbrief "\\brief".
+
+<hr>
\section cmdsince \\since { text }
\addindex \\since
@@ -1429,6 +1473,12 @@ void memcpy(void *dest, const void *src, size_t n);
the tag \\throws is a synonym for this tag.
<hr>
+\section cmdthrows \\throws <exception-object> { exception description }
+
+ \addindex \\throws
+ Equivalent to \ref cmdthrows "\\throws".
+
+<hr>
\section cmdtodo \\todo { paragraph describing what is to be done }
\addindex \\todo
@@ -2202,12 +2252,21 @@ class Receiver
\sa section \ref cmdmanonly "\\manonly".
<hr>
+\section cmdendrtfonly \\endrtfonly
+
+ \addindex \\endrtfonly
+ Ends a block of text that was started with a \\rtfonly command.
+
+ \sa section \ref cmdrtfonly "\\rtfonly".
+
+
+<hr>
\section cmdendverbatim \\endverbatim
\addindex \\endverbatim
Ends a block of text that was started with a \\verbatim command.
- \sa section \ref cmdendcode "\\endcode", section \ref cmdverbatim "\\verbatim".
+ \sa section \ref cmdverbatim "\\verbatim".
<hr>
\section cmdendxmlonly \\endxmlonly
@@ -2262,7 +2321,7 @@ class Receiver
\addindex \\htmlonly
Starts a block of text that will be verbatim included in the
generated HTML documentation only. The block ends with a
- endhtmlonly command.
+ \ref cmdhtmlonly "\\endhtmlonly" command.
This command can be used to include HTML code that is too complex
for doxygen (i.e. applets, java-scripts, and HTML tags that
@@ -2273,8 +2332,9 @@ class Receiver
environment variables (like \$(HOME) ) are resolved inside a
HTML-only block.
- \sa section \ref cmdmanonly "\\manonly" and section
- \ref cmdlatexonly "\\latexonly".
+ \sa section \ref cmdmanonly "\\manonly", section
+ \ref cmdlatexonly "\\latexonly", and section
+ \ref cmdrtfonly "\\rtfonly".
<hr>
\section cmdimage \\image <format> <file> ["caption"] [<sizeindication>=<size>]
@@ -2337,7 +2397,7 @@ class Receiver
\addindex \\latexonly
Starts a block of text that will be verbatim included in the
generated \f$\mbox{\LaTeX}\f$ documentation only. The block ends with a
- endlatexonly command.
+ \ref cmdendlatexonly "\\endlatexonly" command.
This command can be used to include \f$\mbox{\LaTeX}\f$ code that is too
complex for doxygen (i.e. images, formulas, special characters). You can
@@ -2348,8 +2408,9 @@ class Receiver
environment variables (like \$(HOME) ) are resolved inside a
\f$\mbox{\LaTeX}\f$-only block.
- \sa section \ref cmdlatexonly "\\latexonly"
- and section \ref cmdhtmlonly "\\htmlonly".
+ \sa section \ref cmdrtfonly "\\rtfonly",
+ section \ref cmdmanonly "\\manonly", and
+ section \ref cmdhtmlonly "\\htmlonly".
<hr>
\section cmdmanonly \\manonly
@@ -2357,15 +2418,16 @@ class Receiver
\addindex \\manonly
Starts a block of text that will be verbatim included in the
generated MAN documentation only. The block ends with a
- endmanonly command.
+ \ref cmdendmanonly "\\endmanonly" command.
This command can be used to include groff code directly into
MAN pages. You can use the \\htmlonly and \\latexonly and
\\endhtmlonly and \\endlatexonly pairs to provide proper
HTML and \f$\mbox{\LaTeX}\f$ alternatives.
- \sa section \ref cmdhtmlonly "\\htmlonly" and section
- \ref cmdlatexonly "\\latexonly".
+ \sa section \ref cmdhtmlonly "\\htmlonly",
+ section \ref cmdrtfonly "\\rtfonly", and
+ section \ref cmdlatexonly "\\latexonly".
<hr>
\section cmdli \\li { item-description }
@@ -2424,18 +2486,38 @@ class Receiver
Equivalent to \ref cmdc "\\c"
<hr>
+\section cmdrtfonly \\rtfonly
+
+ \addindex \\rtfonly
+ Starts a block of text that will be verbatim included in the
+ generated RTF documentation only. The block ends with a
+ \ref cmdendrtfonly "\\endrtfonly" command.
+
+ This command can be used to include RTF code that is too complex
+ for doxygen.
+
+ \b Note:
+ environment variables (like \$(HOME) ) are resolved inside a
+ RTF-only block.
+
+ \sa section \ref cmdmanonly "\\manonly", section
+ \ref cmdlatexonly "\\latexonly", and section
+ \ref cmdhtmlonly "\\htmlonly".
+
+<hr>
\section cmdverbatim \\verbatim
\addindex \\verbatim
- Starts a block of text that will be verbatim included in both the
- HTML and the
- \f$\mbox{\LaTeX}\f$ documentation. The block should end with a
- \\endverbatim block. All commands are disabled in a verbatim block.
+ Starts a block of text that will be verbatim included in
+ the documentation. The block should end with a
+ \ref cmdendverbatim "\\endverbatim" block.
+ All commands are disabled in a verbatim block.
\warning Make sure you include a \\endverbatim command for each
\\verbatim command or the parser will get confused!
- \sa section \ref cmdcode "\\code", and section \ref cmdverbinclude "\\verbinclude".
+ \sa section \ref cmdcode "\\code", and
+ section \ref cmdverbinclude "\\verbinclude".
<hr>
\section cmdxmlonly \\xmlonly
@@ -2454,16 +2536,16 @@ class Receiver
\section cmdbackslash \\\\
\addindex \\\\
- This command writes a backslash character (\\) to the HTML and
- \f$\mbox{\LaTeX}\f$ output. The backslash has to be escaped in some
+ This command writes a backslash character (\\) to the
+ output. The backslash has to be escaped in some
cases because doxygen uses it to detect commands.
<hr>
\section cmdat \\\@
\addindex \\\@
- This command writes an at-sign (\@) to the HTML and
- \f$\mbox{\LaTeX}\f$ output. The at-sign has to be escaped in some cases
+ This command writes an at-sign (\@) to the output.
+ The at-sign has to be escaped in some cases
because doxygen uses it to detect JavaDoc commands.
<hr>
diff --git a/doc/config.doc b/doc/config.doc
index eb8a8bb..e2b098e 100644
--- a/doc/config.doc
+++ b/doc/config.doc
@@ -67,6 +67,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_caller_graph CALLER_GRAPH
\refitem cfg_case_sense_names CASE_SENSE_NAMES
\refitem cfg_chm_file CHM_FILE
+\refitem cfg_chm_index_encoding CHM_INDEX_ENCODING
\refitem cfg_class_diagrams CLASS_DIAGRAMS
\refitem cfg_class_graph CLASS_GRAPH
\refitem cfg_collaboration_graph COLLABORATION_GRAPH
@@ -155,6 +156,9 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_hide_undoc_members HIDE_UNDOC_MEMBERS
\refitem cfg_hide_undoc_relations HIDE_UNDOC_RELATIONS
\refitem cfg_html_align_members HTML_ALIGN_MEMBERS
+\refitem cfg_html_colorstyle_gamma HTML_COLORSTYLE_GAMMA
+\refitem cfg_html_colorstyle_hue HTML_COLORSTYLE_HUE
+\refitem cfg_html_colorstyle_sat HTML_COLORSTYLE_SAT
\refitem cfg_html_dynamic_sections HTML_DYNAMIC_SECTIONS
\refitem cfg_html_file_extension HTML_FILE_EXTENSION
\refitem cfg_html_footer HTML_FOOTER
@@ -165,6 +169,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_idl_property_support IDL_PROPERTY_SUPPORT
\refitem cfg_ignore_prefix IGNORE_PREFIX
\refitem cfg_image_path IMAGE_PATH
+\refitem cfg_include_file_patterns INCLUDE_FILE_PATTERNS
\refitem cfg_include_graph INCLUDE_GRAPH
\refitem cfg_include_path INCLUDE_PATH
\refitem cfg_included_by_graph INCLUDED_BY_GRAPH
@@ -182,12 +187,14 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_latex_header LATEX_HEADER
\refitem cfg_latex_hide_indices LATEX_HIDE_INDICES
\refitem cfg_latex_output LATEX_OUTPUT
+\refitem cfg_latex_source_code LATEX_SOURCE_CODE
\refitem cfg_layout_file LAYOUT_FILE
\refitem cfg_macro_expansion MACRO_EXPANSION
\refitem cfg_makeindex_cmd_name MAKEINDEX_CMD_NAME
\refitem cfg_man_extension MAN_EXTENSION
\refitem cfg_man_links MAN_LINKS
\refitem cfg_man_output MAN_OUTPUT
+\refitem cfg_mathjax_relpath MATHJAX_RELPATH
\refitem cfg_max_dot_graph_depth MAX_DOT_GRAPH_DEPTH
\refitem cfg_max_initializer_lines MAX_INITIALIZER_LINES
\refitem cfg_mscfile_dirs MSCFILE_DIRS
@@ -257,6 +264,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_uml_look UML_LOOK
\refitem cfg_use_htags USE_HTAGS
\refitem cfg_use_inline_trees USE_INLINE_TREES
+\refitem cfg_use_mathjax USE_MATHJAX
\refitem cfg_use_pdflatex USE_PDFLATEX
\refitem cfg_verbatim_headers VERBATIM_HEADERS
\refitem cfg_warn_format WARN_FORMAT
@@ -401,18 +409,6 @@ followed by the descriptions of the tags grouped by category.
definition is used. Otherwise one should specify the include paths that
are normally passed to the compiler using the -I flag.
-
-
-\anchor cfg_case_sense_names
-<dt>\c CASE_SENSE_NAMES <dd>
- \addindex CASE_SENSE_NAMES
- If the \c CASE_SENSE_NAMES tag is set to \c NO then doxygen
- will only generate file names in lower-case letters. If set to
- \c YES upper-case letters are also allowed. This is useful if you have
- classes or files whose names only differ in case and if your file system
- supports case sensitive file names. Windows users are advised to set this
- option to NO.
-
\anchor cfg_short_names
<dt>\c SHORT_NAMES <dd>
\addindex SHORT_NAMES
@@ -710,6 +706,16 @@ function's detailed documentation block.
to \c NO (the default) then the documentation will be excluded.
Set it to \c YES to include the internal documentation.
+\anchor cfg_case_sense_names
+<dt>\c CASE_SENSE_NAMES <dd>
+ \addindex CASE_SENSE_NAMES
+ If the \c CASE_SENSE_NAMES tag is set to \c NO then doxygen
+ will only generate file names in lower-case letters. If set to
+ \c YES upper-case letters are also allowed. This is useful if you have
+ classes or files whose names only differ in case and if your file system
+ supports case sensitive file names. Windows users are advised to set this
+ option to NO.
+
\anchor cfg_hide_scope_names
<dt>\c HIDE_SCOPE_NAMES <dd>
\addindex HIDE_SCOPE_NAMES
@@ -861,6 +867,50 @@ function's detailed documentation block.
Namespaces page. This will remove the Namespaces entry from the Quick Index
and from the Folder Tree View (if specified). The default is \c YES.
+\anchor cfg_file_version_filter
+<dt>\c FILE_VERSION_FILTER <dd>
+ \addindex FILE_VERSION_FILTER
+ The \c FILE_VERSION_FILTER tag can be used to specify a program or script that
+ doxygen should invoke to get the current version for each file (typically from the
+ version control system). Doxygen will invoke the program by executing (via
+ popen()) the command <code>command input-file</code>, where \c command is
+ the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name
+ of an input file provided by doxygen.
+ Whatever the program writes to standard output is used as the file version.
+
+Example of using a shell script as a filter for Unix:
+\verbatim
+ FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"
+\endverbatim
+
+Example shell script for CVS:
+\verbatim
+#!/bin/sh
+cvs status $1 | sed -n 's/^[ \]*Working revision:[ \t]*\([0-9][0-9\.]*\).*/\1/p'
+\endverbatim
+
+Example shell script for Subversion:
+\verbatim
+#!/bin/sh
+svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'
+\endverbatim
+
+Example filter for ClearCase:
+\verbatim
+FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
+\endverbatim
+
+\anchor cfg_layout_file
+<dt>\c LAYOUT_FILE <dd>
+ The \c LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
+ doxygen. The layout file controls the global structure of the generated output files
+ in an output format independent way. The create the layout file that represents
+ doxygen's defaults, run doxygen with the -l option. You can optionally specify a
+ file name after the option, if omitted DoxygenLayout.xml will be used as the name
+ of the layout file. Note that if you run doxygen from a directory containing
+ a file called DoxygenLayout.xml, doxygen will parse it automatically even if
+ the \c LAYOUT_FILE tag is left empty.
+
</dl>
\section messages_input Options related to warning and progress messages
@@ -956,54 +1006,11 @@ function's detailed documentation block.
(like \c *.cpp and \c *.h ) to filter out the source-files
in the directories. If left blank the following patterns are tested:
<code>
- *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
- *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
+ *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
+ *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
+ *.f90 *.f *.vhd *.vhdl
</code>
-\anchor cfg_file_version_filter
-<dt>\c FILE_VERSION_FILTER <dd>
- \addindex FILE_VERSION_FILTER
- The \c FILE_VERSION_FILTER tag can be used to specify a program or script that
- doxygen should invoke to get the current version for each file (typically from the
- version control system). Doxygen will invoke the program by executing (via
- popen()) the command <code>command input-file</code>, where \c command is
- the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name
- of an input file provided by doxygen.
- Whatever the program writes to standard output is used as the file version.
-
-Example of using a shell script as a filter for Unix:
-\verbatim
- FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"
-\endverbatim
-
-Example shell script for CVS:
-\verbatim
-#!/bin/sh
-cvs status $1 | sed -n 's/^[ \]*Working revision:[ \t]*\([0-9][0-9\.]*\).*/\1/p'
-\endverbatim
-
-Example shell script for Subversion:
-\verbatim
-#!/bin/sh
-svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'
-\endverbatim
-
-Example filter for ClearCase:
-\verbatim
-FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
-\endverbatim
-
-\anchor cfg_layout_file
-<dt>\c LAYOUT_FILE <dd>
- The \c LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
- doxygen. The layout file controls the global structure of the generated output files
- in an output format independent way. The create the layout file that represents
- doxygen's defaults, run doxygen with the -l option. You can optionally specify a
- file name after the option, if omitted DoxygenLayout.xml will be used as the name
- of the layout file. Note that if you run doxygen from a directory containing
- a file called DoxygenLayout.xml, doxygen will parse it automatically even if
- the \c LAYOUT_FILE tag is left empty.
-
\anchor cfg_recursive
<dt>\c RECURSIVE <dd>
\addindex RECURSIVE
@@ -1307,6 +1314,33 @@ AClass::ANamespace, ANamespace::*Test
See also section \ref doxygen_usage for information on how to generate
the style sheet that doxygen normally uses.
+\anchor cfg_html_colorstyle_hue
+<dt>\c HTML_COLORSTYLE_HUE <dd>
+ \addindex HTML_COLOR_STYLE_HUE
+ The \c HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+ Doxygen will adjust the colors in the stylesheet and background images
+ according to this color. Hue is specified as an angle on a colorwheel,
+ see http://en.wikipedia.org/wiki/Hue for more information.
+ For instance the value 0 represents red, 60 is yellow, 120 is green,
+ 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+ The allowed range is 0 to 359.
+
+\anchor cfg_html_colorstyle_sat
+<dt>\c HTML_COLORSTYLE_SAT <dd>
+ \addindex HTML_COLORSTYLE_SAT
+ The \c HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
+ the colors in the HTML output. For a value of 0 the output will use
+ grayscales only. A value of 255 will produce the most vivid colors.
+
+\anchor cfg_html_colorstyle_gamma
+<dt>\c HTML_COLORSTYLE_GAMMA <dd>
+ The \c HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
+ the luminance component of the colors in the HTML output. Values below
+ 100 gradually make the output lighter, whereas values above 100 make
+ the output darker. The value divided by 100 is the actual gamma applied,
+ so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
+ and 100 does not change the gamma.
+
\anchor cfg_html_timestamp
<dt>\c HTML_TIMESTAMP <dd>
\addindex HTML_TIMESTAMP
@@ -1417,6 +1451,13 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
controls if a separate .chi index file is generated (<code>YES</code>) or that
it should be included in the master .chm file (<code>NO</code>).
+\anchor cfg_chm_index_encoding
+<dt>\c CHM_INDEX_ENCODING <dd>
+ \addindex CHM_INDEX_ENCODING
+ If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c CHM_INDEX_ENCODING
+ is used to encode HtmlHelp index (hhk), content (hhc) and project file
+ content.
+
\anchor cfg_binary_toc
<dt>\c BINARY_TOC <dd>
\addindex BINARY_TOC
@@ -1610,6 +1651,28 @@ and Class Hierarchy pages using a tree view instead of an ordered list.
not supported properly for IE 6.0, but are supported on all modern browsers.
Note that when changing this option you need to delete any form_*.png files
in the HTML output before the changes have effect.
+
+\anchor cfg_use_mathjax
+<dt>\c USE_MATHJAX <dd>
+ \addindex USE_MATHJAX
+ Enable the \c USE_MATHJAX option to render LaTeX formulas using MathJax
+ (see http://www.mathjax.org) which uses client side Javascript for the
+ rendering instead of using prerendered bitmaps. Use this if you do not
+ have LaTeX installed or if you want to formulas look prettier in the HTML
+ output. When enabled you also need to install MathJax separately and
+ configure the path to it using the \ref cfg_mathjax_relpath "MATHJAX_RELPATH" option.
+
+\anchor cfg_mathjax_relpath
+<dt>\c MATHJAX_RELPATH <dd>
+ \addindex MATHJAX_RELPATH
+ When MathJax is enabled you need to specify the location relative to the
+ HTML output directory using the \c MATHJAX_RELPATH option. The destination
+ directory should contain the MathJax.js script. For instance, if the mathjax
+ directory is located at the same level as the HTML output directory, then
+ \c MATHJAX_RELPATH should be <code>../mathjax</code>. The default value points to
+ the http://www.mathjax.org site, so you can quickly see the result without installing
+ MathJax, but it is strongly recommended to install a local copy of MathJax
+ before deployment.
</dl>
\section latex_output LaTeX related options
@@ -1735,6 +1798,13 @@ EXTRA_PACKAGES = times
include the index chapters (such as File Index, Compound Index, etc.)
in the output.
+\anchor cfg_latex_source_code
+ <dt>\c LATEX_SOURCE_CODE <dd>
+ If \c LATEX_SOURCE_CODE is set to \c YES then doxygen will include
+ source code with syntax highlighting in the LaTeX output.
+ Note that which sources are shown also depends on other settings
+ such as \ref cfg_source_browser "SOURCE_BROWSER".
+
</dl>
\section rtf_output RTF related options
\anchor cfg_generate_rtf
@@ -1957,6 +2027,14 @@ EXTRA_PACKAGES = times
contain include files that are not input files but should be processed by
the preprocessor.
+\anchor cfg_include_file_patterns
+<dt>\c INCLUDE_FILE_PATTERNS <dd>
+ \addindex INCLUDE_FILE_PATTERNS
+ You can use the \c INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+ patterns (like *.h and *.hpp) to filter out the header-files in the
+ directories. If left blank, the patterns specified with \c FILE_PATTERNS will
+ be used.
+
\anchor cfg_predefined
<dt>\c PREDEFINED <dd>
\addindex PREDEFINED
@@ -2109,24 +2187,6 @@ The default size is 10pt.
different font using \c DOT_FONTNAME you can set the path where dot
can find it using this tag.
-<dt>\c DOT_FONTNAME <dd>
- \addindex DOT_FONTNAME
- By default doxygen will write a font called FreeSans.ttf to the output
- directory and reference it in all dot files that doxygen generates. This
- font does not include all possible unicode characters however, so when you need
- these (or just want a differently looking font) you can specify the font name
- using \c DOT_FONTNAME. You need need to make sure dot is able to find the font,
- which can be done by putting it in a standard location or by setting the \c DOTFONTPATH
- environment variable or by setting \c DOT_FONTPATH to the directory containing
- the font.
-
-<dt>\c DOT_FONTPATH <dd>
- \addindex DOT_FONTPATH
- By default doxygen will tell dot to use the output directory to look for the
- FreeSans.ttf font (which doxygen will put there itself). If you specify a
- different font using \c DOT_FONTNAME you can set the path where dot
- can find it using this tag.
-
\anchor cfg_class_graph
<dt>\c CLASS_GRAPH <dd>
\addindex CLASS_GRAPH
diff --git a/doc/doxygen_usage.doc b/doc/doxygen_usage.doc
index 8f23b22..1116873 100644
--- a/doc/doxygen_usage.doc
+++ b/doc/doxygen_usage.doc
@@ -75,7 +75,7 @@ doxygen -w latex header.tex doxygen.sty
\endverbatim
If you need non-default options (for instance to use pdflatex) you need
to make a config file with those options set correctly and then specify
-that config file as the forth argument.
+that config file as the third argument.
<li>For RTF output, you can generate the default style sheet file (see
\ref cfg_rtf_stylesheet_file "RTF_STYLESHEET_FILE") using:
\verbatim
diff --git a/doc/formulas.doc b/doc/formulas.doc
index aa2ef91..127be44 100644
--- a/doc/formulas.doc
+++ b/doc/formulas.doc
@@ -29,6 +29,11 @@ have the following tools installed
<li>\c gs: the GhostScript interpreter for converting PostScript files
to bitmaps. I have used Aladdin GhostScript 8.0 for testing.
</ul>
+For the HTML output there is also an alternative solution using
+<a href="http://www.mathjax.org">MathJax</a> which does not
+require the above tools. If you enable \ref cfg_use_mathjax "USE_MATHJAX" in
+the config then the latex formulas will be copied to the HTML "as is" and a
+client side javascript will parse them and turn them into (interactive) images.
There are three ways to include formulas in the documentation.
<ol>
diff --git a/doc/language.doc b/doc/language.doc
index ba65745..6998f67 100644
--- a/doc/language.doc
+++ b/doc/language.doc
@@ -122,7 +122,7 @@ when the translator was updated.
<td>Esperanto</td>
<td>Ander Martinez</td>
<td>dwarfnauko at gmail dot com</td>
- <td>1.6.3</td>
+ <td>up-to-date</td>
</tr>
<tr bgcolor="#ffffff">
<td>Finnish</td>
@@ -222,8 +222,8 @@ when the translator was updated.
</tr>
<tr bgcolor="#ffffff">
<td>Portuguese</td>
- <td>Rui Godinho Lopes</td>
- <td><span style="color: brown">[resigned]</span></td>
+ <td>Rui Godinho Lopes<br/><span style="color: red; background-color: yellow">-- searching for the maintainer --</span></td>
+ <td><span style="color: brown">[resigned]</span><br/><span style="color: brown">[Please, try to help to find someone.]</span></td>
<td>1.3.3</td>
</tr>
<tr bgcolor="#ffffff">
@@ -334,7 +334,7 @@ when the translator was updated.
\hline
English & Dimitri van Heesch & {\tt\tiny dimitri at stack dot nl} & up-to-date \\
\hline
- Esperanto & Ander Martinez & {\tt\tiny dwarfnauko at gmail dot com} & 1.6.3 \\
+ Esperanto & Ander Martinez & {\tt\tiny dwarfnauko at gmail dot com} & up-to-date \\
\hline
Finnish & Antti Laine & {\tt\tiny antti dot a dot laine at tut dot fi} & 1.6.0 \\
\hline
@@ -377,10 +377,11 @@ when the translator was updated.
Persian & Ali Nadalizadeh & {\tt\tiny nadalizadeh at gmail dot com} & up-to-date \\
\hline
Polish & Piotr Kaminski & {\tt\tiny [unreachable] Piotr dot Kaminski at ctm dot gdynia dot pl} & 1.6.3 \\
- ~ & Grzegorz Kowal & {\tt\tiny [unreachable] g_kowal at poczta dot onet dot pl} & ~ \\
+ ~ & Grzegorz Kowal & {\tt\tiny [unreachable] g\_kowal at poczta dot onet dot pl} & ~ \\
~ & Krzysztof Kral & {\tt\tiny krzysztof dot kral at gmail dot com} & ~ \\
\hline
Portuguese & Rui Godinho Lopes & {\tt\tiny [resigned] rgl at ruilopes dot com} & 1.3.3 \\
+ ~ & -- searching for the maintainer -- & {\tt\tiny [Please, try to help to find someone.]} & ~ \\
\hline
Romanian & Ionut Dumitrascu & {\tt\tiny reddumy at yahoo dot com} & 1.6.0 \\
~ & Alexandru Iosup & {\tt\tiny aiosup at yahoo dot com} & ~ \\
diff --git a/doc/maintainers.txt b/doc/maintainers.txt
index ec4480a..2205119 100644
--- a/doc/maintainers.txt
+++ b/doc/maintainers.txt
@@ -111,6 +111,7 @@ Krzysztof Kral: krzysztof dot kral at gmail dot com
TranslatorPortuguese
Rui Godinho Lopes: [resigned] rgl at ruilopes dot com
+-- searching for the maintainer --: [Please, try to help to find someone.]
TranslatorRomanian
Ionut Dumitrascu: reddumy at yahoo dot com
diff --git a/doc/translator.py b/doc/translator.py
index 32c70d5..5a78ee2 100644
--- a/doc/translator.py
+++ b/doc/translator.py
@@ -59,7 +59,9 @@
2010/08/20 - maintainers.txt to UTF-8, related processin of unicode strings
- [any mark] introduced instead of [unreachable] only
- marks hihglighted in HTML
- 2010/09/30 - Highlighting in what will be the table in langhowto.html modified.
+ 2010/08/30 - Highlighting in what will be the table in langhowto.html modified.
+ 2010/09/27 - The underscore in \latexonly part of the generated language.doc
+ was prefixed by backslash (was LaTeX related error).
"""
from __future__ import generators
@@ -1955,12 +1957,12 @@ class TrManager:
if obj.status == 'En':
# Check whether there is the coupled non-English.
classId = obj.classId[:-2]
- if self.__translDic.has_key(classId):
+ if classId in self.__translDic:
langNE = self.__translDic[classId].langReadable
maintainer = u'see the %s language' % langNE
email = u'~'
- if not maintainer and self.__maintainersDic.has_key(obj.classId):
+ if not maintainer and (obj.classId in self.__maintainersDic):
lm = [ m[0] for m in self.__maintainersDic[obj.classId] ]
maintainer = maintainers[0][0]
email = maintainers[0][1]
@@ -1969,8 +1971,11 @@ class TrManager:
# Use the template to produce the line of the table and insert
# the hline plus the constructed line into the table content.
+ # The underscore character must be escaped.
trlst.append(u'\n \\hline')
- trlst.append(latexLineTpl % (lang, maintainer, email, status))
+ s = latexLineTpl % (lang, maintainer, email, status)
+ s = s.replace(u'_', u'\\_')
+ trlst.append(s)
# List the other maintainers for the language. Do not set
# lang and status for them.
@@ -1979,7 +1984,9 @@ class TrManager:
for m in maintainers[1:]:
maintainer = m[0]
email = m[1]
- trlst.append(latexLineTpl % (lang, maintainer, email, status))
+ s = latexLineTpl % (lang, maintainer, email, status)
+ s = s.replace(u'_', u'\\_')
+ trlst.append(s)
# Join the table lines and insert into the template.
latexTable = latexTableTpl % (u''.join(trlst))
diff --git a/doc/translator_report.txt b/doc/translator_report.txt
index ba7f4ba..b5a5168 100644
--- a/doc/translator_report.txt
+++ b/doc/translator_report.txt
@@ -10,7 +10,7 @@ Persian, Polish, Portuguese, Romanian, Russian, Serbian,
SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian,
and Vietnamese.
-Of them, 11 translators are up-to-date, 27 translators are based on
+Of them, 12 translators are up-to-date, 26 translators are based on
some adapter class, and 2 are English based.
----------------------------------------------------------------------
@@ -24,6 +24,7 @@ still may be some details listed even for them:
TranslatorCzech
TranslatorDutch
TranslatorEnglish
+ TranslatorEsperanto
TranslatorGreek
TranslatorKorean -- Change the base class to Translator.
TranslatorPersian -- The MAX_DOT_GRAPH_HEIGHT found in trLegendDocs()
@@ -42,7 +43,6 @@ must be implemented to become up-to-date:
TranslatorFrench 1.6.3 4 methods to implement (1 %)
Note: Reimplementation using UTF-8 suggested.
- TranslatorEsperanto 1.6.3 4 methods to implement (1 %)
TranslatorCatalan 1.6.3 4 methods to implement (1 %)
TranslatorVietnamese 1.6.0 9 methods to implement (4 %)
TranslatorSwedish 1.6.0 9 methods to implement (4 %)
@@ -288,19 +288,6 @@ TranslatorDanish (TranslatorAdapter_1_5_4) 31 methods to implement (13 %)
virtual QCString trSubprogramDocumentation()
-TranslatorEsperanto (TranslatorAdapter_1_6_3) 4 methods to implement (1 %)
--------------------
-
- Implements 221 of the required methods (98 %).
-
- Missing methods (should be implemented):
-
- virtual QCString trDateTime(int year, int month, int day, int dayOfWeek, int hour, int minutes, int seconds, bool includeTime)
- virtual QCString trFileIn(const char * name)
- virtual QCString trDirDependency(const char * name)
- virtual QCString trIncludesFileIn(const char * name)
-
-
TranslatorFinnish (TranslatorAdapter_1_6_0) 9 methods to implement (4 %)
-----------------
diff --git a/src/commentscan.l b/src/commentscan.l
index d4f7f0e..5926d7c 100644
--- a/src/commentscan.l
+++ b/src/commentscan.l
@@ -211,7 +211,7 @@ static DocCmdMap docCmdMap[] =
{ "copydetails", 0, TRUE },
{ "date", 0, TRUE },
{ "dotfile", 0, TRUE },
- { "htmlinclude", 0, TRUE },
+ { "htmlinclude", 0, FALSE },
{ "image", 0, TRUE },
{ "include", 0, TRUE },
{ "includelineno", 0, TRUE },
@@ -236,7 +236,7 @@ static DocCmdMap docCmdMap[] =
{ "throw", 0, TRUE },
{ "throws", 0, TRUE },
{ "until", 0, TRUE },
- { "verbinclude", 0, TRUE },
+ { "verbinclude", 0, FALSE },
{ "version", 0, TRUE },
{ "warning", 0, TRUE },
{ 0, 0, FALSE }
@@ -720,6 +720,7 @@ static inline void setOutput(OutputContext ctx)
else
{
pOutputString = &current->doc;
+ inContext = OutputDoc; // need to switch to detailed docs, see bug 631380
}
break;
case OutputXRef:
@@ -2556,7 +2557,7 @@ bool parseCommentBlock(/* in */ ParserInterface *parser,
newEntryNeeded = needNewEntry;
// if we did not proceed during this call, it does not make
- // sence to continue, since we get stuck. See bug 567346 for situations
+ // sense to continue, since we get stuck. See bug 567346 for situations
// were this happens
if (parseMore && position==inputPosition) parseMore=FALSE;
diff --git a/src/config.xml b/src/config.xml
index 8919ab3..6441508 100644
--- a/src/config.xml
+++ b/src/config.xml
@@ -555,8 +555,9 @@ If the value of the INPUT tag contains directories, you can use the
FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
and *.h) to filter out the source-files in the directories. If left
blank the following patterns are tested:
-*.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
-*.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+*.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
+*.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
+*.f90 *.f *.vhd *.vhdl
'>
<value name='*.c'/>
<value name='*.cc'/>
@@ -984,6 +985,24 @@ not supported properly for IE 6.0, but are supported on all modern browsers.
Note that when changing this option you need to delete any form_*.png files
in the HTML output before the changes have effect.
' defval='1' depends='GENERATE_HTML'/>
+ <option type='bool' id='USE_MATHJAX' docs='
+Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
+(see http://www.mathjax.org) which uses client side Javascript for the
+rendering instead of using prerendered bitmaps. Use this if you do not
+have LaTeX installed or if you want to formulas look prettier in the HTML
+output. When enabled you also need to install MathJax separately and
+configure the path to it using the MATHJAX_RELPATH option.
+' defval='0'/>
+ <option type='string' id='MATHJAX_RELPATH' docs='
+When MathJax is enabled you need to specify the location relative to the
+HTML output directory using the MATHJAX_RELPATH option. The destination
+directory should contain the MathJax.js script. For instance, if the mathjax
+directory is located at the same level as the HTML output directory, then
+MATHJAX_RELPATH should be ../mathjax. The default value points to the
+mathjax.org site, so you can quickly see the result without installing
+MathJax, but it is strongly recommended to install a local copy of MathJax
+before deployment.
+' defval='http://www.mathjax.org/mathjax'/>
<option type='bool' id='SEARCHENGINE' docs='
When the SEARCHENGINE tag is enabled doxygen will generate a search box
for the HTML output. The underlying search engine uses javascript
diff --git a/src/configoptions.cpp b/src/configoptions.cpp
index 24c0375..0dbee23 100644
--- a/src/configoptions.cpp
+++ b/src/configoptions.cpp
@@ -402,7 +402,7 @@ void addConfigOptions(Config *cfg)
"causing a significant performance penality.\n"
"If the system has enough physical memory increasing the cache will improve the\n"
"performance by keeping more symbols in memory. Note that the value works on\n"
- "a logarithmic scale so increasing the size by one will rougly double the\n"
+ "a logarithmic scale so increasing the size by one will roughly double the\n"
"memory usage. The cache size is given by this formula:\n"
"2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,\n"
"corresponding to a cache size of 2^16 = 65536 symbols",
@@ -801,8 +801,9 @@ void addConfigOptions(Config *cfg)
"FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp\n"
"and *.h) to filter out the source-files in the directories. If left\n"
"blank the following patterns are tested:\n"
- "*.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx\n"
- "*.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90"
+ "*.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh\n"
+ "*.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py\n"
+ "*.f90 *.f *.vhd *.vhdl"
);
cl->addValue("*.c");
cl->addValue("*.cc");
@@ -1461,6 +1462,29 @@ void addConfigOptions(Config *cfg)
cb->addDependency("GENERATE_HTML");
//----
cb = cfg->addBool(
+ "USE_MATHJAX",
+ "Enable the USE_MATHJAX option to render LaTeX formulas using MathJax\n"
+ "(see http://www.mathjax.org) which uses client side Javascript for the\n"
+ "rendering instead of using prerendered bitmaps. Use this if you do not\n"
+ "have LaTeX installed or if you want to formulas look prettier in the HTML\n"
+ "output. When enabled you also need to install MathJax separately and\n"
+ "configure the path to it using the MATHJAX_RELPATH option.",
+ FALSE
+ );
+ //----
+ cs = cfg->addString(
+ "MATHJAX_RELPATH",
+ "When MathJax is enabled you need to specify the location relative to the\n"
+ "HTML output directory using the MATHJAX_RELPATH option. The destination\n"
+ "directory should contain the MathJax.js script. For instance, if the mathjax\n"
+ "directory is located at the same level as the HTML output directory, then\n"
+ "MATHJAX_RELPATH should be ../mathjax. The default value points to the mathjax.org site, so you can quickly see the result without installing\n"
+ "MathJax, but it is strongly recommended to install a local copy of MathJax\n"
+ "before deployment."
+ );
+ cs->setDefaultValue("http://www.mathjax.org/mathjax");
+ //----
+ cb = cfg->addBool(
"SEARCHENGINE",
"When the SEARCHENGINE tag is enabled doxygen will generate a search box\n"
"for the HTML output. The underlying search engine uses javascript\n"
@@ -1480,7 +1504,7 @@ void addConfigOptions(Config *cfg)
"using Javascript. Doxygen will generate the search PHP script and index\n"
"file to put on the web server. The advantage of the server\n"
"based approach is that it scales better to large projects and allows\n"
- "full text search. The disadvances is that it is more difficult to setup\n"
+ "full text search. The disadvantages are that it is more difficult to setup\n"
"and does not have live searching capabilities.",
FALSE
);
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 4d78e16..3efe75d 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -8628,6 +8628,7 @@ static void parseFiles(Entry *root,EntryNav *rootNav)
static QCString resolveSymlink(QCString path)
{
int sepPos=0;
+ int oldPos=0;
QFileInfo fi;
QDict<void> nonSymlinks;
QDict<void> known;
@@ -8651,7 +8652,8 @@ static QCString resolveSymlink(QCString path)
if (fi.isSymLink())
{
QString target = fi.readLink();
- if (QFileInfo(target).isRelative())
+ bool isRelative = QFileInfo(target).isRelative();
+ if (isRelative)
{
target = QDir::cleanDirPath(oldPrefix+"/"+target.data());
}
@@ -8667,12 +8669,22 @@ static QCString resolveSymlink(QCString path)
sepPos = 0;
if (known.find(result)) return QCString(); // recursive symlink!
known.insert(result,(void*)0x8);
+ if (isRelative)
+ {
+ sepPos = oldPos;
+ }
+ else // link to absolute path
+ {
+ sepPos = 0;
+ oldPrefix = "/";
+ }
}
else
{
nonSymlinks.insert(prefix,(void*)0x8);
+ oldPrefix = prefix;
}
- oldPrefix = prefix;
+ oldPos = sepPos;
}
}
while (sepPos!=-1);
@@ -10473,7 +10485,8 @@ void generateOutput()
//writeDirDependencyGraph(Config_getString("HTML_OUTPUT"));
- if (Doxygen::formulaList.count()>0 && Config_getBool("GENERATE_HTML"))
+ if (Doxygen::formulaList.count()>0 && Config_getBool("GENERATE_HTML")
+ && !Config_getBool("USE_MATHJAX"))
{
msg("Generating bitmaps for formulas in HTML...\n");
Doxygen::formulaList.generateBitmaps(Config_getString("HTML_OUTPUT"));
diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp
index 7de6e52..cfe229e 100644
--- a/src/htmldocvisitor.cpp
+++ b/src/htmldocvisitor.cpp
@@ -490,14 +490,36 @@ void HtmlDocVisitor::visit(DocFormula *f)
forceEndParagraph(f);
m_t << "<p class=\"formulaDsp\">" << endl;
}
- m_t << "<img class=\"formula"
+
+ if (Config_getBool("USE_MATHJAX"))
+ {
+ QCString text = f->text();
+ bool closeInline = FALSE;
+ if (!bDisplay && !text.isEmpty() && text.at(0)=='$' &&
+ text.at(text.length()-1)=='$')
+ {
+ closeInline=TRUE;
+ text = text.mid(1,text.length()-2);
+ m_t << "\\(";
+ }
+ m_t << convertToHtml(text);
+ if (closeInline)
+ {
+ m_t << "\\)";
+ }
+ }
+ else
+ {
+ m_t << "<img class=\"formula"
<< (bDisplay ? "Dsp" : "Inl");
- m_t << "\" alt=\"";
- filterQuotedCdataAttr(f->text());
- m_t << "\"";
- /// @todo cache image dimensions on formula generation and give height/width
- /// for faster preloading and better rendering of the page
- m_t << " src=\"" << f->relPath() << f->name() << ".png\"/>";
+ m_t << "\" alt=\"";
+ filterQuotedCdataAttr(f->text());
+ m_t << "\"";
+ /// @todo cache image dimensions on formula generation and give height/width
+ /// for faster preloading and better rendering of the page
+ m_t << " src=\"" << f->relPath() << f->name() << ".png\"/>";
+
+ }
if (bDisplay)
{
m_t << endl << "</p>" << endl;
diff --git a/src/htmlgen.cpp b/src/htmlgen.cpp
index 991bab9..e682583 100644
--- a/src/htmlgen.cpp
+++ b/src/htmlgen.cpp
@@ -902,6 +902,24 @@ static void writeDefaultHeaderFile(FTextStream &t, const char *title,
t << "<link href=\"" << relPathStr << "search/search.css\" rel=\"stylesheet\" type=\"text/css\"/>\n";
t << "<script type=\"text/javaScript\" src=\"" << relPathStr << "search/search.js\"></script>\n";
}
+ if (Config_getBool("USE_MATHJAX"))
+ {
+ QCString path = Config_getString("MATHJAX_RELPATH");
+ if (!path.isEmpty() && path.at(path.length()-1)!='/')
+ {
+ path+="/";
+ }
+ if (path.isEmpty() || path.left(2)=="..") // relative path
+ {
+ path.prepend(relPathStr);
+ }
+ t << "<script src=\"" << path << "MathJax.js\">\n";
+ t << " MathJax.Hub.Config({\n";
+ t << " extensions: [\"tex2jax.js\"],\n";
+ t << " jax: [\"input/TeX\",\"output/HTML-CSS\"],\n";
+ t << "});\n";
+ t << "</script>\n";
+ }
t << "<link ";
t << "href=\"";
if (Config_getString("HTML_STYLESHEET").isEmpty())
diff --git a/src/htmlhelp.cpp b/src/htmlhelp.cpp
index 32077e7..c4d4e9e 100644
--- a/src/htmlhelp.cpp
+++ b/src/htmlhelp.cpp
@@ -483,6 +483,7 @@ void HtmlHelp::createProjectFile()
t << s << endl;
s = indexFiles.next();
}
+ // items not found by the html help compiler scan.
t << "tabs.css" << endl;
t << "tab_a.png" << endl;
t << "tab_b.png" << endl;
@@ -490,10 +491,11 @@ void HtmlHelp::createProjectFile()
t << "tab_s.png" << endl;
t << "nav_h.png" << endl;
t << "nav_f.png" << endl;
+ t << "bc_s.png" << endl;
if (Config_getBool("HTML_DYNAMIC_SECTIONS"))
{
- t << "open.gif" << endl;
- t << "closed.gif" << endl;
+ t << "open.png" << endl;
+ t << "closed.png" << endl;
}
f.close();
}
diff --git a/src/latexdocvisitor.cpp b/src/latexdocvisitor.cpp
index 60dc956..46b9299 100644
--- a/src/latexdocvisitor.cpp
+++ b/src/latexdocvisitor.cpp
@@ -1411,6 +1411,10 @@ void LatexDocVisitor::startDotFile(const QCString &fileName,
{
m_t << "[height=" << height << "]";
}
+ else
+ {
+ m_t << "[width=\\textwidth]";
+ }
m_t << "{" << baseName << "}";
if (hasCaption)
@@ -1474,6 +1478,10 @@ void LatexDocVisitor::startMscFile(const QCString &fileName,
{
m_t << "[height=" << height << "]";
}
+ else
+ {
+ m_t << "[width=\\textwidth]";
+ }
m_t << "{" << baseName << "}";
if (hasCaption)
diff --git a/src/pre.l b/src/pre.l
index db5bf28..7bb5c1d 100644
--- a/src/pre.l
+++ b/src/pre.l
@@ -1863,6 +1863,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
}
}
<SkipCommand>"endif" {
+ g_expectGuard = FALSE;
decrLevel();
if (--g_ifcount<0)
{
@@ -2629,7 +2630,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output)
BEGIN( Start );
- g_expectGuard = TRUE;
+ g_expectGuard = guessSection(fileName)==Entry::HEADER_SEC;
g_lastGuardName.resize(0);
g_guardExpr.resize(0);
diff --git a/src/translator_eo.h b/src/translator_eo.h
index 59d47ec..2dc830b 100644
--- a/src/translator_eo.h
+++ b/src/translator_eo.h
@@ -14,6 +14,8 @@
* input used in their production; they are not affected by this license.
*
*/
+
+ /* Tradukita kaj ĝisdatigata de Ander Martinez. */
#ifndef TRANSLATOR_EO_H
#define TRANSLATOR_EO_H
@@ -40,7 +42,7 @@
Translator class (by the local maintainer) when the localized
translator is made up-to-date again.
*/
-class TranslatorEsperanto : public TranslatorAdapter_1_6_3
+class TranslatorEsperanto : public Translator
{
public:
@@ -1809,6 +1811,70 @@ class TranslatorEsperanto : public TranslatorAdapter_1_6_3
return "Nenia kongruo";
}
+//////////////////////////////////////////////////////////////////////////
+// new since 1.6.3 (missing items for the directory pages)
+//////////////////////////////////////////////////////////////////////////
+
+ /*! introduction text for the directory dependency graph */
+ virtual QCString trDirDependency(const char *name)
+ {
+ return (QCString)"Diagramo de dependecoj dosierujaj por "+name;
+ }
+
+ /*! when clicking a directory dependency label, a page with a
+ * table is shown. The heading for the first column mentions the
+ * source file that has a relation to another file.
+ */
+ virtual QCString trFileIn(const char *name)
+ {
+ return (QCString)"Dosiero en "+name;
+ }
+
+ /*! when clicking a directory dependency label, a page with a
+ * table is shown. The heading for the second column mentions the
+ * destination file that is included.
+ */
+ virtual QCString trIncludesFileIn(const char *name)
+ {
+ return (QCString)"Inkluzivas dosieron en "+name;
+ }
+
+ /** Compiles a date string.
+ * @param year Year in 4 digits
+ * @param month Month of the year: 1=January
+ * @param day Day of the Month: 1..31
+ * @param dayOfWeek Day of the week: 1=Monday..7=Sunday
+ * @param hour Hour of the day: 0..23
+ * @param minutes Minutes in the hour: 0..59
+ * @param seconds Seconds within the minute: 0..59
+ * @param includeTime Include time in the result string?
+ */
+ virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
+ int hour,int minutes,int seconds,
+ bool includeTime)
+ {
+ static const char *days[] = { "lundo","mardo","merkredo",
+ "ĵaŭdo","vendredo","sabato",
+ "dimanĉo" };
+
+ static const char *months[] = { "Januaro", "Februaro", "Marto",
+ "Aprilo", "Majo", "Junio",
+ "Julio", "Aŭgusto", "Septembro",
+ "Oktobro", "Novembro",
+ "Decembro"
+ };
+ QCString sdate;
+ sdate.sprintf("%s, %d-a de %s %d",days[dayOfWeek-1],day,months[month-1],year);
+ if (includeTime)
+ {
+ QCString stime;
+ stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
+ sdate+=stime;
+ }
+ return sdate;
+ }
+
+
};
#endif