Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #99 from diogocavilha/rc7.0.0-improve-themes-handling
[rc7.0.0] Improve themes handling and app core. boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom !! ATTENTION !! THIS PR INTRODUCES LOTS OF BREAKING CHANGES boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom boom You might have to reinstall FancyGit after this update, because so many other minor changes have been made on settings manager and some internal routines, as well as this PR will have some more changes yet. So we'll have breaking changes here. It's almost done but it's enough to show what's just around the corner. Fonts Add new fonts. DejaVu-Sans-Mono-Nerd-Font-Complete.ttf DejaVu-Sans-Mono-Nerd-Font-Complete-Mono.ttf JetBrains-Mono-Regular-Nerd-Font-Complete-Mono.ttf JetBrains-Mono-Medium-Nerd-Font-Complete-Mono.ttf Talking about the "prompt styles" Divide prompt styles in two layers: Themes. Themes are related to the way things are placed on terminal prompt, the way they are organized and showed. Color schemes. Color schemes are more like skins to themes. Creating new color schemes now is a lot easier! Creating new themes is much better than it was before, for sure! Removed style commands: fancygit simple. fancygit default. fancygit double-line. fancygit simple-double-line. fancygit human. fancygit human-single-line. fancygit human-dark. fancygit human-dark-single-line. fancygit dark. fancygit dark-double-line. fancygit dark-col-double-line. fancygit light. fancygit light-double-line. As we have themes and color schemes, all style commands have been replaced by theme commands or color scheme commands. Add theme commands: Choose the way things will be presented. fancygit --theme-default. fancygit --theme-human. fancygit --theme-simple. Add color scheme commands: Show a list of available color schemes for the current theme: --show-color-schemes Show a list of all available color schemes: --show-color-schemes-all Show a list of all available themes: --show-themes Choose the skin. fancygit --color-scheme-simple. fancygit --color-scheme-human. fancygit --color-scheme-default. fancygit --color-scheme-dracula. fancygit --color-scheme-dark. fancygit --color-scheme-dark-col. fancygit --color-scheme-light. Relationship between themes and color schemes: --theme-default. --color-scheme-default (default). --color-scheme-dracula. --color-scheme-dark. --color-scheme-dark-col. --color-scheme-light. --theme-human. --color-scheme-human (default). --theme-simple. --color-scheme-simple (default). Bear in mind you must choose one theme by typing fancygit --theme-<name> then you can choose the color scheme for this theme by typing fancygit --color-scheme-<name>. Example: Choosing the default theme (--theme-default): When we switch between themes, the default color scheme for each of them is loaded too. In this case, the default color scheme for --theme-default is --color-scheme-default. So... fancygit --theme-default Default theme Now that we are running the --theme-default, let's change its color scheme from --color-scheme-default to --color-scheme-dracula: fancygit --color-scheme-dracula Color scheme dracula As you can see, the theme is the same, but the color scheme has been changed. And it's pretty easy to create other scheme colors. Their structure is exactly the same for all themes. That font screenshot is one of the new ones: JetBrains-Mono-Medium-Nerd-Font-Complete-Mono.ttf All double line themes have been removed. Now we have new feature switcher commands like fancygit --enable-double-line and fancygit --disable-double-line. That approach is better because the theme is pretty much the same when we have double line or single line, so it could be just a config for it. By the way, when we use the feature switcher command, we don't need to reload the bashrc file, once the theme reads the config on the fly and applies it. Example: Let's supose we're using the --theme-default... Default theme We wish to have a double line prompt here, we can just type fancygit --enable-double-line and... Double line Minor changes Theme human-dark has been removed. Fixed bug when reading changelog content after FancyGit update. Add new command fancygit --changelog-show. It'll always show the changelog content for the most recent FancyGit version. Add command fancygit --enable-rich-notification and fancygit --disable-rich-notification It changes the notification area by switching between icons and simple symbols. Well, I think these are the greatest changes of this version. Hope you all enjoy it! wink
- Loading branch information