Code Monkey home page Code Monkey logo

Comments (6)

jgm avatar jgm commented on July 20, 2024

more pleasant to read

I agree. Of course, you now have the option to write your documents this way -- it's just not a requirement.

The syntax becomes more consistent: Going from one paragraph to multiple paragraphs does not require changing the initial paragraph.

I'm not quite sure what example you have in mind here.

I thought about disallowing laziness when first designing djot, but then I realized we'd still have to figure out how to deal with things like

> foo
bar

When we hit the second line bar, the block quote still hasn't been closed (by a blank line). So what do we do? There are three alternatives:

  1. Throw an error. Currently djot doesn't do that; like markdown, it always gives you a parse.
  2. Parse it as a lazy continuation -- that is, add the text to the last open container.
  3. Parse it as a new paragraph.

I chose 2 partly on the grounds of syntactic consistency. 3 gives you a kind of inconsistency: normally you need a blank line before a new paragraph, but not right after a block quote.

from djot.

rauschma avatar rauschma commented on July 20, 2024

I'm not quite sure what example you have in mind here.

List item with one paragraph:

* First paragraph
that continues in another line.

List item with two paragraphs – I had to indent the second line of the first paragraph.

* First paragraph
  that continues in another line.

  Second paragraph
  that continues in another line.

Loosely related: Triple colons (:::) don’t normally end a paragraph but they do so in a list item (unless that item is indented):

* First paragraph
continues here.
::: note
:::

I thought about disallowing laziness when first designing djot, but then I realized we'd still have to figure out how to deal with things like [...]

I’d parse it as a new paragraph – which is similar to how parsing behaves for other block constructs – e.g.:

> foo
::: bar
:::

from djot.

jgm avatar jgm commented on July 20, 2024

List item with two paragraphs – I had to indent the second line of the first paragraph.

No you don't. This works fine:

* First paragraph
that continues in another line.

  Second paragraph
that continues in another line.

from djot.

rauschma avatar rauschma commented on July 20, 2024

Ah, OK. My bad!

I’d still prefer the rules to be the same:

  • First paragraph: indentation optional
  • Subsequent paragraphs: indentation required

Also, code blocks and divs seem to require indentation even if they come first:

* ```
  abc
  ```
* ::: div
  abc
  :::

from djot.

jgm avatar jgm commented on July 20, 2024

Also, code blocks and divs seem to require indentation even if they come first:

Yes, because lazy lines are only possible for paragraph content.

from djot.

rauschma avatar rauschma commented on July 20, 2024

(I’m closing the issue. I think the discussion is finished. Both positions are reasonable.)

from djot.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.