rendering issue with version 2.4.0 #218

Open
opened 2022-03-29 05:41:57 +00:00 by asdf · 2 comments
Collaborator

Visiting gopher://baud.baby in bombadillo 2.3.3 shows an art title:

  ((( Bombadillo )))  ▟ gopher://baud.baby:70/1                                 
                                            ▪
                                                   ▪     ▪
                                          ▪       ▪▪
                                              ▪     ▪   ▪▪
                                               ▪    ▪▪    ▪   ▪
                                              ▪      ▪▪    ▪  ▪▪
                         _______   ________  ________ ▪ _______
                        ╱      ╱╱ ╱        ╲╱ ▪▪ ╱   ╲_╱▪  ▪▪▪▪╲▪
... 

Visiting gopher://baud.baby in bombadillo 2.4.0 shows this same title with linebreaks where they would not be expected:

  ((( Bombadillo )))  ▟ gopher://baud.baby:70/1                                 
                                            ▪
                                                   ▪     ▪
                                          ▪       ▪▪
                                              ▪     ▪   ▪▪
                                               ▪    ▪▪    ▪   ▪
                                              ▪      ▪▪    ▪  ▪▪
                         _______   ________  ________ ▪ _______
                        ╱      ╱╱ ╱        ╲╱ ▪▪ ╱   ╲_╱▪  
           ▪▪▪▪╲▪
...

The first unexpected break in line on the rendered page can be seen at line 7.

The width of the terminal doesn't impact the illustrated issue, it occurs even at fullscreen. However there are other unexpected breaks at width 80.

I saw this issue on two different systems, and also saw this in both gnome-terminal and urxvt.

Visiting gopher://baud.baby in bombadillo 2.3.3 shows an art title: ``` ((( Bombadillo ))) ▟ gopher://baud.baby:70/1 ▪ ▪ ▪ ▪ ▪▪ ▪ ▪ ▪▪ ▪ ▪▪ ▪ ▪ ▪ ▪▪ ▪ ▪▪ _______ ________ ________ ▪ _______ ╱ ╱╱ ╱ ╲╱ ▪▪ ╱ ╲_╱▪ ▪▪▪▪╲▪ ... ``` Visiting gopher://baud.baby in bombadillo 2.4.0 shows this same title with linebreaks where they would not be expected: ``` ((( Bombadillo ))) ▟ gopher://baud.baby:70/1 ▪ ▪ ▪ ▪ ▪▪ ▪ ▪ ▪▪ ▪ ▪▪ ▪ ▪ ▪ ▪▪ ▪ ▪▪ _______ ________ ________ ▪ _______ ╱ ╱╱ ╱ ╲╱ ▪▪ ╱ ╲_╱▪ ▪▪▪▪╲▪ ... ``` The first unexpected break in line on the rendered page can be seen at line 7. The width of the terminal doesn't impact the illustrated issue, it occurs even at fullscreen. However there are other unexpected breaks at width 80. I saw this issue on two different systems, and also saw this in both gnome-terminal and urxvt.
Owner

2.4.0 adds a maxwidth configuration option. cat's header art for their gopher hole is particularly wide (more than 90 columns, which -as a sidenote- is odd in gopher).

What is happening is that bombadillo is wrapping at some specific column width. If you have not set a width then I believe it defaults to 100.

You can change the wrap with the following command:

:set maxwidth 150

When you do that, assuming your terminal is wide enough, it will display as cat intended. I consider this an unacceptable reading width and much prefer something around 70, but that is why this wrap setting exists: each person can find their sweet spot and change it as needed.

Things will also wrap on word where possible.

I do know there to be some very broken things about this wrapping that I found after pushing 2.4.0. In particular, if a single "word" is longer than the maxwidth each character for said word will appear on its own line. Super broken. This most often happens when displaying URLs. I plan to fix it at some point as I find it very annoying, but the wrapping code is a mess and I did not write the update that word wraps and dont 100% follow it well and have not had time to sit down and trace through it very well. So I plan to update that eventually (feel free to tackle it if you have the time/interest).

Please let me know if setting maxwidth solves the current issue with cat's header though!

`2.4.0` adds a `maxwidth` configuration option. cat's header art for their gopher hole is particularly wide (more than 90 columns, which -as a sidenote- is odd in gopher). What is happening is that bombadillo is wrapping at some specific column width. If you have not set a width then I believe it defaults to 100. You can change the wrap with the following command: ``` :set maxwidth 150 ``` When you do that, assuming your terminal is wide enough, it will display as cat intended. I consider this an unacceptable reading width and much prefer something around 70, but that is why this wrap setting exists: each person can find their sweet spot and change it as needed. Things will also wrap on word where possible. I do know there to be some _very_ broken things about this wrapping that I found _after_ pushing `2.4.0`. In particular, if a single "word" is longer than the maxwidth each character for said word will appear on its own line. Super broken. This most often happens when displaying URLs. I plan to fix it at some point as I find it very annoying, but the wrapping code is a mess and I did not write the update that word wraps and dont 100% follow it well and have not had time to sit down and trace through it very well. So I plan to update that eventually (feel free to tackle it if you have the time/interest). Please let me know if setting maxwidth solves the current issue with cat's header though!
Author
Collaborator

Thanks, that does change the behaviour and at fullscreen the title art is shown as intended. To fix the mentioned example (line 7), maxwidth has to be set to 110 and the terminal set to 111 columns.

One thing I neglected to mention is that the title displays as intended in version 2.3.3 with the terminal width at 80 columns. You mention that it is a wide title for gopher, and I'm not sure I can measure it correctly because of all the escape codes in use, but without them (and without the indent) I think it comes to 55? Not sure if that helps as I may just be confused. I'll see if I can find out more about this issue.

Thanks, that does change the behaviour and at fullscreen the title art is shown as intended. To fix the mentioned example (line 7), maxwidth has to be set to 110 and the terminal set to 111 columns. One thing I neglected to mention is that the title displays as intended in version 2.3.3 with the terminal width at 80 columns. You mention that it is a wide title for gopher, and I'm not sure I can measure it correctly because of all the escape codes in use, but without them (and without the indent) I think it comes to 55? Not sure if that helps as I may just be confused. I'll see if I can find out more about this issue.
Sign in to join this conversation.
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: sloum/bombadillo#218
No description provided.