The scriba Reference Manual

This is the scriba Reference Manual, version 0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:50:45 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 scriba

A markup format similar to Scribe.

Maintainer

Fernando Borretti <>

Author

Fernando Borretti <>

Home Page

https://github.com/CommonDoc/scriba

Source Control

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

Bug Tracker

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

License

MIT

Long Description

# Scriba

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

A markup format similar to
[Scribe](http://en.wikipedia.org/wiki/Scribe_%28markup_language%29). See the
[documentation][docs].

[docs]: http://commondoc.github.io/scriba/docs/overview.html

# Similar Projects

* [Skribilo](http://www.nongnu.org/skribilo/)
* [Scribble](http://quickdocs.org/scribble/)

# License

Copyright (c) 2015 Fernando Borretti

Licensed under the MIT License.

Version

0.1

Dependencies
  • common-doc-plump (system).
  • plump-sexp (system).
  • esrap (system).
Source

scriba.asd.

Child Component

src (module).


3 Modules

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


3.1 scriba/src

Source

scriba.asd.

Parent Component

scriba (system).

Child Components

4 Files

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


4.1 Lisp


4.1.1 scriba/scriba.asd

Source

scriba.asd.

Parent Component

scriba (system).

ASDF Systems

scriba.


4.1.2 scriba/src/parser.lisp

Source

scriba.asd.

Parent Component

src (module).

Packages

scriba.parser.

Public Interface

parse-string (function).


4.1.3 scriba/src/plump.lisp

Dependency

parser.lisp (file).

Source

scriba.asd.

Parent Component

src (module).

Packages

scriba.plump.

Public Interface

parse (function).

Internals

4.1.4 scriba/src/emitter.lisp

Dependency

plump.lisp (file).

Source

scriba.asd.

Parent Component

src (module).

Packages

scriba.emitter.

Public Interface
Internals

4.1.5 scriba/src/scriba.lisp

Dependency

emitter.lisp (file).

Source

scriba.asd.

Parent Component

src (module).

Packages

scriba.

Public Interface
Internals

5 Packages

Packages are listed by definition order.


5.1 scriba.plump

Parse the Scriba AST into Plump nodes.

Source

plump.lisp.

Use List

common-lisp.

Public Interface

parse (function).

Internals

5.2 scriba

The main CommonDoc interface.

Source

scriba.lisp.

Use List

common-lisp.

Public Interface

scriba (class).

Internals

5.3 scriba.emitter

Dump CommonDoc nodes to Scriba text.

Source

emitter.lisp.

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

5.4 scriba.parser

Parse Scriba text into S-expressions.

Source

parser.lisp.

Use List
  • common-lisp.
  • esrap.
Public Interface

parse-string (function).


6 Definitions

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


6.1 Public Interface


6.1.1 Ordinary functions

Function: emit-to-string (node-or-doc)
Package

scriba.emitter.

Source

emitter.lisp.

Function: parse (string)

Parse a string of Scriba text into a Plump node.

Package

scriba.plump.

Source

plump.lisp.

Function: parse-string (string)

Parse a string of Scriba text into an S-expression.

Package

scriba.parser.

Source

parser.lisp.


6.1.2 Generic functions

Generic Function: emit (node stream)

Emit a node.

Package

scriba.emitter.

Source

emitter.lisp.

Methods
Method: emit ((doc document) stream)
Method: emit ((node section) stream)
Method: emit ((node cell) stream)
Method: emit ((node row) stream)
Method: emit ((node table) stream)
Method: emit ((node figure) stream)
Method: emit ((node image) stream)
Method: emit ((node definition-list) stream)
Method: emit ((node ordered-list) stream)
Method: emit ((node unordered-list) stream)
Method: emit ((node definition) stream)
Method: emit ((node list-item) stream)
Method: emit ((node web-link) stream)
Method: emit ((node document-link) stream)
Method: emit ((node block-quote) stream)
Method: emit ((node inline-quote) stream)
Method: emit ((node code-block) stream)
Method: emit ((node markup) stream)
Method: emit ((node paragraph) stream)

Emit a paragraph.

Method: emit ((node text-node) stream)
Method: emit ((node content-node) stream)

6.1.3 Standalone methods

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

common-doc.format.

Source

scriba.lisp.

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

common-doc.format.

Source

scriba.lisp.

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

Return a VerTeX document parsed from a file.

Package

common-doc.format.

Source

scriba.lisp.

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

Return a VerTeX document parsed from a string.

Package

common-doc.format.

Source

scriba.lisp.


6.1.4 Classes

Class: scriba

The VerTeX format.

Package

scriba.

Source

scriba.lisp.

Direct superclasses

document-format.

Direct methods

6.2 Internals


6.2.1 Special variables

Special Variable: *strip*
Package

scriba.plump.

Source

plump.lisp.


6.2.2 Macros

Macro: with-block-tag ((node stream &key name extra-attrs) &body body)

Emit a block tag.

Package

scriba.emitter.

Source

emitter.lisp.

Macro: with-tag ((node stream &key name extra-attrs) &body body)

Emit a whole tag.

Package

scriba.emitter.

Source

emitter.lisp.

Macro: with-tag-attrs ((attrs stream &key extra) &body body)

Emit tag attributes.

Package

scriba.emitter.

Source

emitter.lisp.

Macro: with-tag-body ((stream) &body body)

Emit a tag body.

Package

scriba.emitter.

Source

emitter.lisp.

Macro: with-tag-name ((name stream) &body body)

Emit a tag name.

Package

scriba.emitter.

Source

emitter.lisp.


6.2.3 Ordinary functions

Function: ast-to-plump-sexp (ast)

Take an AST S-exp and turn it into a format plump-sexp likes.

Package

scriba.plump.

Source

plump.lisp.

Function: emit-children (node stream)

Emit the children of a node.

Package

scriba.emitter.

Source

emitter.lisp.

Function: emit-hash-table (hash-table stream &optional delimiter)

Emit a hash table.

Package

scriba.emitter.

Source

emitter.lisp.

Function: emit-list (list stream)
Package

scriba.emitter.

Source

emitter.lisp.

Function: plump-to-text (plump-node stream)
Package

scriba.

Source

scriba.lisp.

Function: string-to-common-doc (string)
Package

scriba.

Source

scriba.lisp.

Function: transform-blocks (ast)

Take pairs of @begin/@end blocks and turn the into single blocks.

Package

scriba.plump.

Source

plump.lisp.

Function: transform-multiple-blocks (ast)
Package

scriba.plump.

Source

plump.lisp.

Function: trivial-tag (node stream)
Package

scriba.emitter.

Source

emitter.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   A   E   F   G   M   P   S   T   W  
Index Entry  Section

A
ast-to-plump-sexp: Private ordinary functions

E
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit: Public generic functions
emit-children: Private ordinary functions
emit-document: Public standalone methods
emit-document: Public standalone methods
emit-hash-table: Private ordinary functions
emit-list: Private ordinary functions
emit-to-string: Public ordinary functions

F
Function, ast-to-plump-sexp: Private ordinary functions
Function, emit-children: Private ordinary functions
Function, emit-hash-table: Private ordinary functions
Function, emit-list: Private ordinary functions
Function, emit-to-string: Public ordinary functions
Function, parse: Public ordinary functions
Function, parse-string: Public ordinary functions
Function, plump-to-text: Private ordinary functions
Function, string-to-common-doc: Private ordinary functions
Function, transform-blocks: Private ordinary functions
Function, transform-multiple-blocks: Private ordinary functions
Function, trivial-tag: Private ordinary functions

G
Generic Function, emit: Public generic functions

M
Macro, with-block-tag: Private macros
Macro, with-tag: Private macros
Macro, with-tag-attrs: Private macros
Macro, with-tag-body: Private macros
Macro, with-tag-name: Private macros
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit: Public generic functions
Method, emit-document: Public standalone methods
Method, emit-document: Public standalone methods
Method, parse-document: Public standalone methods
Method, parse-document: Public standalone methods

P
parse: Public ordinary functions
parse-document: Public standalone methods
parse-document: Public standalone methods
parse-string: Public ordinary functions
plump-to-text: Private ordinary functions

S
string-to-common-doc: Private ordinary functions

T
transform-blocks: Private ordinary functions
transform-multiple-blocks: Private ordinary functions
trivial-tag: Private ordinary functions

W
with-block-tag: Private macros
with-tag: Private macros
with-tag-attrs: Private macros
with-tag-body: Private macros
with-tag-name: Private macros


A.3 Variables

Jump to:   *  
S  
Index Entry  Section

*
*strip*: Private special variables

S
Special Variable, *strip*: Private special variables