| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Markdown processing was done after the normal tag processing and splitting the comment in brief, doc, inline. This resulted in that sectioning parts (i.e. e.g. ==== conversion to <h1> ) remained in the brief description whilst similar constructs with HTML commands landed in the doc (details) description. By performing the markdown on the entire comment block this problem has been overcome.
commentscan.l
- change moment of calling markdown processing
- skip start spaces and subsequent empty lines in markdown processed code
- small debug correction
markdown.cpp
- don't convert the dashes in <!-- and --> (HTML type comment)
- small debug correction
054 test
- update of example for compatibility and adding part about none code result.
doxygen.cpp
- small textual comment correction
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a C++11 `enum class` was present in an anonymous namespace (usually
in *.cpp files), the XML output was emitting warnings similar to the
following:
Internal inconsistency: member False does not belong to any container!
And the XML output was rendering bogus IDs for enum values starting with
`dummy_`, such as:
dummy_1a96ab6574751fdf6a53ceec8a3896c45daf8320b26d30ab433c5a54546d21f414c
The fix is to call memberOutputFileBase() on the enumeration itself and
not on the enum value, that way it provides correct file base that
corresponds to file base of the enumeration. There's also a new test
that checks this.
Note: this assumes that enum values belong to the same compound as enums
themselves. In my experience that was always the case and there's no
broken test after this change, so I hope I didn't break anything.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* testing/069_link_variadic_template.cpp: new file, @link regression
test for variadic template function
* testing/069/069__link__variadic__template_8cpp.xml: new file, expected
@link regression test result for variadic template function
* testing/070_ref_variadic_template.cpp: new file, @ref regression
test for variadic template function
* testing/070/070__ref__variadic__template_8cpp.xml: new file, expected
@ref regression test result for variadic template function
At the time of writing, the part between <> is totally ignored:
func<Args...>(Args... args) is interpreted as func(Args... args).
Beware that a function parameter with either a & or * operator, e.g.
'const Args&... args', requires @link and @ref to use such parameter
as verbatim, i.e. {@link func(const Args&... args)}. At the time of
writing, the form {@link func(const Args&...)} will fail, unless the
function parameter was declared just as 'const Args&...'.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* testing/067_link_varargs.cpp: new file, @link regression test for
variadic function arguments '...'
* testing/067/067__link__varargs_8cpp.xml: new file, expected @link
regression test result for variadic function arguments '...'
* testing/068_ref_varargs.cpp: new file, @ref regression test for
variadic function arguments '...'
* testing/068/068__ref__varargs_8cpp.xml: new file, expected @ref
regression test result for variadic function arguments '...'
|
|\ \
| | |
| | | |
Full support for strong and typed enums in the XML output
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There's a new boolean `strong` attribute on the `<memberdef>` element
that defines whether the enum is a classic or a strong one.
Tests were updated to verify both cases.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The <type> element (used for function return type and variable type) is
now reused also for underlying enum type.
C++03-style enum types that don't have the underlying type specified
have the <type> tag as well, but empty to indicate that the underlying
type is unspecified.
Added a new test case for this.
|
|\ \ \
| | | |
| | | | |
Provide template parameters also for type aliases in the XML output
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Until now, probably due to C++03 assumptions, typedefs and type
aliases skipped printing of the template parameter specifications to
the XML output. That's now fixed, so the following type alias will
properly contain <templateparamlist> in the XML output:
template<class T> using Vec = std::vector<T>;
Added also a test case that verifies this.
|
|\ \ \
| | | |
| | | | |
Expose TOC placeholder in XML output
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Currently the XML output for a page was generated the same
independently of whether the \tableofcontents command was present in
the page source or not. Because of that, the users of the XML output
had no chance of knowing whether given page should have a TOC or not.
There's now a new <tableofcontents> element that gets added in case
the TOC was requested. As it is trivial to populate the TOC on user
side by simply enumerating the <sectN> elements, the element is empty
and acts just as a boolean.
|
|\ \ \ \
| |/ / /
| | | | |
Provide page brief in <briefdescription> of XML output
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Until now the brief description of pages was prepended to the
<detaileddescription> element and the <briefdescription> element was
not present at all, which meant there was no easy way to extract the
brief description for purposes of creating a page index, for example.
With this patch, the brief description is included in both
<briefdescription> and <detaileddescription>, thus duplicated, to
avoid backwards compatibility issues.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The <sp> element in <programlisting> has a new optional attribute
`value`, which contains value of given invalid ASCII character. In
case of space, the `value` attribute is omitted.
Use cases for this: including snippets of *very esoteric* languages,
markup that makes use of the advanced ASCII formatting characters or
for example highlighting a console output containing ANSI color codes
(which is my case, in fact).
Regarding backwards compatibility -- as files with such ASCII
characters are very rare, I don't expect this minor difference in the
output to be a problem. Besides that, such ASCII characters are often
replaced by a space in many applications anyway.
A test snippet was extended to contain a special character so this
difference in behavior could be verified.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is based on work done in 141dbfd5a4f79c98da14a1b414c6db4e1b34618b
through ed9acb6e1bb81a2eec334180f7b8c1bf0598b444 and makes a few
behavioral changes to it.
There's a new attribute called `filename` and the `language` was removed,
because it could provide misleading information. This allows for more
flexibility on the user side. In particular:
* For historical reasons, `*.txt` files are marked by Doxygen as C++
(see https://bugzilla.gnome.org/show_bug.cgi?id=760836 for details).
In particular, code snippet included from a CMakeLists.txt file would
be marked and highlighted as C++. So in this case, the language
attribute would be very misleading.
* Doxygen is aware only of a very small subset of languages and thus a
lot of information can be lost when relying on its
extension-to-language-name conversion -- in particular, all
extensions that are not recognized are assumed to be C++. On the other
hand, putting more effort into its language detection algorithms is
not worth the time, as there will always be new languages that fail to
detect. So let's leave that on the user of the XML output instead.
* Using just file extension is not enough, it has to be a full filename.
For example, `*.txt` can be either a plain text file or a
`CMakeLists.txt`.
* The path is not stripped from the filename, as it also may contain
additional information that helps to detect the language better.
In addition to that, filenames of code snippets included via the \include
command and related are propagated to the <programlisting> element as
well.
With this change, (1) code snippets using simply
\code
some code
\endcode
will not produce any `filename` attribute and it's up to the user what to
do -- assume C++, detect language from contents or not highlight
anything.
<programlisting>
some code
</programlisting>
(2) Code snippets using
\code{.cmake}
some code
\endcode
will produce the following:
<programlisting filename=".cmake">
some code
</programlisting>
(3) And finally, \include, \dontinclude and related \skip, \skipline etc.
commands
\include path/to/some-file.py
will produce
<programlisting filename="path/to/some-file.py">
some code
</programlisting>
The tests were updated to check all three cases.
On the user side, when using Pygments for example, it's then just a
matter of calling pygments.lexers.find_lexer_class_for_filename() with
value of the `filename` attribute value and optionally also the code
snippet for additional language analysis.
|
| | |
|
| |
| |
| |
| |
| | |
This checks the calling from "make tests" to "make test", but lets CMake handle
all the rest.
|
| | |
|
| | |
|
|/
|
|
|
| |
fix unit test to support the new programlisting
attribute "language"
|
|
|
|
|
|
| |
int Property {get; set;} = 23;
The parser was ending the property at the closing bracket,
which resulted in the initializer being assigned to the following property.
|
|
|
|
|
|
|
|
|
| |
This patch makes the handling of the \snippet and other commands consistent between the different languages (no line numbers anymore with python) and also introduces analogous to \includelineno the command \snippetlineno.
Some non relevant changes:
- *code.l Calculation of the end line was incorrect, in case of a snippet the end line was the number of lines of the snippet and not reltive to the start line.
- *code.l made consistent over the different laguages, enabling exBlock and inlineFragment
- testing/indexpage.xml in test 14 the \snippet command was used with python and giving line numbers, linenumbers are now gone (consistency)
|
|
|
|
| |
implementation
|
| |
|
| |
|
|\
| |
| | |
Bug 646002 - htmlonly content appears in generated XML output
|
| |
| |
| |
| | |
Test has to be adjusted as well.
|
|/ |
|
|
|
|
|
|
| |
The redirection used in the runtests.py script was based on *nix type systems. Corrected for windows.
Windows has a different line ending than *nix, resulting in a problem with diff unless the options -b -w are used.
Some tests had as directory for some paths a directory . this has been corrected to $INPUTDIR
|
|
|
|
| |
results
|
| |
|
| |
|
|
|
|
|
|
|
| |
- made static build option for all windows targets
- made wizard flex interactive
- add 64bit support for libiconv on windows build
- updated test mechanism
|
|
|
|
|
|
|
|
|
|
| |
runtest.pl replaced by testing/test_driver.cmake
version.py replaced by cmake/version.cmake
lang_cfg.py replaced by cmake/lang_cfg.cmake
settings.py implemented in src/CMakeLists.txt
increasebuffer.py replaced by defining the YY_BUF_SIZE and YY_READ_BUF_SIZE
Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
|
| |
|
|
|
|
|
| |
Final version can be major.minor.revision-mmn
Revision can either be x or x.y.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
https://github.com/albert-github/doxygen into albert-github-feature/bug_size_latex
Conflicts:
src/doctokenizer.h
src/latexgen.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adjusts some problems regarding image sizes in LaTeX output of doxygen (a.o. Bug 738299 - When using msc or PlantUML, the default latex for the created image should include [width=\linewidth]) this has been done is such a way that all the "image" commands (i.e. image, dot, dotfile, msc, mscfile, diafile, startuml) operate in a similar way / have the same possibilities.
- commands.doc
Adjusted documentation to reflect changes.
- cmdmapper.cpp
- cmdmapper.h
Added utility function to map command id back to command name
- doctokenizer.h
- doctokenizer.l
Handle Caption and Size indication. Required also that some other rules had to be tightened a bit (like usage of {} in startuml and usage of "" for captions. This was already described in the documentation in this way).
- docparser.cpp
- docparser.h
Created routine to uniformly handle the Caption and size indications and store them in a general way.
- latexgen.cpp
Replaced graphicx package by adjustbox package (includes graphicx) to support "min width" etc.
- doxygen.sty templates\latex
Added commands to make commands with and without caption behave similar.
- docbookvisitor.cpp
- docbookvisitor.h
- htmldocvisitor.cpp
- latexdocvisitor.cpp
- latexdocvisitor.h
- printdocvisitor.h
- xmldocvisitor.cpp
Created routine to uniformly handle the Caption and size indications in a general way.
- indexpage.xml (testing\022)
- indexpage.xml (testing\031)
- class_receiver.xml (testing\037)
- class_sender.xml (testing\037)
Adjusted example output.
|
| |
| |
| |
| |
| |
| | |
contains '-'
Support language switch for language ids, 'Japanese-en', 'Korean-en', 'Serbian-Cyrillic', and similer langauge ids.
|
| | |
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
Tcl: Bug 729092
|
| | |
|
|\ \
| | |
| | | |
Update test 058 because commit 9d315a9 fixes also Bug 729135
|
| |/
| |
| |
| |
| | |
--HG--
extra : rebase_source : aedb08ea08b1b0a983e31a11765c75b56c0b5ceb
|