unison/unison-src/transcripts/doc2.output.md
Greg Pfeil 0031542faf
Add a space before code block info strings
This is for consistency with the `cmark` style. Now the blocks we still
pretty-print ourselves will match the bulk of them that `cmark`
produces.
2024-07-10 13:56:07 -06:00

3.7 KiB

Test parsing and round-trip of doc2 syntax elements

otherDoc : a -> Doc2
otherDoc _ = {{ yo }}

otherTerm : Nat
otherTerm = 99

fulldoc : Doc2
fulldoc =
  use Nat +
  {{
Heres some text with a
soft line break

hard line break

Here's a cool **BOLD** __italic__ ~~strikethrough~~ thing with an inline code block `1 + 2`

Should print with appropriate fences for the contents:

`No fancy quotes`

'' There are `backticks` in here ''

''' There are `backticks` and ''quotes'' in here '''

# Heading

## Heading 2

Term Link: {otherTerm}

Type Link: {type Optional}

Term source:

@source{term}

Term signature:

@signature{term}

* List item

Inline code:

`` 1 + 2 ``

` "doesn't typecheck" + 1 `

[Link](https://unison-lang.org)

![Image](https://share-next.unison-lang.org/static/unison-logo-circle.png)

Horizontal rule

---

Video

{{
Special
    (Embed
    (Any (Video [MediaSource "test.mp4" None] [("poster", "test.png")])))
}}

Transclusion/evaluation:

{{ otherDoc (a -> Word a) }}

---

The following markdown features aren't supported by the Doc format yet, but maybe will someday


> Block quote


Table

| Header 1 | Header 2 | 
| -------- | -------- | 
| Cell 1 | Cell 2 | 


    Indented Code block

'''
    Exact whitespace should be preserved across multiple updates. Don't mess with the logo!

     _____     _
    |  |  |___|_|___ ___ ___
    |  |  |   | |_ -| . |   |
    |_____|_|_|_|___|___|_|_|

    Line with no whitespace:

    Should have one full trailing newline below here:

'''

Inline '' text literal with 1 space of padding '' in the middle of a sentence.


}}

Format it to check that everything pretty-prints in a valid way.

scratch/main> debug.format

otherDoc : a -> Doc2
otherDoc _ = {{ yo }}

otherTerm : Nat
otherTerm = 99

fulldoc : Doc2
fulldoc =
  use Nat +
  {{
  Heres some text with a soft line break
  
  hard line break
  
  Here's a cool **BOLD** __italic__ ~~strikethrough~~ thing with an inline code
  block `1 + 2`
  
  Should print with appropriate fences for the contents:
  
  `No fancy quotes`
  
  '' There are `backticks` in here ''
  
  ''' There are `backticks` and ''quotes'' in here '''
  
  # Heading
  
    ## Heading 2
    
       Term Link: {otherTerm}
       
       Type Link: {type Optional}
       
       Term source:
       
           @source{term}
       
       Term signature:
       
           @signature{term}
       
       * List item
       
       Inline code:
       
       `` 1 + 2 ``
       
       ` "doesn't typecheck" + 1 `
       
       [Link](https://unison-lang.org)
       
       ![Image](https://share-next.unison-lang.org/static/unison-logo-circle.png)
       
       Horizontal rule
       
       ---
       
       Video
       
       {{
       Special
         (Embed
           (Any (Video [MediaSource "test.mp4" None] [("poster", "test.png")])))
       }}
       
       Transclusion/evaluation:
       
       {{ otherDoc (a -> Word a) }}
       
       ---
       
       The following markdown features aren't supported by the Doc format yet,
       but maybe will someday
       
       > Block quote
       
       Table
       
       | Header 1 | Header 2 | | -------- | -------- | | Cell 1 | Cell 2 |
       
       Indented Code block
       
       '''
           Exact whitespace should be preserved across multiple updates. Don't mess with the logo!
       
            _____     _
           |  |  |___|_|___ ___ ___
           |  |  |   | |_ -| . |   |
           |_____|_|_|_|___|___|_|_|
       
           Line with no whitespace:
       
           Should have one full trailing newline below here:
       
       '''
       
       Inline ` text literal with 1 space of padding ` in the middle of a
       sentence.
  }}