README
booklit
documentation
installation
grab the latest release, or build from source:
go get github.com/vito/booklit/cmd/booklit
usage
booklit -i foo.lit -o ./out
example
clone this repo and build its docs:
booklit \
-i docs/lit/index.lit \
-o docs \
--html-templates docs/lit/html \
--plugin github.com/vito/booklit/booklitdoc \
--plugin github.com/vito/booklit/chroma/plugin
then browse the generated docs from ./docs/index.html
.
you can see the result at https://vito.github.io/booklit
Documentation
Index ¶
- Variables
- func ErrorPage(err error, w http.ResponseWriter)
- func RegisterPlugin(name string, factory PluginFactory)
- type AmbiguousReferenceError
- type AnnotationData
- type Aux
- type Content
- type Definition
- type Definitions
- type ErrorLocation
- type FailedFunctionError
- type Image
- type Link
- type List
- type Paragraph
- type ParseError
- type Partials
- type Plugin
- type PluginFactory
- type Preformatted
- type PrettyError
- type Reference
- type Section
- func (con *Section) AnchorTags() []Tag
- func (con *Section) Contains(sub *Section) bool
- func (con *Section) Depth() int
- func (con *Section) FilePath() string
- func (con *Section) FindTag(tagName string) []Tag
- func (con *Section) HasAnchors() bool
- func (con *Section) IsFlow() bool
- func (con *Section) IsOrHasChild(sub *Section) bool
- func (con *Section) Next() *Section
- func (con *Section) NextSibling() *Section
- func (con *Section) Number() string
- func (con *Section) PageDepth() int
- func (con *Section) Partial(name string) Content
- func (con *Section) Prev() *Section
- func (con *Section) SetPartial(name string, value Content)
- func (con *Section) SetTag(name string, title Content, loc ast.Location, optionalAnchor ...string)
- func (con *Section) SetTagAnchored(name string, title Content, loc ast.Location, content Content, anchor string)
- func (con *Section) SetTitle(title Content, loc ast.Location, tags ...string)
- func (con *Section) SplitSectionsPrevented() bool
- func (con *Section) String() string
- func (con *Section) Top() *Section
- func (con *Section) UsePlugin(pf PluginFactory)
- func (con *Section) Visit(visitor Visitor) error
- type SectionProcessor
- type Sequence
- type String
- type Style
- type Styled
- type Table
- type TableOfContents
- type Tag
- type Target
- type UndefinedFunctionError
- type UnknownTagError
- type Visitor
Constants ¶
This section is empty.
Variables ¶
View Source
var Version = "0.0.0-dev"
overridden via linker flags
Functions ¶
func ErrorPage ¶
func ErrorPage(err error, w http.ResponseWriter)
func RegisterPlugin ¶
func RegisterPlugin(name string, factory PluginFactory)
Types ¶
type AmbiguousReferenceError ¶
type AmbiguousReferenceError struct { TagName string DefinedLocations []ErrorLocation ErrorLocation }
func (AmbiguousReferenceError) Error ¶
func (err AmbiguousReferenceError) Error() string
func (AmbiguousReferenceError) PrettyHTML ¶
func (err AmbiguousReferenceError) PrettyHTML(out io.Writer) error
func (AmbiguousReferenceError) PrettyPrint ¶
func (err AmbiguousReferenceError) PrettyPrint(out io.Writer)
type AnnotationData ¶
type Definition ¶
type Definitions ¶
type Definitions []Definition
func (Definitions) IsFlow ¶
func (con Definitions) IsFlow() bool
func (Definitions) String ¶
func (con Definitions) String() string
func (Definitions) Visit ¶
func (con Definitions) Visit(visitor Visitor) error
type ErrorLocation ¶
func (ErrorLocation) Annotate ¶
func (loc ErrorLocation) Annotate(msg string, args ...interface{}) string
func (ErrorLocation) AnnotateLocation ¶
func (loc ErrorLocation) AnnotateLocation(out io.Writer) error
func (ErrorLocation) AnnotatedHTML ¶
func (loc ErrorLocation) AnnotatedHTML(out io.Writer) error
type FailedFunctionError ¶
type FailedFunctionError struct { Function string Err error ErrorLocation }
func (FailedFunctionError) Error ¶
func (err FailedFunctionError) Error() string
func (FailedFunctionError) PrettyHTML ¶
func (err FailedFunctionError) PrettyHTML(out io.Writer) error
func (FailedFunctionError) PrettyPrint ¶
func (err FailedFunctionError) PrettyPrint(out io.Writer)
type ParseError ¶
type ParseError struct { Err error ErrorLocation }
func (ParseError) Error ¶
func (err ParseError) Error() string
func (ParseError) PrettyHTML ¶
func (err ParseError) PrettyHTML(out io.Writer) error
func (ParseError) PrettyPrint ¶
func (err ParseError) PrettyPrint(out io.Writer)
type PluginFactory ¶
func LookupPlugin ¶
func LookupPlugin(name string) (PluginFactory, bool)
type Preformatted ¶
type Preformatted []Content
func (Preformatted) IsFlow ¶
func (con Preformatted) IsFlow() bool
func (Preformatted) String ¶
func (con Preformatted) String() string
func (Preformatted) Visit ¶
func (con Preformatted) Visit(visitor Visitor) error
type PrettyError ¶
type Reference ¶
type Section ¶
type Section struct { Path string Title Content Body Content PrimaryTag Tag Tags []Tag Parent *Section Children []*Section Style string Partials Partials SplitSections bool PreventSplitSections bool ResetDepth bool OmitChildrenFromTableOfContents bool Processor SectionProcessor PluginFactories []PluginFactory Plugins []Plugin Location ast.Location InvokeLocation ast.Location }
func (*Section) AnchorTags ¶
func (*Section) HasAnchors ¶
func (*Section) IsOrHasChild ¶
func (*Section) NextSibling ¶
func (*Section) SetPartial ¶
func (*Section) SetTagAnchored ¶
func (*Section) SplitSectionsPrevented ¶
func (*Section) UsePlugin ¶
func (con *Section) UsePlugin(pf PluginFactory)
type SectionProcessor ¶
type Style ¶
type Style string
const ( StyleVerbatim Style = "verbatim" StyleItalic Style = "italic" StyleBold Style = "bold" StyleLarger Style = "larger" StyleSmaller Style = "smaller" StyleStrike Style = "strike" StyleSuperscript Style = "superscript" StyleSubscript Style = "subscript" StyleInset Style = "inset" StyleAside Style = "aside" )
type TableOfContents ¶
type TableOfContents struct {
Section *Section
}
func (TableOfContents) IsFlow ¶
func (con TableOfContents) IsFlow() bool
func (TableOfContents) String ¶
func (con TableOfContents) String() string
func (TableOfContents) Visit ¶
func (con TableOfContents) Visit(visitor Visitor) error
type UndefinedFunctionError ¶
type UndefinedFunctionError struct { Function string ErrorLocation }
func (UndefinedFunctionError) Error ¶
func (err UndefinedFunctionError) Error() string
func (UndefinedFunctionError) PrettyHTML ¶
func (err UndefinedFunctionError) PrettyHTML(out io.Writer) error
func (UndefinedFunctionError) PrettyPrint ¶
func (err UndefinedFunctionError) PrettyPrint(out io.Writer)
type UnknownTagError ¶
type UnknownTagError struct { TagName string ErrorLocation }
func (UnknownTagError) Error ¶
func (err UnknownTagError) Error() string
func (UnknownTagError) PrettyHTML ¶
func (err UnknownTagError) PrettyHTML(out io.Writer) error
func (UnknownTagError) PrettyPrint ¶
func (err UnknownTagError) PrettyPrint(out io.Writer)
type Visitor ¶
type Visitor interface { VisitString(String) error VisitSequence(Sequence) error VisitReference(*Reference) error VisitLink(Link) error VisitSection(*Section) error VisitParagraph(Paragraph) error VisitTableOfContents(TableOfContents) error VisitPreformatted(Preformatted) error VisitStyled(Styled) error VisitTarget(Target) error VisitImage(Image) error VisitList(List) error VisitTable(Table) error VisitDefinitions(Definitions) error }
Source Files
Directories
Path | Synopsis |
---|---|
ast | |
baselit | |
booklitcmd | |
booklitdoc | |
chroma | |
chroma/plugin | |
cmd/booklit | |
errhtml | Code generated for package errhtml by go-bindata DO NOT EDIT. |
load | |
render | |
render/html | Code generated for package html by go-bindata DO NOT EDIT. |
render/text | Code generated for package text by go-bindata DO NOT EDIT. |
stages | |
tests | |
tests/fixtures/arbitrary-style-plugin | |
tests/fixtures/erroring-plugin | |
tests/fixtures/partials-style-plugin | |
tests/fixtures/set-partials-plugin | |
tests/fixtures/stringer-plugin | |
MODULE docs/hello |