packages feed

prosidy-1.5.0.1: data/golden/gamut/input.pro

## This is an example document which enumerates many valid syntaxes. It is
## probably not exhaustive, but should serve as a good document to implement
## against.

## Properties
prop
prop-with-comment    ## this has a trailing comment
    prop-with-leading-spaces ## arbitrary leading spaces are permitted

## Settings
set-a1:42
set-a2=42
set-a3: 42
set-a4= 42
set-a5 :42
set-a6 =42
set-a7 = 42
set-a8 : 42

    set-a9 = 42  ## arbitrary leading spaces are permitted

## Settings with trailing comments
set-b1:42            ## this has a trailing comment
set-b2=42            ## this has a trailing comment
set-b3: 42           ## this has a trailing comment
set-b4= 42           ## this has a trailing comment
set-b5 :42           ## this has a trailing comment
set-b6 =42           ## this has a trailing comment
set-b7 = 42          ## this has a trailing comment
set-b8 : 42          ## this has a trailing comment

## Settings with escaped values
set-c1 = foo \# bar
set-c2 = \#\# not a comment ## is a comment

## Settings with null values
set-d1 =
set-d2 :
set-d3 = ## Just a comment, not a value
set-d4 : ## Just a comment, not a value
---

Paragraph with only one line.

Paragraph trailed by comment. ## This is the comment

Paragraph split
over multiple lines.

  Paragraph split ## with an indent!
over multiple lines ## Another sneaky comment
with a comment trailing some.

#tag{This} paragraph starts with a simple tag.

This paragraph ends with a simple #tag{tag.}

This #tag{paragraph} has a few #tag{tags}.

#a{}b#c{}#d{}

This paragraph has a number of inline tag styles.
#tag              ## no meta, no children
#tag[]            ## no meta, no children
#tag[]{}          ## no meta, no children
#tag[prop]        ## 1 prop, no children
#tag[prop1,prop2] ## 2 props, no children
#tag[set = '42']  ## 1 setting (equal, single quote), no children
#tag[set = "42"]  ## 1 setting (equal, double quote), no children
#tag[set: '42']   ## 1 setting (colon, single quote), no children
#tag[set: "42"]   ## 1 setting (colon, double quote), no children
#tag[prop, foo: 'bar', baz = "quz"] ## complicated, no children
#tag{content}     ## no meta, children
#tag[]{content}   ## no meta, children
#tag{#tag{ok}}    ## no meta, children containing tags
#tag[prop, foo: 'bar', baz = "quz"]{#tag{ok}} ## ok wow
#tag[
] ## Meta blocks can span multiple lines
#tag[ ## Comments can go here
  ## Because items in the metadata block are relatively structured
  ## compared to the rest of the document, you can go wild with
  ## how properties are laid out

  prop1, prop2 ## Comments can go here
, set ## Comments can go here
= '42', prop3 ## Comments can go here
]{This one is pathological}

This paragraph has some tags that are awfuly close to one another.
#tag{}text#tag{}text#tag#tag{}.

#tag{This is a paragraph in an #kind{inline} tag.}

#tag{This is a paragraph in an #kind{inline} tag.
     It spans many lines.
     Content may follow.} This follows!

#tag{This is a paragraph in an #kind{inline} tag. ## Comments can go here
     It spans many lines .                        ## Comments can go here
     Content may follow.} This follows!           ## Comments can go here

#-tag{This is a paragraph in a #kind{block} tag.  ## Comments can go here
      Content may not follow.}                    ## Comments can go here

#-block: ## Comments can go here
  This is the other kind of block tag.
  It can have #italic{nested} block children.

  #-block: ## Empty blocks are fine too
  #:

  #-block[prop]:label ## Comments can go here
    Block starts/ends can have aribtrary labels attached.
  #:label ## Comments can go here

  #-block[set='42']:label ## Comments can go here
    Block starts/ends can have aribtrary labels attached.
  #:label ## Comments can go here

  #-block[prop1, set: '42', prop2]:label ## Comments can go here
    Block starts/ends can have aribtrary labels attached.
  #:label ## Comments can go here
#: ## Comments can go here

#-block[ ## Comments can go here
  ## Because items in the metadata block are relatively structured
  ## compared to the rest of the document, you can go wild with
  ## how properties are laid out

  prop1, prop2 ## Comments can go here
, set ## Comments can go here
= '42', prop3 ## Comments can go here
]:end ## Comments can go here
  This is another pathological tag, just a block this time.
  #:end

## This is a literal tag
## The label is once again optional like block tags,
## but a label is _very_ helpful for quoting prosidy
#=lit:eof ## Comments can go here, but not on the next line
#-block: ## this is treated literally!
  This is the other kind of block tag.
  It can have #italic{nested} block children.

  #-block: ## this is treated literally!
  #:

  #-block[prop]:label ## this is treated literally!
    Block starts/ends can have aribtrary labels attached.
  #:label ## this is treated literally!

  #-block[set='42']:label ## this is treated literally!
    Block starts/ends can have aribtrary labels attached.
  #:label ## this is treated literally!

  #-block[prop1, set: '42', prop2]:label ## this is treated literally!
    Block starts/ends can have aribtrary labels attached.
  #:label ## this is treated literally!
#: ## this is treated literally!
#:eof ## Comments can go here again

Some unicode escapes:
  "\u1F638" is a smiling cat face,
  and "\uB" is a vertical tab.