The litterae Reference Manual

This is the litterae Reference Manual, version 0.3.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:10:27 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 litterae

Beautiful documentation generation.

Author

Stefan Devai <>

License

MIT

Version

0.3.0

Dependencies
  • docparser (system).
  • lsx (system).
  • 3bmd (system).
  • 3bmd-ext-code-blocks (system).
  • str (system).
  • cl-yaml (system).
Source

litterae.asd.

Child Component

source (module).


3 Modules

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


3.1 litterae/source

Source

litterae.asd.

Parent Component

litterae (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 litterae/litterae.asd

Source

litterae.asd.

Parent Component

litterae (system).

ASDF Systems

litterae.


4.1.2 litterae/source/package.lisp

Source

litterae.asd.

Parent Component

source (module).

Packages

litterae.


4.1.3 litterae/source/config.lisp

Dependency

package.lisp (file).

Source

litterae.asd.

Parent Component

source (module).

Internals

4.1.4 litterae/source/templates/index.lisp

Dependency

config.lisp (file).

Source

litterae.asd.

Parent Component

source (module).

Internals

4.1.5 litterae/source/litterae.lisp

Dependency

templates/index.lisp (file).

Source

litterae.asd.

Parent Component

source (module).

Public Interface
Internals

5 Packages

Packages are listed by definition order.


5.1 litterae

Source

package.lisp.

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

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: g (system-name &key path config)

Generates static HTML documentation for a ‘system-name’.

Package

litterae.

Source

litterae.lisp.

Function: generate (system-name &key path config)

Generates static HTML documentation for a **system-name**.

Package

litterae.

Source

litterae.lisp.


6.2 Internals


6.2.1 Special variables

Special Variable: *asdf-system*

Hold’s the system’s asdf information.

Package

litterae.

Source

config.lisp.

Special Variable: *config-filename*

Holds the default config filename.

Package

litterae.

Source

config.lisp.

Special Variable: *docstrings-as-markdown?*

If true, docstrings will be parsed as markdown, otherwise it uses the string as it is.

Package

litterae.

Source

config.lisp.

Special Variable: *index*

Holds raw information about a system provided by docparser library.

Package

litterae.

Source

config.lisp.

Special Variable: *symbols*

Structured information about the system’s symbols.

Package

litterae.

Source

config.lisp.

Special Variable: *system-name*

Holds system’s name as symbol.

Package

litterae.

Source

config.lisp.


6.2.2 Macros

Macro: do-node-lists ((pkg-hash) &body body)

Iterates through lists of nodes in a ‘package-hash’ contained in ‘*index’.

Package

litterae.

Source

litterae.lisp.

Macro: do-package-hashes ((pkg pkg-hash) &body body)

Iterates through the package hashes in ‘*index*’

Package

litterae.

Source

litterae.lisp.

Macro: set-single-config (parameter keyword hash-table)

Sets the value of **parameter** to the value of **keyword** in **hash-table** only if the keyword exists.

Package

litterae.

Source

config.lisp.


6.2.3 Ordinary functions

Function: build-symbols-hash ()

Stores in ‘*symbols*’ a hash of hashes of lists: a hash of package names, which each value contains a hash of class names which, each value contains a list of node names.

Package

litterae.

Source

litterae.lisp.

Function: format-lambda-list (lst)

Formats a lambda list ‘lst‘ and returns it as a string.

Package

litterae.

Source

litterae.lisp.

Function: format-lambda-list-html (lambda-string)

Returns a lambda list string with proper formated HTML.

Package

litterae.

Source

litterae.lisp.

Function: gen-html-node-item (node id pkg)

Returns each docparser node formated as HTML.

Package

litterae.

Source

litterae.lisp.

Function: generate-html (path)

Generates HTML for the contents of a parsed system in ‘*symbols*’.

Package

litterae.

Source

litterae.lisp.

Function: generate-html-index (path)

Generates index.html in ‘path’.

Package

litterae.

Source

litterae.lisp.

Function: generate-html-index-body ()

Generates the body content for the index page.

Package

litterae.

Source

litterae.lisp.

Function: generate-id (element)

Generates an id string for html given an element in the format ‘(list :id 0 :name some-name)‘.

Package

litterae.

Source

litterae.lisp.

Function: generate-list (&key elements child-list? element-format)

Generates a list with ‘elements’. If ‘child-list?’ is true, it uses the first element
of ‘elements’ (car) as the title and the other elements as lines of a new list. If child-list? is false, then each element in ‘elements’ will be a list.
element-format allows to customize how the element will be printed.

Package

litterae.

Source

litterae.lisp.

Function: get-lambda-list (node pkg)

If the node is of type operator-node, the function returns its lambda list. Otherwise it returns the node-name as a string.

Package

litterae.

Source

litterae.lisp.

Function: get-node-type-string (node-type &key plural?)

Return a string of ‘node-type’ for headers. If ‘plural’ is non nil, it returns its plural version.

Package

litterae.

Source

litterae.lisp.

Function: has-attr? (attr)

Return true if the attribute ‘attr’ holds a value, false otherwise.

Package

litterae.

Source

templates/index.lisp.

Function: html-api-docs ()

Returns the main API documentation content as a lsx object.

Package

litterae.

Source

litterae.lisp.

Function: html-hero ()

Generates the Hero HTML.

Package

litterae.

Source

litterae.lisp.

Function: html-readme ()

Searches for a README file in the system’s directory and returns it as a HTML string.

Package

litterae.

Source

litterae.lisp.

Function: html-sidebar ()

Returns the sidebar used to navigate through the API.

Package

litterae.

Source

litterae.lisp.

Function: initialize-system-information (system-name)
Package

litterae.

Source

litterae.lisp.

Function: load-config (&optional filepath)

Loads config contained in **filepath**. If it’s nil, searches for a default config file to load.

Package

litterae.

Source

config.lisp.

Function: make-index-template ()

Creates a object instance for ‘index-template’.

Package

litterae.

Source

litterae.lisp.

Function: parse-markdown-docstring (docstring)

Returns a **docstring** in markdown format as a HTML string.

Package

litterae.

Source

litterae.lisp.

Function: read-markdown (filepath)

Reads and parses a markdown file located in ‘filepath’.

Package

litterae.

Source

litterae.lisp.

Function: search-and-load-config-file ()

If a default config file exists, return its contents. Otherwise returns nil.

Package

litterae.

Source

config.lisp.

Function: set-config (config)

Sets configs parameters from **config**, a parsed yaml file. Always returns t to indicate that a new config was set.

Package

litterae.

Source

config.lisp.


6.2.4 Classes

Class: index-template
Package

litterae.

Source

templates/index.lisp.

Direct superclasses

template.

Direct methods

render-object.

Direct slots
Slot: title
Initargs

:title

Slot: description
Initargs

:description

Slot: url
Initargs

:url

Slot: body
Initargs

:body

Slot: lang
Initform

"en"

Initargs

:lang


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   B   D   F   G   H   I   L   M   P   R   S  
Index Entry  Section

B
build-symbols-hash: Private ordinary functions

D
do-node-lists: Private macros
do-package-hashes: Private macros

F
format-lambda-list: Private ordinary functions
format-lambda-list-html: Private ordinary functions
Function, build-symbols-hash: Private ordinary functions
Function, format-lambda-list: Private ordinary functions
Function, format-lambda-list-html: Private ordinary functions
Function, g: Public ordinary functions
Function, gen-html-node-item: Private ordinary functions
Function, generate: Public ordinary functions
Function, generate-html: Private ordinary functions
Function, generate-html-index: Private ordinary functions
Function, generate-html-index-body: Private ordinary functions
Function, generate-id: Private ordinary functions
Function, generate-list: Private ordinary functions
Function, get-lambda-list: Private ordinary functions
Function, get-node-type-string: Private ordinary functions
Function, has-attr?: Private ordinary functions
Function, html-api-docs: Private ordinary functions
Function, html-hero: Private ordinary functions
Function, html-readme: Private ordinary functions
Function, html-sidebar: Private ordinary functions
Function, initialize-system-information: Private ordinary functions
Function, load-config: Private ordinary functions
Function, make-index-template: Private ordinary functions
Function, parse-markdown-docstring: Private ordinary functions
Function, read-markdown: Private ordinary functions
Function, search-and-load-config-file: Private ordinary functions
Function, set-config: Private ordinary functions

G
g: Public ordinary functions
gen-html-node-item: Private ordinary functions
generate: Public ordinary functions
generate-html: Private ordinary functions
generate-html-index: Private ordinary functions
generate-html-index-body: Private ordinary functions
generate-id: Private ordinary functions
generate-list: Private ordinary functions
get-lambda-list: Private ordinary functions
get-node-type-string: Private ordinary functions

H
has-attr?: Private ordinary functions
html-api-docs: Private ordinary functions
html-hero: Private ordinary functions
html-readme: Private ordinary functions
html-sidebar: Private ordinary functions

I
initialize-system-information: Private ordinary functions

L
load-config: Private ordinary functions

M
Macro, do-node-lists: Private macros
Macro, do-package-hashes: Private macros
Macro, set-single-config: Private macros
make-index-template: Private ordinary functions

P
parse-markdown-docstring: Private ordinary functions

R
read-markdown: Private ordinary functions

S
search-and-load-config-file: Private ordinary functions
set-config: Private ordinary functions
set-single-config: Private macros