-
-
Notifications
You must be signed in to change notification settings - Fork 112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(developer): escape bad markers 🙀 #10306
Conversation
- marker overrun! the 40th marker becomes a parenthesis, breaking regex feat(core): ldml proper regex implementation 🙀🙀 #9121
User Test ResultsTest specification and instructions User tests are not required Test Artifacts
|
dbd06e9
to
1a845d1
Compare
|
||
<keys> | ||
<!-- fourty markers. so that the next one would have its representation as '(' --> | ||
<key id="1" output="\m{m01}\m{m02}\m{m03}\m{m04}\m{m05}\m{m06}\m{m07}\m{m08}\m{m09}\m{m10}\m{m11}\m{m12}\m{m13}\m{m14}\m{m15}\m{m16}\m{m17}\m{m18}\m{m19}\m{m20}\m{m21}\m{m22}\m{m23}\m{m24}\m{m25}\m{m26}\m{m27}\m{m28}\m{m29}\m{m30}\m{m31}\m{m32}\m{m33}\m{m34}\m{m35}\m{m36}\m{m37}\m{m38}\m{m39}\m{m40}"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🙀
interesting. So, normalize_nfd_markers(patstr); Doesn't work anymore, because it expects the sentinel pattern, not: U+FFFF U+0008 probably scrambles it. So I need a new kind of 'normalize_nfd_markers' (or a switch) that works w/ regex pattern space. |
- escape markers to prevent the n'th marker from having some other meaning
- needed to remove/re-add the “≈≈[\u0001-\uD7FE]” format (aka LDML_MARKER_ANY_INDEX) #9121
1a845d1
to
02ba64d
Compare
the parse/format could be more optimized. or maybe use something from ICU. |
Co-authored-by: Marc Durdin <marc@durdin.net>
…per/9121-reject-bad-regex-epic-ldml
- move prepend_marker out of line - replace bool for_regex with an enum - cleanup another instance of \b -> \u0008 #9121
Changes in this pull request will be available for download in Keyman version 17.0.238-alpha |
\u0001
format) to prevent the n'th marker from having some other meaning!#9121
@keymanapp-test-bot skip