Ticket #380 (new task) — at Initial Version

Opened 15 years ago

Last modified 14 years ago

About colors schemes (skins)

Reported by: slavazanko Owned by:
Priority: major Milestone: 4.7.0-pre3
Component: mc-skin Version: master
Keywords: Cc: pahan@…
Blocked By: Blocking:
Branch state: Votes for changeset:

Description

This just my thinks. We need to make simple work with color schemas in mc.

All following examples (commands out) just for simple understanding, not real :)

For example:

$ ls /usr/share/mc/skins
standart.ini b&w.ini dark.ini

in ~/.mc/ini file:

[Midnight Commander]
...
skin=standart.ini
...

But user may customize color scheme:

[Midnight Commander]
...
skin=~/.mc/skin/my_own_skin.ini
...
  • if basename(skin) == skin, then file will be get from /usr/share/mc/skins directory.

Example of skin-file:

[skin]
     name=Standart skin
[core]
    _default_=lightgray;blue
    normal=;
    selected=black;cyan
    marked=yellow;blue
    ...
[files]
    coredump=yellow;red
    temp=gray;
    archive=brightmagenta;
    source=cyan;
    media=green;
    graph=brightcyan;
    database=brightred;
    ...
[viewer]
    ...

[editor]
    normal=lightgray;blue
    bold=yellow;blue
    marked=black;cyan
    whitespace=brightblue;blue
    ...
  • Parameter '_default_' may be present in any section and MUST be present in [core] section;
  • Value of '_default_' parameter in [core] section MUST contain definition of two colors: foreground and background. In other sections value of this parameter MAY contain definition of two colors;
  • If parameter '_default_' is absent in current section, then this parameter will be taken from [core] section;
  • If some color in color pair don't specified, then this color will be taken from '_default_' parameter in current section;
  • section name '[skin]' must be reserved for internal usage. All other section names will free for use (relative to source code).

Is this good idea?

Note: See TracTickets for help on using tickets.