code: func (e *edit) Comment(reLine []string) error {
  	allReSearch := make([]*regexp.Regexp, len(reLine))
  
  	for i, v := range reLine {
  		if re, err := regexp.Compile(v); err != nil {
  			return err
  		} else {
  			allReSearch[i] = re
  		}
  	}
  
  	if _, err := e.file.Seek(0, os.SEEK_SET); err != nil {
  		return err
  	}
  
  	char := []byte(e.CommentChar + " ")
  	isNew := false
  	buf := new(bytes.Buffer)
  
  	// Check every line.
  	for {
  		line, err := e.buf.ReadBytes('\n')
  		if err == io.EOF {
  			break
  		}
  
  		for _, v := range allReSearch {
  			if v.Match(line) {
  				line = append(char, line...)
  
  				if !isNew {
  					isNew = true
  				}
  				break
  			}
  		}
  
  		if _, err = buf.Write(line); err != nil {
  			return err
  		}
  	}
  
  	if isNew {
  		return e.rewrite(buf.Bytes())
  	}
  	return nil
  }
docs: // Comment inserts the comment character in lines that mach any regular expression
  // in reLine.