summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorDave Henderson <dhenderson@gmail.com>2017-06-13 23:07:10 -0400
committerDave Henderson <dhenderson@gmail.com>2017-06-13 23:26:37 -0400
commitded0bcc8efc1bd95700774dfa2840dd83bc876fd (patch)
tree93157cbd0b4ad6939d76ce30c873c8fd3bb8a9be /docs
parentfc522f1213eb96e23ea9d113591892a26f9f2ec3 (diff)
Creating a strings namespace
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/content/functions/general.md149
-rw-r--r--docs/content/functions/strings.md358
2 files changed, 358 insertions, 149 deletions
diff --git a/docs/content/functions/general.md b/docs/content/functions/general.md
index 28f48009..c448948b 100644
--- a/docs/content/functions/general.md
+++ b/docs/content/functions/general.md
@@ -5,25 +5,6 @@ menu:
parent: functions
---
-## `contains`
-
-Contains reports whether the second string is contained within the first. Equivalent to
-[strings.Contains](https://golang.org/pkg/strings#Contains)
-
-### Example
-
-_`input.tmpl`:_
-```
-{{if contains .Env.FOO "f"}}yes{{else}}no{{end}}
-```
-
-```console
-$ FOO=foo gomplate < input.tmpl
-yes
-$ FOO=bar gomplate < input.tmpl
-no
-```
-
## `getenv`
Exposes the [os.Getenv](https://golang.org/pkg/os/#Getenv) function.
@@ -42,42 +23,6 @@ $ gomplate -i 'Hey, {{getenv "FIRSTNAME" "you"}}!'
Hey, you!
```
-## `hasPrefix`
-
-Tests whether the string begins with a certain substring. Equivalent to
-[strings.HasPrefix](https://golang.org/pkg/strings#HasPrefix)
-
-#### Example
-
-_`input.tmpl`:_
-```
-{{if hasPrefix .Env.URL "https"}}foo{{else}}bar{{end}}
-```
-
-```console
-$ URL=http://example.com gomplate < input.tmpl
-bar
-$ URL=https://example.com gomplate < input.tmpl
-foo
-```
-
-## `hasSuffix`
-
-Tests whether the string ends with a certain substring. Equivalent to
-[strings.HasSuffix](https://golang.org/pkg/strings#HasSuffix)
-
-#### Example
-
-_`input.tmpl`:_
-```
-{{.Env.URL}}{{if not (hasSuffix .Env.URL ":80")}}:80{{end}}
-```
-
-```console
-$ URL=http://example.com gomplate < input.tmpl
-http://example.com:80
-```
-
## `bool`
Converts a true-ish string to a boolean. Can be used to simplify conditional statements based on environment variables or other text input.
@@ -116,100 +61,6 @@ Hello, Lisa
Hello, Maggie
```
-## `split`
-
-Creates a slice by splitting a string on a given delimiter. Equivalent to
-[strings.Split](https://golang.org/pkg/strings#Split)
-
-#### Example
-
-```console
-$ gomplate -i '{{range split "Bart,Lisa,Maggie" ","}}Hello, {{.}}{{end}}'
-Hello, Bart
-Hello, Lisa
-Hello, Maggie
-```
-
-## `splitN`
-
-Creates a slice by splitting a string on a given delimiter. The count determines
-the number of substrings to return. Equivalent to [strings.SplitN](https://golang.org/pkg/strings#SplitN)
-
-#### Example
-
-```console
-$ gomplate -i '{{ range splitN "foo:bar:baz" ":" 2 }}{{.}}{{end}}'
-foo
-bar:baz
-```
-## `replaceAll`
-
-Replaces all occurrences of a given string with another.
-
-#### Example
-
-```console
-$ gomplate -i '{{ replaceAll "." "-" "172.21.1.42" }}'
-172-21-1-42
-```
-
-#### Example (with pipeline)
-
-```console
-$ gomplate -i '{{ "172.21.1.42" | replaceAll "." "-" }}'
-172-21-1-42
-```
-
-## `title`
-
-Convert to title-case. Equivalent to [strings.Title](https://golang.org/pkg/strings/#Title)
-
-#### Example
-
-```console
-$ echo '{{title "hello, world!"}}' | gomplate
-Hello, World!
-```
-
-## `toLower`
-
-Convert to lower-case. Equivalent to [strings.ToLower](https://golang.org/pkg/strings/#ToLower)
-
-#### Example
-
-```console
-$ echo '{{toLower "HELLO, WORLD!"}}' | gomplate
-hello, world!
-```
-
-## `toUpper`
-
-Convert to upper-case. Equivalent to [strings.ToUpper](https://golang.org/pkg/strings/#ToUpper)
-
-#### Example
-
-```console
-$ echo '{{toUpper "hello, world!"}}' | gomplate
-HELLO, WORLD!
-```
-
-## `trim`
-
-Trims a string by removing the given characters from the beginning and end of
-the string. Equivalent to [strings.Trim](https://golang.org/pkg/strings/#Trim)
-
-#### Example
-
-_`input.tmpl`:_
-```
-Hello, {{trim .Env.FOO " "}}!
-```
-
-```console
-$ FOO=" world " | gomplate < input.tmpl
-Hello, world!
-```
-
## `urlParse`
Parses a string as a URL for later use. Equivalent to [url.Parse](https://golang.org/pkg/net/url/#Parse)
diff --git a/docs/content/functions/strings.md b/docs/content/functions/strings.md
new file mode 100644
index 00000000..610638dc
--- /dev/null
+++ b/docs/content/functions/strings.md
@@ -0,0 +1,358 @@
+---
+title: strings functions
+menu:
+ main:
+ parent: functions
+---
+
+## `strings.Contains`
+
+Reports whether a substring is contained within a string.
+
+### Usage
+```go
+strings.Contains substr input
+```
+```go
+input | strings.Contains substr
+```
+
+### Example
+
+_`input.tmpl`:_
+```
+{{ if (.Env.FOO | strings.Contains "f") }}yes{{else}}no{{end}}
+```
+
+```console
+$ FOO=foo gomplate < input.tmpl
+yes
+$ FOO=bar gomplate < input.tmpl
+no
+```
+
+## `strings.HasPrefix`
+
+Tests whether a string begins with a certain prefix.
+
+### Usage
+```go
+strings.HasPrefix prefix input
+```
+```go
+input | strings.HasPrefix prefix
+```
+
+#### Example
+
+```console
+$ URL=http://example.com gomplate -i '{{if .Env.URL | strings.HasPrefix "https"}}foo{{else}}bar{{end}}'
+bar
+$ URL=https://example.com gomplate -i '{{if .Env.URL | strings.HasPrefix "https"}}foo{{else}}bar{{end}}'
+foo
+```
+
+## `strings.HasSuffix`
+
+Tests whether a string ends with a certain suffix.
+
+### Usage
+```go
+strings.HasSuffix suffix input
+```
+```go
+input | strings.HasSuffix suffix
+```
+
+### Examples
+
+_`input.tmpl`:_
+```
+{{.Env.URL}}{{if not (.Env.URL | strings.HasSuffix ":80")}}:80{{end}}
+```
+
+```console
+$ URL=http://example.com gomplate < input.tmpl
+http://example.com:80
+```
+
+## `strings.Split`
+
+Creates a slice by splitting a string on a given delimiter.
+
+### Usage
+```go
+strings.Split separator input
+```
+```go
+input | strings.Split separator
+```
+
+### Examples
+
+```console
+$ gomplate -i '{{range ("Bart,Lisa,Maggie" | strings.Split ",") }}Hello, {{.}}{{end}}'
+Hello, Bart
+Hello, Lisa
+Hello, Maggie
+```
+
+## `strings.SplitN`
+
+Creates a slice by splitting a string on a given delimiter. The count determines
+the number of substrings to return.
+
+### Usage
+```go
+strings.SplitN separator count input
+```
+```go
+input | strings.SplitN separator count
+```
+
+#### Example
+
+```console
+$ gomplate -i '{{ range ("foo:bar:baz" | strings.SplitN ":" 2) }}{{.}}{{end}}'
+foo
+bar:baz
+```
+
+## `strings.ReplaceAll`
+
+**Alias:** `replaceAll`
+
+Replaces all occurrences of a given string with another.
+
+### Usage
+```go
+strings.ReplaceAll old new input
+```
+```go
+input | strings.ReplaceAll old new
+```
+
+### Examples
+
+```console
+$ gomplate -i '{{ strings.ReplaceAll "." "-" "172.21.1.42" }}'
+172-21-1-42
+$ gomplate -i '{{ "172.21.1.42" | strings.ReplaceAll "." "-" }}'
+172-21-1-42
+```
+
+## `strings.Title`
+
+**Alias:** `title`
+
+Convert to title-case.
+
+### Usage
+```go
+strings.Title input
+```
+```go
+input | strings.Title
+```
+
+### Example
+
+```console
+$ gomplate -i '{{strings.Title "hello, world!"}}'
+Hello, World!
+```
+
+## `strings.ToLower`
+
+**Alias:** `toLower`
+
+Convert to lower-case.
+
+### Usage
+```go
+strings.ToLower input
+```
+```go
+input | strings.ToLower
+```
+
+#### Example
+
+```console
+$ echo '{{strings.ToLower "HELLO, WORLD!"}}' | gomplate
+hello, world!
+```
+
+## `strings.ToUpper`
+
+**Alias:** `toUpper`
+
+Convert to upper-case.
+
+### Usage
+```go
+strings.ToUpper input
+```
+```go
+input | strings.ToUpper
+```
+
+#### Example
+
+```console
+$ gomplate -i '{{strings.ToUpper "hello, world!"}}'
+HELLO, WORLD!
+```
+
+## `strings.Trim`
+
+Trims a string by removing the given characters from the beginning and end of
+the string.
+
+### Usage
+```go
+strings.Trim cutset input
+```
+```go
+input | strings.Trim cutset
+```
+
+#### Example
+
+```console
+$ gomplate -i '{{ "_-foo-_" | strings.Trim "_-" }}
+foo
+```
+
+## `strings.TrimSpace`
+
+**Alias:** `trimSpace`
+
+Trims a string by removing whitespace from the beginning and end of
+the string.
+
+### Usage
+```go
+strings.TrimSpace input
+```
+```go
+input | strings.TrimSpace
+```
+
+#### Example
+
+```console
+$ gomplate -i '{{ " \n\t foo" | strings.TrimSpace }}'
+foo
+```
+
+## `contains`
+
+**See [`strings.Contains](#strings-contains) for a pipeline-compatible version**
+
+Contains reports whether the second string is contained within the first. Equivalent to
+[strings.Contains](https://golang.org/pkg/strings#Contains)
+
+### Example
+
+_`input.tmpl`:_
+```
+{{if contains .Env.FOO "f"}}yes{{else}}no{{end}}
+```
+
+```console
+$ FOO=foo gomplate < input.tmpl
+yes
+$ FOO=bar gomplate < input.tmpl
+no
+```
+
+## `hasPrefix`
+
+**See [`strings.HasPrefix](#strings-hasprefix) for a pipeline-compatible version**
+
+Tests whether the string begins with a certain substring. Equivalent to
+[strings.HasPrefix](https://golang.org/pkg/strings#HasPrefix)
+
+#### Example
+
+_`input.tmpl`:_
+```
+{{if hasPrefix .Env.URL "https"}}foo{{else}}bar{{end}}
+```
+
+```console
+$ URL=http://example.com gomplate < input.tmpl
+bar
+$ URL=https://example.com gomplate < input.tmpl
+foo
+```
+
+## `hasSuffix`
+
+**See [`strings.HasSuffix](#strings-hassuffix) for a pipeline-compatible version**
+
+Tests whether the string ends with a certain substring. Equivalent to
+[strings.HasSuffix](https://golang.org/pkg/strings#HasSuffix)
+
+#### Example
+
+_`input.tmpl`:_
+```
+{{.Env.URL}}{{if not (hasSuffix .Env.URL ":80")}}:80{{end}}
+```
+
+```console
+$ URL=http://example.com gomplate < input.tmpl
+http://example.com:80
+```
+
+## `split`
+
+**See [`strings.Split](#strings-split) for a pipeline-compatible version**
+
+Creates a slice by splitting a string on a given delimiter. Equivalent to
+[strings.Split](https://golang.org/pkg/strings#Split)
+
+#### Example
+
+```console
+$ gomplate -i '{{range split "Bart,Lisa,Maggie" ","}}Hello, {{.}}{{end}}'
+Hello, Bart
+Hello, Lisa
+Hello, Maggie
+```
+
+## `splitN`
+
+**See [`strings.SplitN](#strings-splitn) for a pipeline-compatible version**
+
+Creates a slice by splitting a string on a given delimiter. The count determines
+the number of substrings to return. Equivalent to [strings.SplitN](https://golang.org/pkg/strings#SplitN)
+
+#### Example
+
+```console
+$ gomplate -i '{{ range splitN "foo:bar:baz" ":" 2 }}{{.}}{{end}}'
+foo
+bar:baz
+```
+
+## `trim`
+
+**See [`strings.Trim](#strings-trim) for a pipeline-compatible version**
+
+Trims a string by removing the given characters from the beginning and end of
+the string. Equivalent to [strings.Trim](https://golang.org/pkg/strings/#Trim)
+
+#### Example
+
+_`input.tmpl`:_
+```
+Hello, {{trim .Env.FOO " "}}!
+```
+
+```console
+$ FOO=" world " | gomplate < input.tmpl
+Hello, world!
+```