code: func rub(buf []byte) []byte {
  	// TODO(mdempsky): Handle combining characters?
  	var res bytes.Buffer
  	for _, r := range string(buf) {
  		if unicode.IsSpace(r) {
  			res.WriteRune(r)
  			continue
  		}
  		switch width.LookupRune(r).Kind() {
  		case width.EastAsianWide, width.EastAsianFullwidth:
  			res.WriteString("  ")
  		default:
  			res.WriteByte(' ')
  		}
  	}
  	return res.Bytes()
  }
docs: // Rub returns a copy of buf with all non-whitespace characters replaced
  // by spaces (like rubbing them out with white out).