The vertex Reference Manual

Next: , Previous: , Up: (dir)   [Contents][Index]

The vertex Reference Manual

This is the vertex Reference Manual, version 0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Aug 15 06:08:59 2022 GMT+0.

Table of Contents


1 Introduction

VerTeX

Build Status

A markup language with TeX syntax.

Syntax

Basic

VerTeX syntax, as the name implies, is basically TeX syntax. Blocks look like this:

The syntax, as a sort of regular expression, is like this:

\<tag name>([(<attribute>=<value>)*])?({<body>})?

Markup

Paragraphs

Paragraphs are delimited by double newlines.

A paragraph.

Another paragraph with \b{bold text}.

A third paragraph.

b

Bold text.

This is \b{bold text}.

i

Italicized text.

This text is in \i{italics}.

u

Underlined text.

This text is \u{underlined}.

strike

Struck-through text.

This text is \strike{struck through}.

sup and sub

Superscript and subscript.

The value of the vacuum permittivity, ε\sub{0}, is 8.8x10\sup{-12}.

Code

c

Inline code.

The function \c{find} takes as arguments...

code

A block of code.

\code[lang='lisp']{
  (let ((x 1))
    (incf x))
}

Quotes

q

An inline quote.


quote

A block quote.


Links and References

ref

A reference to a section of the document, or to another document.

See section \ref[sec=search]{Search}.

For a more thorough discussion, see \ref[doc=aima, sec=search]{the AIMA chapter}
on search algorithms.

link

A link to a URI.

Visit \link[uri='https://www.google.com/']{Google}.

Lists

list

An unordered list.

Ingredients:

\list{
  \item{One egg}
  \item{One tablespoon of olive oil}
  \item{Grated cheese}
}

Produces:

enum

An ordered list.

Recipe for eudoxia's patent-pending microwave eggs:

\enum{
  \item{Pour the olive oil into the bowl}
  \item{Crack the egg into it}
  \item{Put the cheese on top}
  \item{Microwave for 45 seconds}
}

Produces:

  1. Pour the olive oil into the bowl
  2. Crack the egg into it
  3. Put the cheese on top
  4. Microwave for 45 seconds

deflist

A definition list.

\deflist{
  \term{Sum Rule}
  \def{If two tasks can be performed in m and n ways, respectively, then
  there are m+n ways of doing \b{either}.}

  \term{Product Rule}
  \def{If two sequential tasks can be performed in m and n ways,
  respectively, there are m*n ways of performing the sequence.}
}

Images and Figures

Tables

table, row, cell

Exactly what you would expect.

\table{
  \row{
    \cell{} \cell{\b{Peach}} \cell{\b{Egg}}
  }
  \row{
    \cell{\i{Fat}} \cell{0.25g} \cell{10.6g}
  }
  \row{
    \cell{\i{Protein}} \cell{0.91g} \cell{12.6g}
  }
}

Produces:

| | Peach | Egg | | ----------- | --------- | ------- | | Fat | 0.25g | 10.6g | | Protein | 0.91g | 12.6g |

Structure

section

Defines a section.

\section[title=The Reader]{
  ... For other stuff see the chapter on \ref[sec=compiler]{Compilation}.
}

\section[title=The Compiler, ref=compiler]{
  ... A compiler is basically ...
}

License

Copyright (c) 2014-2015 Fernando Borretti

Licensed under the MIT License.


2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 vertex

A markup language with TeX syntax.

Maintainer

Fernando Borretti <eudoxiahp@gmail.com>

Author

Fernando Borretti <eudoxiahp@gmail.com>

Home Page

https://github.com/CommonDoc/vertex

Source Control

(GIT git@github.com:CommonDoc/vertex.git)

Bug Tracker

https://github.com/CommonDoc/vertex/issues

License

MIT

Long Description

# VerTeX

[![Build Status](https://travis-ci.org/CommonDoc/vertex.svg?branch=master)](https://travis-ci.org/CommonDoc/vertex)

A markup language with TeX syntax.

# Syntax

## Basic

VerTeX syntax, as the name implies, is basically TeX syntax. Blocks look like
this:

* ‘\some-tag‘
* ‘\b{bold text}‘
* ‘\link[uri=’https://www.google.com/’]{Google}‘

The syntax, as a sort of regular expression, is like this:

“‘
\<tag name>([(<attribute>=<value>)*])?({<body>})?
“‘

## Markup

### Paragraphs

Paragraphs are delimited by double newlines.

“‘tex
A paragraph.

Another paragraph with \b{bold text}.

A third paragraph.
“‘

### ‘b‘

Bold text.

“‘tex
This is \b{bold text}.
“‘

### ‘i‘

Italicized text.

“‘tex
This text is in \i{italics}.
“‘

### ‘u‘

Underlined text.

“‘tex
This text is \u{underlined}.
“‘

### ‘strike‘

Struck-through text.

“‘tex
This text is \strike{struck through}.
“‘

### ‘sup‘ and ‘sub‘

Superscript and subscript.

“‘tex
The value of the vacuum permittivity, ε\sub{0}, is 8.8x10\sup{-12}.
“‘

## Code

### ‘c‘

Inline code.

“‘tex
The function \c{find} takes as arguments...
“‘

### ‘code‘

A block of code.

“‘tex
\code[lang=’lisp’]{
(let ((x 1))
(incf x))
}
“‘

## Quotes

### ‘q‘

An inline quote.

“‘tex

“‘

### ‘quote‘

A block quote.

“‘tex

“‘

## Links and References

### ‘ref‘

A reference to a section of the document, or to another document.

“‘tex
See section \ref[sec=search]{Search}.

For a more thorough discussion, see \ref[doc=aima, sec=search]{the AIMA chapter}
on search algorithms.
“‘

### ‘link‘

A link to a URI.

“‘tex
Visit \link[uri=’https://www.google.com/’]{Google}.
“‘

## Lists

### ‘list‘

An unordered list.

“‘tex
Ingredients:

\list{
\item{One egg}
\item{One tablespoon of olive oil}
\item{Grated cheese}
}
“‘

Produces:

* One egg
* One tablespoon of olive oil
* Grated cheese

### ‘enum‘

An ordered list.

“‘tex
Recipe for eudoxia’s patent-pending microwave eggs:

\enum{
\item{Pour the olive oil into the bowl}
\item{Crack the egg into it}
\item{Put the cheese on top}
\item{Microwave for 45 seconds}
}
“‘

Produces:

1. Pour the olive oil into the bowl
2. Crack the egg into it
3. Put the cheese on top
4. Microwave for 45 seconds

### ‘deflist‘

A definition list.

“‘tex
\deflist{
\term{Sum Rule}
\def{If two tasks can be performed in m and n ways, respectively, then
there are m+n ways of doing \b{either}.}

\term{Product Rule}
\def{If two sequential tasks can be performed in m and n ways,
respectively, there are m*n ways of performing the sequence.}
}
“‘

## Images and Figures

## Tables

### ‘table‘, ‘row‘, ‘cell‘

Exactly what you would expect.

“‘tex
\table{
\row{
\cell{} \cell{\b{Peach}} \cell{\b{Egg}}
}
\row{
\cell{\i{Fat}} \cell{0.25g} \cell{10.6g}
}
\row{
\cell{\i{Protein}} \cell{0.91g} \cell{12.6g}
}
}
“‘

Produces:

| | **Peach** | **Egg** |
| ———– | ——— | ——- |
| *Fat* | 0.25g | 10.6g |
| *Protein* | 0.91g | 12.6g |

## Structure

### ‘section‘

Defines a section.

“‘tex
\section[title=The Reader]{
... For other stuff see the chapter on \ref[sec=compiler]{Compilation}.
}

\section[title=The Compiler, ref=compiler]{
... A compiler is basically ...
}
“‘

# License

Copyright (c) 2014-2015 Fernando Borretti

Licensed under the MIT License.

Version

0.1

Dependencies
  • common-doc (system).
  • common-doc-plump (system).
  • plump-tex (system).
Source

vertex.asd.

Child Component

src (module).


3 Modules

Modules are listed depth-first from the system components tree.


Previous: , Up: Modules   [Contents][Index]

3.1 vertex/src

Source

vertex.asd.

Parent Component

vertex (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp   [Contents][Index]

4.1.1 vertex/vertex.asd

Source

vertex.asd.

Parent Component

vertex (system).

ASDF Systems

vertex.


4.1.2 vertex/src/parser.lisp

Source

vertex.asd.

Parent Component

src (module).

Packages

vertex.parser.

Public Interface
Internals

input->common-doc (function).


4.1.3 vertex/src/emitter.lisp

Dependency

parser.lisp (file).

Source

vertex.asd.

Parent Component

src (module).

Packages

vertex.emitter.

Public Interface

emit-to-stream (function).


4.1.4 vertex/src/vertex.lisp

Dependency

emitter.lisp (file).

Source

vertex.asd.

Parent Component

src (module).

Packages

vertex.

Public Interface

5 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

5.1 vertex.parser

Parse a TeX file into a CommonDoc document.

Source

parser.lisp.

Use List

common-lisp.

Public Interface
Internals

input->common-doc (function).


Next: , Previous: , Up: Packages   [Contents][Index]

5.2 vertex.emitter

Create a VerTeX representation of a CommonDoc document.

Source

emitter.lisp.

Use List

common-lisp.

Public Interface

emit-to-stream (function).


Previous: , Up: Packages   [Contents][Index]

5.3 vertex

The main interface.

Source

vertex.lisp.

Use List
  • common-doc.format.
  • common-lisp.
Public Interface

vertex (class).


6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Public Interface


6.1.1 Ordinary functions

Function: emit-to-stream (document stream)
Package

vertex.emitter.

Source

emitter.lisp.

Function: parse-file (pathname)

Parse a VerTeX file.

Package

vertex.parser.

Source

parser.lisp.

Function: parse-string (string)

Parse a VerTeX string.

Package

vertex.parser.

Source

parser.lisp.


6.1.2 Standalone methods

Method: emit-document ((vertex vertex) (doc document) stream)
Package

common-doc.format.

Source

vertex.lisp.

Method: emit-document ((vertex vertex) (node document-node) stream)
Package

common-doc.format.

Source

vertex.lisp.

Method: parse-document ((vertex vertex) (pathname pathname))

Return a VerTeX document parsed from a file.

Package

common-doc.format.

Source

vertex.lisp.

Method: parse-document ((vertex vertex) (string string))

Return a VerTeX document parsed from a string.

Package

common-doc.format.

Source

vertex.lisp.


6.1.3 Classes

Class: vertex

The VerTeX format.

Package

vertex.

Source

vertex.lisp.

Direct superclasses

document-format.

Direct methods

6.2 Internals


Previous: , Up: Internals   [Contents][Index]

6.2.1 Ordinary functions

Function: input->common-doc (input)
Package

vertex.parser.

Source

parser.lisp.


Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts


Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables