Fix handling of nonmath hyphens in mathtext. #23270
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
hyphen-to-unicode-minus replacement now occurs at the parsing stage, and
thus does not need to be done again in get_unicode_index (otherwise,
text hyphens also get incorrectly substituted.
Strictly speaking, one would need either to fully deprecate
get_unicode_index and replace it by a private helper (for which
math
is always False), or introduce a deprecation period during which users
must pass the
math
kwarg (any value other than False results in awarning) and then another one that deprecates that kwarg; which is quite
long; hopefully the change is in a private-enough part of the library
that we can just do it as is.
Also do some more changes to the mathtext-svg-text-only-tests that I
missed when the feature first went in: only test svg (that's the
point of it...) and only test two fonts: a "standard" truetype font --
the default dejavusans -- and the "cm" font, which has a very specific
encoding (see the BakomaFonts class).
Closes #23268, sorry about that :)
PR Summary
PR Checklist
Tests and Styling
pytest
passes).flake8-docstrings
and runflake8 --docstring-convention=all
).Documentation
doc/users/next_whats_new/
(follow instructions in README.rst there).doc/api/next_api_changes/
(follow instructions in README.rst there).