code: def list_names():
      
      names = get_all_names()
      # This is 375 right now. Probably won't ever change, but I'm not sure.
      nameslen = len(names)
      print('\nListing {} names:\n'.format(nameslen))
      # Using 3 columns of names, still alphabetically sorted from the top down.
      # Longest name so far: lightgoldenrodyellow (20 chars)
      namewidth = 20
      # namewidth * columns == 60, colorwidth * columns == 18, final == 78.
      swatch = ' ' * 9
  
      third = nameslen // 3
      lastthird = third * 2
      cols = (
          names[0: third],
          names[third: lastthird],
          names[lastthird:],
      )
      # Exactly enough spaces to fill in a blank item (+2 for ': ').
      # This may not ever be used, unless another 'known name' is added.
      blankitem = ' ' * (namewidth + len(swatch) + 2)
  
      for i in range(third):
          nameset = []
          for colset in cols:
              try:
                  nameset.append(colset[i])
              except IndexError:
                  nameset.append(None)
                  continue
          line = C('').join(
              C(': ').join(
                  C(name.rjust(namewidth)),
                  C(swatch, back=name),
              ) if name else blankitem
              for name in nameset
          )
          print(line)
  
      return 0
docs: List all known color names.