After a recent Antigravity IDE update, the editor started warning about the Unicode en dash character U+2013 when it appears inside normal string literals.
Example:
Yii::t('f_webshop', 'Estimated delivery: {wd1} – {wd2} working days');
The warning is:
[Gremlin] Dash Character: En/em dash — easily confused with regular hyphen-minus (-)
This is undesirable for natural-language strings and translations, where an en dash is intentional and typographically correct.
The available Unicode Highlight configuration options do not provide a suitable workaround:
-
Exclude U+2013 from being highlighted disables the warning everywhere, including actual source code.
-
Disable highlighting of characters in strings disables all Unicode warnings in strings, including useful warnings for other suspicious characters.
-
Disable highlighting of ambiguous characters is much too broad.
-
Locale-based exclusions do not solve the problem either.
What is needed is either:
-
Do not treat typographic dash characters such as
U+2013as suspicious when they occur inside string literals, or -
Provide a setting to allow individual Unicode characters only inside strings, for example conceptually:
"editor.unicodeHighlight.allowedCharactersInStrings": {
"–": true
}
This appears to be a regression: I did not receive this warning previously, and it started after the latest Antigravity IDE update.
Environment:
-
Antigravity IDE
-
PHP source file
-
Character: U+2013 EN DASH
-
Context: natural-language / translation string
Expected behavior:
Intentional typographic punctuation inside natural-language string literals should not produce an ambiguous-character warning, or there should be a granular way to suppress that character only in strings.
Actual behavior:
U+2013 is highlighted, and none of the available configuration options can suppress this specific false positive without disabling useful Unicode checks elsewhere.