html

package module
v0.0.0-...-5554a90 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 10, 2018 License: BSD-3-Clause Imports: 2 Imported by: 0

README

html/template

Dynamically load sub templates with {{template .MyVariable}}. Forked from Go's built in library "html/template" version 1.9.2.

Build Status go report card

Example

package main

import (
	"log"
	"os"
	"github.com/speedyhoon/html/template"
)

func main() {
	const tpl = `
<!doctype html>
<html>
	<head>
		<title>{{.Title}}</title>
	</head>
	<body>
		<p>Template name: {{.SubTemplate}}
		{{template "foo" .}}
		{{template .SubTemplate .}}
	</body>
</html>
{{define "foo"}}<div>Template data: {{.Data}}</div>{{end}}`

	data := struct {
		Title string
		Items []string
		SubTemplate string
		Data string
	}{
		Title: "My page",
		SubTemplate: "foo",
		Data: "Four, Five, Six.",
	}

	err := template.Must(template.New("page").Parse(tpl)).Execute(os.Stdout, data)
	if err != nil {
		log.Fatal(err)
	}
}

Output

<!doctype html>
<html>
        <head>
                <title>My page</title>
        </head>
        <body>
                <p>Template name: foo
                <div>Template data: Four, Five, Six.</div>
                <div>Template data: Four, Five, Six.</div>
        </body>
</html>

Documentation

Overview

Package html provides functions for escaping and unescaping HTML text.

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func EscapeString

func EscapeString(s string) string

EscapeString escapes special characters like "<" to become "&lt;". It escapes only five such characters: <, >, &, ' and ". UnescapeString(EscapeString(s)) == s always holds, but the converse isn't always true.

Example
package main

import (
	"fmt"
	"github.com/speedyhoon/html"
)

func main() {
	const s = `"Fran & Freddie's Diner" <tasty@example.com>`
	fmt.Println(html.EscapeString(s))
}
Output:

&#34;Fran &amp; Freddie&#39;s Diner&#34; &lt;tasty@example.com&gt;

func UnescapeString

func UnescapeString(s string) string

UnescapeString unescapes entities like "&lt;" to become "<". It unescapes a larger range of entities than EscapeString escapes. For example, "&aacute;" unescapes to "á", as does "&#225;" and "&#xE1;". UnescapeString(EscapeString(s)) == s always holds, but the converse isn't always true.

Example
package main

import (
	"fmt"
	"github.com/speedyhoon/html"
)

func main() {
	const s = `&quot;Fran &amp; Freddie&#39;s Diner&quot; &lt;tasty@example.com&gt;`
	fmt.Println(html.UnescapeString(s))
}
Output:

"Fran & Freddie's Diner" <tasty@example.com>

Types

This section is empty.

Directories

Path Synopsis
Package template (html/template) implements data-driven templates for generating HTML output safe against code injection.
Package template (html/template) implements data-driven templates for generating HTML output safe against code injection.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL