Repository: PowerToys
Issue: User defined format for export of all colors in list using template
Labels: Idea-New PowerToy,Needs-Triage

### Description of the new feature / enhancement

I've never posted here before so please, forgive me if I'm coming in hot lol Before I mention the idea, I wanted to thank everyone for an awesome list of tools. They become more useful every time I sit at this desk. Your work is greatly appreciated.

Feature/Enhancement idea:

Add an option to export all colors listed in color picker history to file as well as an option to customize the format of the exported data. 

### Scenario when this would be used?

This would be VERY useful for quickly generating large blocks of preformatted color data for pasting into a code editor. An example: Working with Home Assistant and YAML files, you can write YAML to provide a LED strip or bulb a series of colors formatted as such:

```
###Example Service Call
entity_id: light.led_strip
colors:
  - [255,0,0]
  - [0,255,0]
  - [0,0,255]
```

To be able to write a short template file to point Color Picker to would be a huge time saver when creating large series of custom color sequences. My thought was that the exported color items could be stored as an array of strings and then listed to the user's specifications from their template file. For example, with an array named ListOfColors(), 

Template may look like: 

```
=======================
ColorPickerExportTemplate.conf
=======================
###User could enter any string with line breaks/symbols as needed to appear before the list prints
Header = "entity_id: light.led_strip \n colors: \n"
###Below options in template to format the exported list by adding before/after each color is printed i.e line breaks, brackets, syntax quirks, etc.
PreColorOutput = "  - "
PostColorOutput = "\n"

###Lastly, user would define a footer for anything they'd want also depending on their use case (in this example YAML syntax)
Footer = "TransitionSpeed = 10 \n TransitionStyle = Pulse"

```

The idea would be to use for loop to spit out list of colors already formatted using Color Picker in string format while allowing the user to sprinkle in their own touches. The great part is that these would be basic text files and could be saved, shared, loaded again. This would allow users to have quick an easy access to numerous predefined color data formats AND list formats that suit their scripting languages or use other use cases.



### Supporting information

Couple of potential ways to present this. 

Just an option in settings that enables user to load a file such as ColorPickerExportTemplate.conf or ColorPickerExportTemplate.txt.

In this case, it's up to user to write up these files using external editor.

Or, since the conf file example in the use case box above only has 4 variables (Could be more in the future), these could be implemented in the GUI while occupying minimal space using text fields where user could enter Header, PreColorOutput, PostColorOutput, Footer strings on the fly. Could add Save/Load Template buttons also.

The above "script" example I threw together would like like the following without comments:

```
=======================
ColorPickerExportTemplate.conf
=======================

Header = "entity_id: light.led_strip \n colors: \n"
PreColorOutput = "  - "
PostColorOutput = "\n"
Footer = "TransitionSpeed = 10 \n TransitionStyle = Pulse"
```

with a user-defined color picker format of [%Re, %Gr, %Bl], the intended result for the exported text file would be:

```
entity_id: light.led_strip
colors:
  - [252, 100, 100]
  - [0, 100, 0]
  - [255, 255, 255]
  - [0, 0, 180]
TransitionSpeed = 10
TransitionStyle = Pulse

```

This feature most certainly isn't what I'd consider a must have, but I just thought it had some potential, so I threw it out there. It could be used to pump out a wide variety of large blocks of ready made code snippets and payload data for tons of applications.

Welp, that's my schpeal. If anyone does get around to this and finds it interesting, I'd be glad to help. If not, thank you for your time and your work! <3 :)