func format(a []rune, c *Cursor) string {
	i := c.Position
	var b []rune

	out := make([]rune, 0)
	if i < len(a) {
		b = c.Cursor([]rune(a[i : i+1]))
		out = append(out, a[:i]...)   // does not include i
		out = append(out, b...)       // add the cursor
		out = append(out, a[i+1:]...) // add the rest after i
	} else {
		b = c.Cursor([]rune{})
		out = append(out, a...)
		out = append(out, b...)
	}
	return string(out)
}
func format(a []rune, c *Cursor) string {
	i := c.Position
	var b []rune

	out := make([]rune, 0)
	if i < len(a) {
		b = c.Cursor([]rune(a[i : i+1]))
		out = append(out, a[:i]...)   
		out = append(out, b...)       
		out = append(out, a[i+1:]...) 
	} else {
		b = c.Cursor([]rune{})
		out = append(out, a...)
		out = append(out, b...)
	}
	return string(out)
}
func format ( a [ ] rune , c * Cursor ) string { i := c . Position var b [ ] rune out := make ( [ ] rune , 0 ) if i < len ( a ) { b = c . Cursor ( [ ] rune ( a [ i : i + 1 ] ) ) out = append ( out , a [ : i ] ... ) // does not include i out = append ( out , b ... ) // add the cursor out = append ( out , a [ i + 1 : ] ... ) // add the rest after i } else { b = c . Cursor ( [ ] rune { } ) out = append ( out , a ... ) out = append ( out , b ... ) } return string ( out ) }
// insert the cursor rune array into r before the provided index
insert the cursor rune array into r before the provided index