Merge pull request #14 from 2KAbhishek/more-themes

Add more themes
This commit is contained in:
Abhishek Keshri 2024-04-03 07:45:20 +05:30 committed by GitHub
commit 85a7ccaf8b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 141 additions and 98 deletions

189
README.md
View file

@ -36,21 +36,74 @@ tmux2k is a highly customizable framework designed to enhance your tmux status b
### 🎨 Available Themes: ### 🎨 Available Themes:
- default (`set @tmux2k-theme 'default'`) - default ![default](./images/default.png)
![default](./images/default.png) - default icons ![default-icons](./images/default-icons.png)
- default icons only (`set @tmux2k-icons-only true`) - catppuccin ![catppuccin](./images/catppuccin.png)
![default-icons](./images/default-icons.png) - catppuccin icons ![catppuccin-icons](./images/catppuccin-icons.png)
- default no powerline (`set @tmux2k-show-powerline false`) - gruvbox ![gruvbox](./images/gruvbox.png)
![default-no-powerline](./images/default-no-powerline.png) - gruvbox icons ![gruvbox-icons](./images/gruvbox-icons.png)
- catppuccin - monokai ![monokai](./images/monokai.png)
![catppuccin](./images/catppuccin.png) - monokai icons ![monokai-icons](./images/monokai-icons.png)
![catppuccin-icons](./images/catppuccin-icons.png) - onedark ![onedark](./images/onedark.png)
- gruvbox - onedark icons ![onedark-icons](./images/onedark-icons.png)
![gruvbox](./images/gruvbox.png) - duo ![duo](./images/duo.png)
![gruvbox-icons](./images/gruvbox-icons.png) - duo icons ![duo-icons](./images/duo-icons.png)
- onedark - duo blue ![duo-blue](./images/duo-blue.png)
![onedark](./images/onedark.png) - default no powerline ![default-no-powerline](./images/default-no-powerline.png)
![onedark-icons](./images/onedark-icons.png)
To use themes:
```bash
# use a theme
set -g @tmux2k-theme 'onedark'
# to show icons only
set -g @tmux2k-icons-only true
# to customize duo bg and fg
set -g @tmux2k-duo-fg "#1688f0" # this will get you duo blue shown above
set -g @tmux2k-duo-bg "#000000" # this will set the bg for duo theme
# to set powerline symbols
set -g @tmux2k-right-sep  # alternate right status bar sep
set -g @tmux2k-win-right-sep  # alternate window right sep
# to not show powerline
set -g @tmux2k-show-powerline false
# set start icon, accpets: `session`, 'window`, or any string
set -g @tmux2k-start-icon ""
```
#### 🖌️ Customize Theme Colors
##### Available Colors:
- `text`: Default text color. Default: `#282a36`
- `bg_main`: Background color for main sections. Default: `#15152a`
- `bg_alt`: Background color for alternate sections. Default: `#45455a`
- `black`: Black color. Default: `#0a0a0f`
- `white`: White color. Default: `#d5d5da`
- `red`: Red color. Default: `#ff001f`
- `light_red`: Light red color. Default: `#ff0055`
- `green`: Green color. Default: `#3dd50a`
- `light_green`: Light green color. Default: `#ccffcc`
- `blue`: Blue color. Default: `#1688f0`
- `light_blue`: Light blue color. Default: `#11dddd`
- `yellow`: Yellow color. Default: `#ffb86c`
- `light_yellow`: Light yellow color. Default: `#ffd21a`
- `purple`: Purple color. Default: `#bf58ff`
- `light_purple`: Light purple color. Default: `#ff65c6`
To customize theme colors:
```bash
set -g @tmux2k-text '#cdcdcd' # change text to white
set -g @tmux2k-bg-main '#ffffff' # change bg to white
set -g @tmux2k-yellow '#f8c800' # change yellow color
```
> You may have to restart `tmux` for some changes to reflect
### 🧩 Available Plugins ### 🧩 Available Plugins
@ -66,7 +119,34 @@ tmux2k is a highly customizable framework designed to enhance your tmux status b
- `weather`: Show weather information - `weather`: Show weather information
- `wimdow`: tmux window list - `wimdow`: tmux window list
### 🪆 Add New Plugins To use plugins:
```bash
# set the left and right plugin sections
set -g @tmux2k-left-plugins "git cpu ram"
set -g @tmux2k-right-plugins "battery network time"
# to customize plugin colors
set -g @tmux2k-[plugin-name]-colors "[background] [foreground]"
set -g @tmux2k-cpu-colors "red black" # set cpu plugin bg to red, fg to black
# to enable compact window list size
set -g @tmux2k-compact-windows true
# change refresh rate
set -g @tmux2k-refresh-rate 5
# weather scale
set -g @tmux2k-show-fahrenheit false
# 24 hour time
set -g @tmux2k-military-time true
# network interface to watch
set -g @tmux2k-network-name "wlo1"
```
#### 🪆 Add New Plugins
To add a new plugin, add a script to the [scripts](./scripts) folder that prints something to the console. To add a new plugin, add a script to the [scripts](./scripts) folder that prints something to the console.
@ -97,88 +177,15 @@ set -g @plugin '2kabhishek/tmux2k'
You can also directly clone the repo to your `~/.tmux/plugins/` folder. You can also directly clone the repo to your `~/.tmux/plugins/` folder.
## 🚀 Usage
tmux2k to should automatically start after installation. Here's how you can customize it's features
```bash
# Left and right status bar plugins
set -g @tmux2k-left-plugins "git cpu ram"
set -g @tmux2k-right-plugins "battery network time"
# change refresh rate
set -g @tmux2k-refresh-rate 5
# weather scale
set -g @tmux2k-show-fahrenheit false
# 24 hour time
set -g @tmux2k-military-time true
# it can accept `session`, 'window`, or any string
set -g @tmux2k-start-icon ""
# network interface to watch
set -g @tmux2k-network-name "wlo1"
# update powerline symbols
set -g @tmux2k-right-sep  # alternate right status bar sep
set -g @tmux2k-win-right-sep  # alternate window right sep
# to disable powerline
set -g @tmux2k-show-powerline false
# to customize theme
set -g @tmux2k-theme 'onedark'
# to show icons only
set -g @tmux2k-icons-only true
# to enable compact window tab size
set -g @tmux2k-compact-windows true
# to customize colors
set -g @tmux2k-text '#cdcdcd' # change text to white
set -g @tmux2k-bg-main '#ffffff' # change bg to white
set -g @tmux2k-yellow '#f8c800' # change yellow color
# to customize plugin colors
set -g @tmux2k-[plugin-name]-colors "[background] [foreground]"
set -g @tmux2k-cpu-colors "blue dark_gray"
```
> You may have to restart `tmux` for some changes to reflect
### 🖌️ Customize Colors
#### Available Colors:
- `text`: Default text color. Default: `#282a36`
- `bg_main`: Background color for main sections. Default: `#15152a`
- `bg_alt`: Background color for alternate sections. Default: `#45455a`
- `black`: Black color. Default: `#0a0a0f`
- `white`: White color. Default: `#d5d5da`
- `red`: Red color. Default: `#ff001f`
- `light_red`: Light red color. Default: `#ff0055`
- `green`: Green color. Default: `#3dd50a`
- `light_green`: Light green color. Default: `#ccffcc`
- `blue`: Blue color. Default: `#1688f0`
- `light_blue`: Light blue color. Default: `#11dddd`
- `yellow`: Yellow color. Default: `#ffb86c`
- `light_yellow`: Light yellow color. Default: `#ffd21a`
- `purple`: Purple color. Default: `#bf58ff`
- `light_purple`: Light purple color. Default: `#ff65c6`
## 🏗️ What's Next ## 🏗️ What's Next
- [ ] [Windows compatibility #8](https://github.com/2KAbhishek/tmux2k/issues/8) - You tell me!
- [ ] [Theming support #9](https://github.com/2KAbhishek/tmux2k/issues/9)
## 🧑‍💻 Behind The Code ## 🧑‍💻 Behind The Code
### 🌈 Inspiration ### 🌈 Inspiration
I came across [dracula/tmux](https://github.com/dracula/tmux) sometime back but it didn't have everything I wanted. I came across [dracula/tmux](https://github.com/dracula/tmux) sometime back and I wanted to create a more customizable and easy to expand solution.
### 💡 Challenges/Learnings ### 💡 Challenges/Learnings

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Before After
Before After

BIN
images/catpuccin-icons.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 59 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 71 KiB

Before After
Before After

BIN
images/duo-blue.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

BIN
images/duo-icons.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

BIN
images/duo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Before After
Before After

BIN
images/monokai-icons.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
images/monokai.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Before After
Before After

View file

@ -20,8 +20,8 @@ icons_only=$(get_tmux_option "@tmux2k-icons-only" false)
compact=$(get_tmux_option "@tmux2k-compact-windows" false) compact=$(get_tmux_option "@tmux2k-compact-windows" false)
text=$(get_tmux_option "@tmux2k-text" '#282a36') text=$(get_tmux_option "@tmux2k-text" '#282a36')
bg_main=$(get_tmux_option "@tmux2k-bg-main" '#15152a') bg_main=$(get_tmux_option "@tmux2k-bg-main" '#000000')
bg_alt=$(get_tmux_option "@tmux2k-bg-alt" '#45455a') bg_alt=$(get_tmux_option "@tmux2k-bg-alt" '#1f1f1f')
black=$(get_tmux_option "@tmux2k-black" '#0a0a0f') black=$(get_tmux_option "@tmux2k-black" '#0a0a0f')
white=$(get_tmux_option "@tmux2k-white" '#d5d5da') white=$(get_tmux_option "@tmux2k-white" '#d5d5da')
red=$(get_tmux_option "@tmux2k-red" '#ff001f') red=$(get_tmux_option "@tmux2k-red" '#ff001f')
@ -75,9 +75,28 @@ set_theme() {
light_blue=$(get_tmux_option "@tmux2k-light-blue" '#91d7e3') light_blue=$(get_tmux_option "@tmux2k-light-blue" '#91d7e3')
yellow=$(get_tmux_option "@tmux2k-yellow" '#f5a97f') yellow=$(get_tmux_option "@tmux2k-yellow" '#f5a97f')
light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#eed49f') light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#eed49f')
purple=$(get_tmux_option "@tmux2k-purple" '#c6a0f6') purple=$(get_tmux_option "@tmux2k-purple" '#b6a0fe')
light_purple=$(get_tmux_option "@tmux2k-light-purple" '#f5bde6') light_purple=$(get_tmux_option "@tmux2k-light-purple" '#f5bde6')
;; ;;
"duo")
duo_bg=$(get_tmux_option "@tmux2k-duo-bg" '#000000')
duo_fg=$(get_tmux_option "@tmux2k-duo-fg" '#ffffff')
text=$(get_tmux_option "@tmux2k-white" "$duo_bg")
bg_main=$(get_tmux_option "@tmux2k-bg-main" "$duo_bg")
bg_alt=$(get_tmux_option "@tmux2k-bg-alt" "$duo_bg")
black=$(get_tmux_option "@tmux2k-black" "$duo_bg")
white=$(get_tmux_option "@tmux2k-white" "$duo_fg")
red=$(get_tmux_option "@tmux2k-red" "$duo_fg")
light_red=$(get_tmux_option "@tmux2k-light-red" "$duo_fg")
green=$(get_tmux_option "@tmux2k-green" "$duo_fg")
light_green=$(get_tmux_option "@tmux2k-light-green" "$duo_fg")
blue=$(get_tmux_option "@tmux2k-blue" "$duo_fg")
light_blue=$(get_tmux_option "@tmux2k-light-blue" "$duo_fg")
yellow=$(get_tmux_option "@tmux2k-yellow" "$duo_fg")
light_yellow=$(get_tmux_option "@tmux2k-light-yellow" "$duo_fg")
purple=$(get_tmux_option "@tmux2k-purple" "$duo_fg")
light_purple=$(get_tmux_option "@tmux2k-light-purple" "$duo_fg")
;;
"gruvbox") "gruvbox")
bg_main=$(get_tmux_option "@tmux2k-bg-main" '#282828') bg_main=$(get_tmux_option "@tmux2k-bg-main" '#282828')
bg_alt=$(get_tmux_option "@tmux2k-bg-alt" '#3c3836') bg_alt=$(get_tmux_option "@tmux2k-bg-alt" '#3c3836')
@ -91,8 +110,24 @@ set_theme() {
light_blue=$(get_tmux_option "@tmux2k-light-blue" '#83a598') light_blue=$(get_tmux_option "@tmux2k-light-blue" '#83a598')
yellow=$(get_tmux_option "@tmux2k-yellow" '#d79921') yellow=$(get_tmux_option "@tmux2k-yellow" '#d79921')
light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#fabd2f') light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#fabd2f')
purple=$(get_tmux_option "@tmux2k-purple" '#b16286') purple=$(get_tmux_option "@tmux2k-purple" '#b162d6')
light_purple=$(get_tmux_option "@tmux2k-light-purple" '#d3869b') light_purple=$(get_tmux_option "@tmux2k-light-purple" '#f386cb')
;;
"monokai")
bg_main=$(get_tmux_option "@tmux2k-bg-main" '#272822')
bg_alt=$(get_tmux_option "@tmux2k-bg-alt" '#3e3d32')
black=$(get_tmux_option "@tmux2k-black" '#272822')
white=$(get_tmux_option "@tmux2k-white" '#f8f8f2')
red=$(get_tmux_option "@tmux2k-red" '#f92672')
light_red=$(get_tmux_option "@tmux2k-light-red" '#ff6188')
green=$(get_tmux_option "@tmux2k-green" '#a6e22e')
light_green=$(get_tmux_option "@tmux2k-light-green" '#a6e22e')
blue=$(get_tmux_option "@tmux2k-blue" '#66d9ef')
light_blue=$(get_tmux_option "@tmux2k-light-blue" '#66d9ef')
yellow=$(get_tmux_option "@tmux2k-yellow" '#e6db74')
light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#e6db74')
purple=$(get_tmux_option "@tmux2k-purple" '#ae81ff')
light_purple=$(get_tmux_option "@tmux2k-light-purple" '#fe81ff')
;; ;;
"onedark") "onedark")
bg_main=$(get_tmux_option "@tmux2k-bg-main" '#282c34') bg_main=$(get_tmux_option "@tmux2k-bg-main" '#282c34')
@ -107,12 +142,13 @@ set_theme() {
light_blue=$(get_tmux_option "@tmux2k-light-blue" '#61afef') light_blue=$(get_tmux_option "@tmux2k-light-blue" '#61afef')
yellow=$(get_tmux_option "@tmux2k-yellow" '#e5c07b') yellow=$(get_tmux_option "@tmux2k-yellow" '#e5c07b')
light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#e5c07b') light_yellow=$(get_tmux_option "@tmux2k-light-yellow" '#e5c07b')
purple=$(get_tmux_option "@tmux2k-purple" '#c678dd') purple=$(get_tmux_option "@tmux2k-purple" '#c678fd')
light_purple=$(get_tmux_option "@tmux2k-light-purple" '#c678dd') light_purple=$(get_tmux_option "@tmux2k-light-purple" '#f678cd')
;; ;;
esac esac
if $icons_only; then if $icons_only; then
show_powerline=false
text=$bg_main text=$bg_main
plugin_colors=( plugin_colors=(
["git"]="text green" ["git"]="text green"