Fix hunk alignment for inline display#977
Open
bvergnaud wants to merge 1 commit into
Open
Conversation
The side-by-side displays use padding to align the line numbers of hunks, but the inline display did not. For a hunk that has line numbers transitionning to a higher order (e.g. lines 7-12), the file contents would end up misaligned by that one character difference, which is especially annoying for code blocks. This commit re-uses the padding logic of the side-by-side displays in the inline display to fix that. Signed-off-by: Benjamin VERGNAUD <ben@bvergnaud.fr>
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.
Hello there 👋🏻
The side-by-side displays use padding to align the line numbers of hunks, but the inline display did not. For a hunk that has line numbers transitioning to a higher order (e.g. lines 7-12, or 97-102), the file contents would end up misaligned by that one character difference.
To highlight the issue, here is a pair of plain text files.
And here's what the inline diff looks like with the latest release of
difftastic:This commit re-uses the padding logic of the side-by-side displays in the inline display to fix that weird alignment.
I'm not sure if this fixes any specific issues. I've looked through a bunch that mention the inline display mode, none of them seem to identify that specific problem. But it has been annoying me for a while and I figured it was time to offer a fix. 😅