mirror of
				https://github.com/gohugoio/hugo.git
				synced 2024-05-11 05:54:58 +00:00 
			
		
		
		
	Add a chomp function.
- Mostly useful in pipelines.
This commit is contained in:
		@@ -252,6 +252,11 @@ Convert all characters in string to titlecase.
 | 
			
		||||
 | 
			
		||||
e.g. `{{title "BatMan"}}` → "Batman"
 | 
			
		||||
 | 
			
		||||
### chomp
 | 
			
		||||
Removes any trailing newline characters. Useful in a pipeline to remove newlines added by other processing (including `markdownify`).
 | 
			
		||||
 | 
			
		||||
e.g., `{{chomp "<p>Blockhead</p>\n"` → `"<p>Blockhead</p>"`
 | 
			
		||||
 | 
			
		||||
### highlight
 | 
			
		||||
Take a string of code and a language, uses Pygments to return the syntax
 | 
			
		||||
highlighted code in HTML. Used in the [highlight
 | 
			
		||||
 
 | 
			
		||||
@@ -29,6 +29,7 @@ import (
 | 
			
		||||
	"os"
 | 
			
		||||
	"path/filepath"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"regexp"
 | 
			
		||||
	"sort"
 | 
			
		||||
	"strconv"
 | 
			
		||||
	"strings"
 | 
			
		||||
@@ -37,6 +38,7 @@ import (
 | 
			
		||||
var localTemplates *template.Template
 | 
			
		||||
var tmpl Template
 | 
			
		||||
var funcMap template.FuncMap
 | 
			
		||||
var chompRegexp *regexp.Regexp
 | 
			
		||||
 | 
			
		||||
type Template interface {
 | 
			
		||||
	ExecuteTemplate(wr io.Writer, name string, data interface{}) error
 | 
			
		||||
@@ -667,6 +669,15 @@ func RelRef(page interface{}, ref string) template.HTML {
 | 
			
		||||
	return refPage(page, ref, "RelRef")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func Chomp(text interface{}) (string, error) {
 | 
			
		||||
	s, err := cast.ToStringE(text)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return "", err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return chompRegexp.ReplaceAllString(s, ""), nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func SafeHtml(text string) template.HTML {
 | 
			
		||||
	return template.HTML(text)
 | 
			
		||||
}
 | 
			
		||||
@@ -1022,5 +1033,8 @@ func init() {
 | 
			
		||||
		"partial":     Partial,
 | 
			
		||||
		"ref":         Ref,
 | 
			
		||||
		"relref":      RelRef,
 | 
			
		||||
		"chomp":       Chomp,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	chompRegexp = regexp.MustCompile("[\r\n]+$")
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user