<-- back to the mailing list

Text reflow woes (or: I want bullets back!)y

solderpunk solderpunk at SDF.ORG

Wed Jan 15 22:11:17 GMT 2020

- - - - - - - - - - - - - - - - - - - ```

On Wed, Jan 15, 2020 at 12:47:27PM -0800, Aaron Janse wrote:

> 
> Yes, I definitely intend to include a recommendation that text/gemini
> 
> content be hard wrapped
> 
> May I ask why?

Mostly because I want simple-as-possible clients to be viable, whichmeans simply printing non-link lines to stdout should result insomething usable.  Paragraphs of text formatted as a single line aretremendously unpleasant to read when displayed this way!  If this werethe norm for text/gemini documents, I suspect nobody would use anyclient that didn't include (tedious to write!) code to wrap theselines at word breaks.

> In fact, I think *discouraging* hard-wrapping might actually make life easier
> for client implementers. Hard-wrapping would require clients to un-wrap the
> newlines then re-wrap to the desired width.

It wouldn't *require* that, the lines could simply be displayed at theirhard-wrapped width, which is why we're concerned with recommending anarrow enough width that this would work on devices with narrowdisplays.

Basically, consider what happens with the bare minimum amount of code ineither case:

A) If an entire paragraph is one line and a client doesn't have code tobreak that big line up at word boundaries, leaving wrapping up to theterminal results in multiple lines (potentially uncomfortably long forreading) with randomly cut-up words at their beginnings and ends.

B) If the paragraph is hard-wrapped at ~40 characters and a client doesn'thave code to un-wrap and re-rewrap those lines, the result is lines of acomfortabe length for reading, which fit on a smartphone and don't have anyrandomly cut-up words at their beginnings and ends.

Given these two choices, surely B) is preferable?

Admittedly, this analysis is somewhat terminal-centric.  A lot of GUItoolkits probably have text displaying widgets which will handlebreaking lines at word boundaries without the developer having to giveit a second though.

On the one hand, the vast majority of extant clients areterminal-centric and I think the majority of the early adopters (beinggopher folk) lead terminal-centric lives, so a terminal-centricperspective is only natural.  On the other hand, Gemini isn't supposedto be only for a certain group of people, so I'm reluctant to lean onthis too much...

> Oh, well. I'm vocal about this because Gemini looks really exciting to me.
> As someone who plans to use it, I simply want it to be what I think is as
> easy to use as possible :-)

I appreciate you speaking up and I'm glad you're excited!

Cheers,Solderpunk