Skip to content
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

Improves HTML diff table format for long line lengths. #793

Merged
merged 6 commits into from
Feb 12, 2024

Conversation

trevorshannon
Copy link
Contributor

If very long lines are present in an HTML diff report, the HTML table layout can become less than ideal. One half of the diff can be very wide and the entire table can be wider than the screen.

The built-in difflib output includes a nowrap HTML attribute on the table cells containing diff text lines. However, wrapping diff lines is both useful and typical. See the below GitHub diff screenshot for an example:

Screenshot 2024-02-05 at 12 17 38 PM

This PR uses CSS to override that nowrap attribute and allow for sane line wrapping while also ensuring the left and right halves of the diff table are equal width.

Current rendering:

Table is too wide for the viewport, left side is much narrower than the right.
Screenshot 2024-02-05 at 12 39 14 PM

Proposed rendering:

Table fits within the viewport, both sides are equal width, long diff lines are wrapped without adversely affecting line numbering.
Screenshot 2024-02-05 at 12 39 04 PM
Screenshot 2024-02-05 at 12 39 37 PM

@Jamstah
Copy link
Contributor

Jamstah commented Feb 7, 2024

You should also update the CHANGELOG.md.

@trevorshannon
Copy link
Contributor Author

oops, thanks I always forget that.

Copy link
Owner

@thp thp left a comment

Choose a reason for hiding this comment

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

Thanks!

@thp thp merged commit 0bc4abd into thp:master Feb 12, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants