func RepeatRune(r rune, n uint) string {
	var sb strings.Builder
	for i := uint(0); i < n; i++ {
		_, err := sb.WriteRune(r)
		if err != nil {
			return ""
		}
	}
	return sb.String()
}
With repeated runes that consists of more than 1 byte,
the positioning of characters in VT100 is not correct;
there is a space between each rune.
However, when placing runes at a given x,y, it appears to work.
Repeat a rune, n number of times.
Returns an empty string if memory can not be allocated within append.
package main
import "strings"
func mapS(sl []string, f func(string) string) []string {
	result := make([]string, len(sl))
	for i, s := range sl {
		result[i] = f(s)
	}
	return result
}
func filterS(sl []string, f func(string) bool) []string {
	result := make([]string, 0, len(sl))
	for i := range sl {
		if f(sl[i]) {
			result = append(result, sl[i])
		}
	}
	return result
}