Skip to content

fix: allow for diacritical symbols in tcs#2439

Open
palmer-cl wants to merge 7 commits intomainfrom
colep/sd-2088-bug-characters-with-diacritical-symbols-do-not-render-as-tcs
Open

fix: allow for diacritical symbols in tcs#2439
palmer-cl wants to merge 7 commits intomainfrom
colep/sd-2088-bug-characters-with-diacritical-symbols-do-not-render-as-tcs

Conversation

@palmer-cl
Copy link
Collaborator

  • Update tracked changes to allow for diacritical symbols in tracked changes
  • add behavior tests

@linear
Copy link

linear bot commented Mar 18, 2026

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c7c2170113

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Copy link
Contributor

@caio-pizzol caio-pizzol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@palmer-cl good idea letting composition through so accented characters get tracked — that part works.

one bug found during testing: typing an accented character with a dead key (like Option+E then E for é) leaves a stray ' before the accent and breaks Enter afterward (adds spaces instead of new lines). the existing tests don't catch this because they simulate composition differently than how the browser actually does it.

left an inline comment with details.

Copy link
Contributor

@caio-pizzol caio-pizzol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@palmer-cl the space+accent fix from round 1 is working. one thing left: accents at paragraph start in suggesting mode still break. left an inline comment with what I found.

}

if (shouldForceEndStaleComposition(view, event)) {
__endComposition(view);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in suggesting mode, typing an accent at the start of a paragraph produces 'e instead of é. the shouldForceEndStaleComposition guard seems to be ending the composition too early — the final character arrives without the accent.

from what I can tell, the tracked changes transaction rebuild makes the composition look stuck when it's still active. pendingDeadKeyPlaceholder might be a good signal to distinguish real stale compositions from this case. also worth checking if ˜ (U+02DC) needs to be added to the placeholder map — some keyboards use it instead of ~.

tested in the dev app with debug logging on shouldForceEndStaleComposition and normalizeCompositionInsertStep.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants