Conversation
…default - Add SimplifyMoveMarkup setting to convert move markup (w:moveFrom/w:moveTo) to simple del/ins markup for Word compatibility (Issue #96 workaround) - Change DetectMoves default from true to false until Phase II fixes the underlying ID collision bug in FixUpRevMarkIds - Add SimplifyMoveMarkupToDelIns() method that: - Converts w:moveFrom to w:del - Converts w:moveTo to w:ins - Removes all move range markers - Add docs/plans/ to .gitignore for internal working documents Addresses Issue #96: Move operations cause Word 'unreadable content' warning
- Add Issue #96 fix to CHANGELOG under [Unreleased] Fixed section - Update WmlComparerSettings documentation in CLAUDE.md: - Change DetectMoves default from true to false - Add SimplifyMoveMarkup setting - Add warning about known move detection issue
- Add 6 new tests for SimplifyMoveMarkup functionality: - SimplifyMoveMarkup_ShouldConvertMoveFromToDel - SimplifyMoveMarkup_ShouldConvertMoveToToIns - SimplifyMoveMarkup_ShouldRemoveRangeMarkers - SimplifyMoveMarkup_ShouldPreserveAttributes - SimplifyMoveMarkup_WhenFalse_ShouldPreserveMoveElements - DetectMoves_ShouldDefaultToFalse - SimplifyMoveMarkup_ShouldDefaultToFalse - Fix SimplifyMoveMarkupToDelIns call location - must be after PutXDocument() so document parts are available for modification
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
SimplifyMoveMarkupsetting to convert native move markup (w:moveFrom/w:moveTo) to simplew:del/w:insfor Word compatibilityDetectMovesdefault fromtruetofalseuntil Phase II fixes the underlying ID collision bugRoot Cause Analysis
The underlying bug is in
FixUpRevMarkIds()which runs AFTERFixUpRevisionIds()and overwritesw:del/w:insIDs starting from 0, causing collisions with move element IDs. This will be fixed in Phase II.Changes
SimplifyMoveMarkup(default: false), changedDetectMovesdefault to falseUsage
For users who need move detection with Word compatibility:
Test plan
Fixes #96 (Phase I)