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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrap long paragraphs #94

Open
tao-cumplido opened this issue Dec 17, 2018 · 4 comments
Open

Wrap long paragraphs #94

tao-cumplido opened this issue Dec 17, 2018 · 4 comments
Labels

Comments

@tao-cumplido
Copy link

馃殌 Feature Proposal

Text nodes seem to be ignored currently, which results in badly formatted paragraphs to stay that way. It would be nice if long paragraphs would break lines according to the print width setting.

Motivation

Currently the following input

<p>
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
</p>

results in this output

<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

which is even worse, because the closing tag is lost at the end of the line.

Since line breaks followed by arbitrary whitespace results simply in a space in rendered HTML, the same example could be formatted much more readable:

<p>
  Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
  eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam
  voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet
  clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit
  amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
  nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed
  diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
  Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor
  sit amet.
</p>

Example

Please provide an example for how this feature would be used.

Vote

If you agree with my proposal vote with a 馃憤

@StarpTech
Copy link
Member

Hi @tao-cumplido thank you for the proposal. I agree this can be improved. Would you like to send a PR?

@StarpTech
Copy link
Member

StarpTech commented Dec 17, 2018

I think it's not worth to handle these case but please give it a try. Please be aware of such cases. This would require that we can work with template expressions. I provide a package https://github.com/Prettyhtml/prettyhtml/blob/master/packages/expression-parser for that.

<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr {{ ' dede' }} hello</p>

should not break in this way because it would manipulate the data

<p>
  Lorem ipsum dolor sit amet, consetetur sadipscing elitr {{ ' 
  dede' }} hello
</p>

@StarpTech
Copy link
Member

StarpTech commented Dec 20, 2018

The indentation rule based primary on node-level + tag length (incl attributes), not content. You can still format your text manually and it will be preserved.

@y912765390

This comment was marked as spam.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants