summaryrefslogtreecommitdiffstats
path: root/src/formula.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Refactoring: remove implicit conversion from QCString to const char *Dimitri van Heesch2021-04-221-16/+16
| | | | | | | | | | | | | | | | | This commit changes the following in relation to string use - The implicit convert from 'QCString' to 'const char *' is removed - Strings parameters use 'const QCString &' as much as possible in favor over 'const char *' - 'if (s)' where s is a QCString has been replaced by 'if(!s.isEmpty())' - data() now always returns a valid C-string and not a 0-pointer. - when passing a string 's' to printf and related functions 'qPrint(s)' is used instead of 's.data()' - for empty string arguments 'QCString()' is used instead of '0' - The copy() operation has been removed - Where possible 'qstrcmp(a,b)==0' has been replaces by 'a==b' and 'qstrcmp(a,b)<0' has been replaced by 'a<b' - Parameters of string type that were default initialized with '= 0' are no initialized with '= QCString()'
* Refactoring: Add TextStream buffer to improve output writing performanceDimitri van Heesch2021-03-281-6/+8
| | | | | - direct use of std::stringstream and std::ostream gave a 30% drop in performance.
* issue #8375 Lowercase search does not find non-ASCII uppercase pages and ↵Dimitri van Heesch2021-03-241-2/+2
| | | | vice versa (part 2)
* Refactoring: replace QFile/FTextStream with fstream/stringstreamDimitri van Heesch2021-03-181-72/+42
|
* Refactoring: Replaced QDir with DirDimitri van Heesch2021-03-181-25/+25
| | | | | - Dir is based on ghc::filesystem, a std::filesystem compatible implementation that does not require C++17.
* Refactoring: Replaced QFileInfo with FileInfoDimitri van Heesch2021-03-181-5/+6
| | | | | - FileInfo is based on ghc::filesystem, a std::filesystem compatible implementation that does not require C++17.
* Refactoring: replace QTextStream by ifstreamDimitri van Heesch2021-03-031-43/+29
|
* Don't start dvips when latex fails for formulasalbert-github2020-10-131-6/+6
| | | | In case the latex process fails for formulas there is no reason to try to start a dvips process.
* Merge pull request #7754 from albert-github/feature/issue_7753Dimitri van Heesch2020-05-091-2/+2
|\ | | | | issue #7753: SVG formula all with zero width
| * issue #7753: SVG formula all with zero widthalbert-github2020-05-061-2/+2
| | | | | | | | | | The wrong index to determine the old size was used. (index for `#` instead of `=`). Problem was not just for SVG but also for PNG.
* | Split off code to detect inkscape version to a separate functionDimitri van Heesch2020-05-091-80/+84
| |
* | Running Inkscape 1.0albert-github2020-05-091-1/+9
| | | | | | | | On subsequent calls we should know which inkscape version we have when this is not the case we already tried to determine it, but it failed so we should bail out here without error as an error has already been given.
* | Running Inkscape 1.0albert-github2020-05-081-1/+78
|/ | | | The command line interface (CLI) of Inkscape 1.0 has changed in comparison to previous versions. In order to invoke Inkscape, the used version is detected and based on the version the right syntax of the CLI is chosen.
* Refactoring: Introduce type names for commonly used container typesDimitri van Heesch2020-05-011-3/+3
|
* Wrong message in case of svg formulas for HTML (#7716)albert-github2020-04-221-1/+1
| | | | | | | | | | When we have set `HTML_FORMULA_FORMAT = svg` we still get the message: ``` Generating image form_0.png for formula ``` instead of ``` Generating image form_0.svg for formula ```
* Fixed issue creating std::string from null pointerDimitri van Heesch2020-03-301-5/+5
|
* Enabled stricter compiler warnings and fixed all new warningsDimitri van Heesch2020-03-081-4/+4
|
* Creation of svg images for formulas with inkscapealbert-github2020-02-151-27/+24
| | | | | | | Based on the implementation as mentioned in #7578 to add the possibilities to generated svg images for formulas - When running with inkscape 92.3 / 92.4 on Cygwin /Windows there were no images generated as the `-o` flag didn't exist, the output file had to be specified as part of the `-l` (or `--export-plain-svg`) option - For more flexibility the system is checked on existence of the `pdf2svg` and `inkscape` executables, so no compilations flags are necessary
* Forgot to remove some config files.Dimitri van Heesch2020-02-131-3/+34
| | | | Added development option to use inkscape to create SVG formulas.
* Improve formula handling and rendering.Dimitri van Heesch2020-02-121-186/+297
| | | | Also added option HTML_FORMULA_FORMAT to generate SVG files for images (requires pdf2svg)
* issue #7484 Error: /undefined in getenvalbert-github2020-01-091-3/+3
| | | | | | | | | The command `ps2epsi` also uses the `gs` command and this gives some problems with the gs9.50 version. An alternative is the `eps2eps` command that doesn't have these problems with the gs9.50 version. See also: - #7290 - https://bugs.ghostscript.com/show_bug.cgi?id=702024
* Replaced \_fakeform by \_formDimitri van Heesch2019-12-261-1/+1
|
* Merge branch 'feature/bug_formula' of ↵Dimitri van Heesch2019-12-261-1/+1
|\ | | | | | | https://github.com/albert-github/doxygen into albert-github-feature/bug_formula
| * Better warning in case of `@form`albert-github2019-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When having a problem like: ``` /** \file */ /** * The fie * * @form: the new format * @content: the content of the form * * Sets @form content to be @content. * * \f$ \alpha \f$ \f[ \beta \f] */ void fie(char *form, char *content); ``` we get warnings like: ``` .../aa.h:5: warning: Wrong formula id -1 .../aa.h:6: warning: Found unknown command '\content' .../aa.h:8: warning: Wrong formula id -1 .../aa.h:8: warning: Found unknown command '\content' ``` The `@form:` is in RST analogue to the doxygen `@param form` but not understood by doxygen. The result is that it is seen as an formula as doxygen translates the formula commands to `\form`. For `@content` is handled properly as this is not a doxygen command. In this patch a more unique name is chosen so these type of conflicts don't appear (that easy). The resulting, better, warnings are now: ``` .../aa.h:5: warning: Found unknown command '\form' .../aa.h:6: warning: Found unknown command '\content' .../aa.h:8: warning: Found unknown command '\form' .../aa.h:8: warning: Found unknown command '\content' ```
* | Merge pull request #7230 from albert-github/feature/bug_formula_macrofileDimitri van Heesch2019-12-251-0/+14
|\ \ | | | | | | Create possibility to define LaTeX commands for formulas
| * | Create possibility to define LaTeX commands for formulasalbert-github2019-08-271-0/+14
| | | | | | | | | | | | | | | | | | To be able to have building bocks for formulas one can create a `\newcommand` (or when one wants to change a command `\renewcommand`). Due to the different handling of LaTeX commands in pure LaTeX code (latex output and formulas converted to images) and MathJax it is necessary to transform LaTeX commands to the MathJax equivalent. This is done in a transparent way by providing the new commands in a file and add this verbatim to the pure LaTeX code and to translate the `\newcommand` and `\renewcomamnd` to MathJax macros.
* | | Removed exitCode parameter as it is always 1Dimitri van Heesch2019-12-221-1/+1
| | |
* | | Merge branch 'feature/bug_terminate' of ↵Dimitri van Heesch2019-12-221-1/+4
|\ \ \ | | | | | | | | | | | | https://github.com/albert-github/doxygen into albert-github-feature/bug_terminate
| * | | Better termination messagealbert-github2019-11-221-1/+4
| | | | | | | | | | | | | | | | | | | | In case a `WARN_LOGFILE` is used it in this file no clear whether doxygen finished correctly or exited beforehand in case a fatal error. Now a 'Exiting...' is also given in the warning log file in case an error is a fatal error.
* | | | Renamed Portables to PortableDimitri van Heesch2019-12-081-16/+16
| | | |
* | | | Refactoring of portable.h and portable.cpp functions to be contained in a ↵Tobias Off2019-11-281-16/+16
|/ / / | | | | | | | | | | | | | | | namespace Fixing some memory issues caused by not correctly freed pointers
* | | issue #7290 error: Problem running ghostscript gs -q -g562x56 -r384x384x ↵albert-github2019-11-121-2/+2
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | -sDEVICE=ppmraw -sOutputFile=_form0.pnm -dNOPAUSE -dBATCH -- _form0.ps. Check your installation! @maehr had a talk with Robin Watts and Ken Sharp at IRC and there seem to be basically 3 different problems: * `-r%dx%d` (the dimension for `r` shouldn't be `-r384x384x`, but `-r384x384`), * misuse / unnecessary use of `--` and * since 9.50 the command needs more control access (that might be worked around by either whitelisting the file via `--permit-file-read=_form0.eps` (only works from 9.50 and upwards) or generally accepting any file with `-dNOSAFER` (works since quite some time). The second option is considered to be unsafe if we would process any file, but in this case we process self produced / controlled files. I don't know if doxygen has any threat model that it assumes. ). > Ken Sharp: Yeah the %dx is wrong, as Robin says its sheer luck that works the -- isn't needed and is what's causing the first problem and file control is the new bugbear The suggestions have been implemented and test / docs works now with old and new version.
* | Bug 674005 - Crop png formula environnment problem for HTML outputalbert-github2019-09-091-2/+16
|/ | | | | | `divips -E` does not always return the correct bounding box. The program `ps2epsi` returns a good bounding box. - don't use the `-E` with `dvips` - convert the file from `dvips` with `ps2epsi` to an encapsulated postscript file
* issue #6775 LaTex package newunicodechar: "package won't work "albert-github2019-01-201-0/+1
| | | | | Some older distributions with newunicode package 1.1 need this option `\usepackage[utf8]{inputenc}`. Option was already present in the main LaTeX output i.e. refman.tex
* Merge pull request #738 from albert-github/feature/bug_latex_codeDimitri van Heesch2018-07-211-0/+2
|\ | | | | Small problems when having code in LaTeX output
| * Small problems when having code in LaTeX outputalbert-github2018-05-221-0/+2
| | | | | | | | | | | | | | | | - in formulas it is also possible to have special characters - adding special character '-' for U+2212 - making special characters more system independent (plain latex was not handled) and should be independent of hyperlink setting - without hyperlinks the name of normally linked names with underscore kept e.g. their underscores instead of escaping it - be sure that on the end of a code section the previous line is properly 'closed'.
* | Improvement LaTeX output (regression)albert-github2018-06-051-2/+1
| | | | | | | | | | | | Regression on pull request #698. We shouldn't switch to pdflatex for formula generation (follow up procedure: dvips and gs / splitting into images does not work). In the travis tests this was shown as well but not flagged as an error.
* | Improvement LaTeX outputalbert-github2018-04-091-2/+2
|/ | | | For a number of languages the output in LaTeX has been improved so the regular documentation can be generated (automatically) in LaTeX / PDF as well.
* Unify handling of extra packages in formula.cpp and latexgen.cpp so ↵Thadeus Fleming2016-05-201-6/+1
| | | | formula.cpp handles package arguments correctly
* Changed configuration mechanism to directly access options in order to ↵Dimitri van Heesch2016-01-171-5/+5
| | | | improve performance
* Bug 682373 - Math does not work in LaTeX with custom header and footer.albert-github2015-07-241-0/+2
| | | | Reset current directory in case of return.
* drop #include <unistd.h>Adrian Negreanu2015-05-151-2/+0
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* Bump copyright yearDimitri van Heesch2015-02-261-1/+1
|
* Updated copyrightDimitri van Heesch2014-02-111-1/+1
|
* Release-1.8.3.1-20130512Dimitri van Heesch2013-05-121-3/+3
|
* Release-1.8.3.1Dimitri van Heesch2013-01-201-1/+1
|
* Release-1.8.2-20121118Dimitri van Heesch2012-11-181-3/+2
|
* Release-1.8.1Dimitri van Heesch2012-05-191-1/+1
|
* Release-1.8.0-20120408Dimitri van Heesch2012-04-081-2/+2
|
* Release-1.7.6.1-20120220Dimitri van Heesch2012-02-201-1/+1
|