6.1.2 Page Content
On this page:
6.1.2.1 Markdown
md
md*
6.1.2.2 HTML
html
html*
a
aside
audio
blockquote
br
dd
div
dt
em
h1
h2
h3
h4
h5
h6
img
label
li
ol
output
p
pre
script
section
span
strong
style
table
tbody
td
th
thead
tr
u
ul
video
6.1.2.3 Forms
bot:  autofill
radios
select
binding
form
6.1.2.4 Resources
6.1.2 Page Content🔗

A study page is an X-expression representing a complete page of HTML content.

Any definition of a study step must be a function that produces an x-expression (or another study, but we won’t go into that here). But you should never need to create these values directly; rather, you’ll typically use helper functions like md and html that do this for you.

Examples:
> (define x (md "# Heading"))
> x

'(div ((class "container")) (div () (h1 "Heading")))

6.1.2.1 Markdown🔗

 (require conscript/markdown) package: conscript

The bindings provided by this module are also provided by conscript/base.

syntax

(md content-str ...)

 
  content-str : string?

syntax

(md* content-str ...)

 
  content-str : string?
Parses its contents as Markdown and produces a representation of a complete page containing the resulting HTML content (md) or of a fragment of HTML suitable for use within another page (md*).

Examples:
> (md "# Heading")

'(div ((class "container")) (div () (h1 "Heading")))

> (md* "# Heading")

'(div () (h1 "Heading"))

6.1.2.2 HTML🔗

 (require conscript/html) package: conscript

The bindings in this module are also provided by conscript/base.

syntax

(html element ...)

 
  element : xexpr?

syntax

(html* element ...)

 
  element : xexpr?
Returns a complete page of HTML content (html) or a representation of a fragment of HTML suitable for use within another page (html*).

Examples:
> (html (div "content..."))

'(div ((class "container")) (div () (div () (p () "content..."))))

> (html* (div "content..."))

'(div () (div () (p () "content...")))

syntax

(a #:href href content ...)

syntax

(aside content ...)

syntax

(audio #:src src content ...)

syntax

(blockquote content ...)

syntax

(br)

syntax

(dd content ...)

syntax

(div content ...)

syntax

(dt content ...)

syntax

(em content ...)

syntax

(h1 content ...)

syntax

(h2 content ...)

syntax

(h3 content ...)

syntax

(h4 content ...)

syntax

(h5 content ...)

syntax

(h6 content ...)

syntax

(img #:alt alt #:src src content ...)

syntax

(label content ...)

syntax

(li content ...)

syntax

(ol content ...)

syntax

(output content ...)

syntax

(p content ...)

syntax

(pre content ...)

syntax

(script content ...)

syntax

(section content ...)

syntax

(span content ...)

syntax

(strong content ...)

syntax

(style content ...)

syntax

(table content ...)

syntax

(tbody content ...)

syntax

(td content ...)

syntax

(th content ...)

syntax

(thead content ...)

syntax

(tr content ...)

syntax

(u content ...)

syntax

(ul content ...)

syntax

(video #:src src content ...)

 
  content : xexpr?
Return representations (X-expressions) of HTML tags of the same names.

Any keyword arguments supplied are converted attribute names/values in the resulting HTML representation. Keyword arguments specifically noted above are required for their respective forms.

Examples:
> (a #:href "/" "a link")

'(a ((href "/")) "a link")

> (a "/" "a link")

a: missing required keyword argument: #:href

> (a #:class "my-style" #:href "/" "styled link")

'(a ((class "my-style") (href "/")) "styled link")

6.1.2.3 Forms🔗

 (require conscript/form) package: conscript

In addition to the bindings documented here, this module also reprovides most of the bindings in congame/components/formular.

The bindings provided by this module are also provided by conscript/base.

procedure

(bot:autofill arg)  any/c

  arg : any/c
bot:autofill proc

procedure

(radios arg)  any/c

  arg : any/c
radios proc

procedure

(select arg)  any/c

  arg : any/c
select proc

syntax

(binding arg)

 
  arg : any/c
binding form

syntax

(form arg)

 
  arg : any/c
form form

6.1.2.4 Resources🔗

 (require conscript/resource) package: conscript

A way to access static resources that aren’t stored in the database. The files get uploaded automatically as long as they’re linked using ‘define-static-resource‘. (Or you can upload a zipped folder as long as the study is contained/provided from study.rkt