code: func (ui *UI) DisplayKeyValueTable(prefix string, table [][]string, padding int) {
  	rows := len(table)
  	if rows == 0 {
  		return
  	}
  
  	var displayTable [][]string
  	for _, row := range table {
  		if len(row) > 0 {
  			displayTable = append(displayTable, row)
  		}
  	}
  	columns := len(displayTable[0])
  
  	if columns < 2 || !ui.IsTTY {
  		ui.DisplayNonWrappingTable(prefix, displayTable, padding)
  		return
  	}
  
  	ui.displayWrappingTableWithWidth(prefix, displayTable, padding)
  }
docs: // DisplayKeyValueTable outputs a matrix of strings as a table to UI.Out.
  // Prefix will be prepended to each row and padding adds the specified number
  // of spaces between columns. The final columns may wrap to multiple lines but
  // will still be confined to the last column. Wrapping will occur on word
  // boundaries.