aboutsummaryrefslogtreecommitdiff
path: root/query.go
blob: d627c456df1f0199f4cda230d27574af89275701 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package gemini

import (
	"net/url"
	"strings"
)

// QueryEscape escapes a string for use in a Gemini URL query.
// It is like url.PathEscape except that it also replaces plus signs
// with their percent-encoded counterpart.
func QueryEscape(query string) string {
	return strings.ReplaceAll(url.PathEscape(query), "+", "%2B")
}

// QueryUnescape is identical to url.PathUnescape.
func QueryUnescape(query string) (string, error) {
	return url.PathUnescape(query)
}