Documentation
¶
Overview ¶
Package mkpage is an experiment in a light weight template and markdown processor.
@author R. S. Doiel, <rsdoiel@caltech.edu>
Copyright (c) 2016, Caltech All rights not granted herein are expressly reserved by Caltech.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Package provides the core library used by cmds/ws/ws.go
@author R. S. Doiel, <rsdoiel@caltech.edu>
Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Index ¶
- Constants
- Variables
- func IsDotPath(p string) bool
- func MakePage(wr io.Writer, tmpl *template.Template, keyValues map[string]string) error
- func MakePageString(tmpl *template.Template, keyValues map[string]string) (string, error)
- func MakeSlide(wr io.Writer, tmpl *template.Template, slide *Slide) error
- func MakeSlideFile(tmpl *template.Template, slide *Slide) error
- func MakeSlideString(tmpl *template.Template, slide *Slide) (string, error)
- func RelativeDocPath(source, target string) string
- func RequestLogger(next http.Handler) http.Handler
- func ResolveData(data map[string]string) (map[string]interface{}, error)
- func ResponseLogger(r *http.Request, status int, err error)
- func StaticRouter(next http.Handler) http.Handler
- type Slide
Constants ¶
const ( // Version of the mkpage package. Version = "v0.0.13" // LicenseText provides a string template for rendering cli license info LicenseText = `` /* 1530-byte string literal not displayed */ // JSONPrefix designates a string as JSON formatted content JSONPrefix = "json:" // MarkdownPrefix designates a string as Markdown content MarkdownPrefix = "markdown:" // TextPrefix designates a string as text/plain not needed processing TextPrefix = "text:" // DefaultTemplateSource holds the default HTML provided by mkpage package, you probably want to override this... DefaultTemplateSource = `` /* 4707-byte string literal not displayed */ )
Variables ¶
var ( // DefaultSlideTemplateSource provides the default HTML template for mkslides package, you probably want to override this... DefaultSlideTemplateSource = `` /* 1847-byte string literal not displayed */ )
Functions ¶
func IsDotPath ¶ added in v0.0.13
IsDotPath checks to see if a path is requested with a dot file (e.g. docs/.git/* or docs/.htaccess)
func MakePage ¶
MakePage applies the key/value map to the template and renders to writer and returns an error if something goes wrong
func MakePageString ¶ added in v0.0.5
MakePageString applies the key/value map to the template and renders the results to a string and error if someting goes wrong
func MakeSlide ¶ added in v0.0.12
MakeSlide this takes a io.Writer, a template and slide and executes the template.
func MakeSlideFile ¶ added in v0.0.12
MakeSlideFile this takes a template and slide and renders the results to a file.
func MakeSlideString ¶ added in v0.0.12
MakeSlideString this takes a template and slide and renders the results to a string
func RelativeDocPath ¶ added in v0.0.11
RelativeDocPath calculate the relative path from source to target based on implied common base.
Example:
docPath := "docs/chapter-01/lesson-02.html" cssPath := "css/site.css" fmt.Printf("<link href=%q>\n", MakeRelativePath(docPath, cssPath))
Output:
<link href="../../css/site.css">
func RequestLogger ¶ added in v0.0.13
RequestLogger logs the request based on the request object passed into it.
func ResolveData ¶
ResolveData takes a data map and reads in the files and URL sources as needed turning the data into strings to be applied to the template.
func ResponseLogger ¶ added in v0.0.13
ResponseLogger logs the response based on a request, status and error message
Types ¶
type Slide ¶ added in v0.0.12
type Slide struct { CurNo int PrevNo int NextNo int FirstNo int LastNo int FName string Title string Content string CSSPath string JSPath string }
Slide is the metadata about a slide to be generated.
func MarkdownToSlides ¶ added in v0.0.12
MarkdownToSlides turns a markdown file into one or more Slide using the fname, title and cssPath provided
Directories
¶
Path | Synopsis |
---|---|
cmds
|
|
mkpage
mkpage is a thought experiment in a light weight template and markdown processor @author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech.
|
mkpage is a thought experiment in a light weight template and markdown processor @author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech. |
mkslides
mkslides.go - A simple command line utility that uses Markdown to generate a sequence of HTML5 pages that can be used for presentations.
|
mkslides.go - A simple command line utility that uses Markdown to generate a sequence of HTML5 pages that can be used for presentations. |
reldocpath
reldocpath.go takes a source document path and a target document path with same base path returning a relative path to the target file.
|
reldocpath.go takes a source document path and a target document path with same base path returning a relative path to the target file. |
sitemapper
sitemapper generates a sitemap.xml file by crawling the content generate with genpages @author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech.
|
sitemapper generates a sitemap.xml file by crawling the content generate with genpages @author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech. |
slugify
slugify.go turn a human readable string into a URL/path friendly string @Author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2016, Caltech All rights not granted herein are expressly reserved by Caltech.
|
slugify.go turn a human readable string into a URL/path friendly string @Author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2016, Caltech All rights not granted herein are expressly reserved by Caltech. |
ws
ws.go - A simple web server for static files and limit server side JavaScript @author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1.
|
ws.go - A simple web server for static files and limit server side JavaScript @author R. S. Doiel, <rsdoiel@caltech.edu> Copyright (c) 2017, Caltech All rights not granted herein are expressly reserved by Caltech Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. |