Commit Graph

4 Commits

Author SHA1 Message Date
6f3a16ae58 feat(overrides): Add additional prefix/suffix support
Allows a higher-level prefixes and suffixes by allowing it directly on
`@theme-*` options, which are what are set directly against Tmux's
options.

These are the prefix/suffix options added:

- `@theme-status-left-prefix`
- `@theme-status-left-suffix`
- `@theme-status-right-prefix`
- `@theme-status-right-suffix`
- `@theme-window-status-current-prefix`
- `@theme-window-status-current-suffix`
- `@theme-window-status-prefix`
- `@theme-window-status-suffix`

As they are applied on the highest level, it means they work on ALL
themes, including the `default` theme.

The `@themepack-*` prefix/suffix options still work too, but only for
themes that uses them and have three separate text areas on the left and
right status.
2019-12-22 23:10:59 +00:00
4d4fa6fe36 feat: Add custom prefix/suffix to various "formats" options 2019-12-22 10:27:04 +00:00
ba8616db4c feat: Make all themes easily user-customizable
This is achieved by using custom @-prefixed tmux options which are set
with the `-o` option, meaning, the theme will only set the value if it
is not already set.

This allows users to override any of the options in the theme by simply
setting them before loading the theme.

Additionally all themes are now generated using a custom theme builder,
that allows sharing various parts of themes between them easily.
2019-12-22 10:27:04 +00:00
6e2e24e0f2 feat(test): Add unit tests for all themes
Use Tmux itself by spinning up a temporary test server, load the theme,
and use "show-options" to pull out and validate relevant options that
are set by the theme.
2019-12-09 22:56:37 +00:00