|
wxMaxima
|
Pins that LaTeX export ignores how the worksheet happened to break a wide expression into lines (GH #408). More...
#include <wx/app.h>#include <wx/bitmap.h>#include <wx/dcmemory.h>#include <wx/log.h>#include "Configuration.h"#include "MathParser.h"#include "CellPointers.h"#include "cells/Cell.h"#include "cells/CellIterators.h"#include "cells/GroupCell.h"#include <catch2/catch.hpp>Data Structures | |
| class | TestApp |
Functions | |
| SCENARIO ("A power that is broken into lines exports its whole exponent as superscript") | |
| SCENARIO ("Every kind of cell that can break into lines exports as if it were unbroken") | |
| SCENARIO ("A broken cell's own TeX is that of the unbroken cell") | |
| wxDECLARE_APP (TestApp) | |
| int | main (int argc, char **argv) |
Pins that LaTeX export ignores how the worksheet happened to break a wide expression into lines (GH #408).
A cell that is too wide for the window is "broken into lines": it is drawn as a linear sequence of pieces instead of in 2D – a power becomes base, "^", "(", exponent, ")". GroupCell::ToTeX() used to walk that draw list, so a broken power was exported piece by piece as e^({very long exponent}) with only the parenthesis in the superscript (and, today, as a literal \hat{} glyph with no superscript at all). LaTeX does its own typesetting, so the export has to be the one of the unbroken expression, whatever the window width.
Each sample is the XML Maxima sends, parsed by the real MathParser and put into a real GroupCell – no live Maxima needed.