Palettes are used to define a systematic approach to color. For example, I use:
With the MC6Pro without FootSmart, each bank and preset has a color defined. To implement a systematic approach like the one described above is painful and error-prone. You have to set each bank's and each preset's color. And if you decide to switch colors, you have to revisit everywhere it is used.
With FootSmart, a color palette is a name and set of colors making up a theme (all options available with the MC6Pro are in the palette). Instead of banks and presets referring directly to color names, they refer to palettes. In addition, there are a couple of mechanisms of inheritance to further simplify colors.
Color names are available here.
This is based on reverse engineering, and some don't work well.
green
produces blurry text, but lime
is a lovely green color.
Feel free to try colors named like color93
to see what they produce.
The Palettes section is the key palettes
and a list of palettes.
Each palette is a set of keys and values:
name
: the name of the palette used in banks/presets. Required.text
: color for text, optional.background
: color for background, optional.bank_text
: bank text color, optional.bank_background
: bank background color, optional.preset_text
: preset text color, optional.preset_background
: preset background color, optional.preset_shifted_text
: preset text color in shifted state, optional.preset_shifted_background
: preset background color in shifted state, optional.preset_toggle_text
: preset toggle state text color, optional.preset_toggle_background
: preset background toggle state color, optional.preset_led
: preset led color (see semantics), optional.preset_led_shifted
: preset led shifted color, optional.preset_led_toggle
: preset led toggle color, optional.Determining a color is a two step process:
palette
key), then that palette is used.default
then that is used.bank_text
color is in the palette, that color is used.text
color is in the palette, that is used.
The preset_led
fields color a bar below or above the preset name in the display.
They do not inherit from the text
or background
colors as others do.
I have not used them, please contact me if you use them and they work, or don't work.
Example 1:
palettes:
- name: Palette 1
bank_text: white
bank_background: black
preset_text: lime
preset_background: yellow
- name: Palette 2
text: purple
background: orchid
...
banks:
- name: Joe
palette: Palette 1
presets:
- short_name: David
- short_name: Rick
palette: Palette 2
- name: Nick
presets:
- short_name: Julia
In this simplified example:
Joe
displayed in white
on a black
background
(from Palette 1
)David
preset will be displayed in lime
on a yellow
background (also from Palette 1
)Rick
in purple
on a orchid
background, from Palette 2
. This also
demonstrates using text
and background
when the more specific preset_text
and preset_background
are empty.Nick
and the preset Julia
will have the default MC6Pro colors (this is white
for text and black
for background for the preset,
and the default color for the bank.)Example 2:
palettes:
- name: Palette 1
text: white
background: black
- name: default
text: purple
background: orchid
...
banks:
- name: Joe
presets:
- short_name: David
- short_name: Rick
palette: Palette 1
In this next example:
Joe
displayed in purple
on a black background
(from the default
palette)David
preset will be displayed in purple
on a orchid
background (also from the default
palette)Rick
in white
on a black
background, from Palette 1
.default
palette exists, the default MC6Pro colors will never be used.Example 3: My configuration file is more complex, and shows the strategy outlined at the top of this page.