to the shell
+ if key_binding_not_set "$prefix"; then
+ tmux bind-key "$prefix" send-prefix
+ fi
+ fi
+
+ # If Ctrl-a is prefix then `Ctrl-a + a` switches between alternate windows.
+ # Works for any prefix character.
+ if key_binding_not_set "$prefix_without_ctrl"; then
+ tmux bind-key "$prefix_without_ctrl" last-window
+ fi
+
+ # easier switching between next/prev window
+ if key_binding_not_set "C-p"; then
+ tmux bind-key C-p previous-window
+ fi
+ if key_binding_not_set "C-n"; then
+ tmux bind-key C-n next-window
+ fi
+
+ # source `.tmux.conf` file - as suggested in `man tmux`
+ if key_binding_not_set "R"; then
+ local tmux_config=$(get_tmux_config)
+
+ tmux bind-key R run-shell " \
+ tmux source-file ${tmux_config} > /dev/null; \
+ tmux display-message 'Sourced ${tmux_config}!'"
+ fi
+}
+main
diff --git a/dot_config/tmux/plugins/tmux/LICENSE b/dot_config/tmux/plugins/tmux/LICENSE
new file mode 100644
index 0000000..006383b
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2021 Catppuccin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/dot_config/tmux/plugins/tmux/README.md b/dot_config/tmux/plugins/tmux/README.md
new file mode 100644
index 0000000..916399a
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/README.md
@@ -0,0 +1,376 @@
+
+ 
+
+ Catppuccin for Tmux
+
+
+
+
+
+
+
+
+
+
+
+
+
+## Content
+
+1. [Themes](#themes)
+2. [Installation](#installation)
+3. [Overview](#overview)
+4. [Configuration options](#configuration-options)
+ 1. [Window](#window)
+ 2. [Window default](#window-default)
+ 3. [Window current](#window-current)
+ 4. [Status](#status)
+ 5. [Customizing modules](#customizing-modules)
+ 6. [Battery module](#battery-module)
+5. [Create a custom module](#create-a-custom-module)
+6. [Configuration Examples](#configuration-examples)
+ 1. [Config 1](#config-1)
+ 2. [Config 2](#config-2)
+ 3. [Config 3](#config-3)
+
+## Themes
+
+- 🌻 [Latte](./catppuccin-latte.tmuxtheme)
+- 🪴 [Frappé](./catppuccin-frappe.tmuxtheme)
+- 🌺 [Macchiato](./catppuccin-macchiato.tmuxtheme)
+- 🌿 [Mocha](./catppuccin-mocha.tmuxtheme)
+
+## Installation
+
+In order to have the icons displayed correctly please use / update your favorite [patched font](https://www.nerdfonts.com/font-downloads).
+If you do not have a patched font installed, you can override or remove any icon. Check the documentation bellow on the options available.
+
+### TPM
+
+1. Install [TPM](https://github.com/tmux-plugins/tpm)
+2. Add the Catppuccin plugin:
+
+```bash
+set -g @plugin 'catppuccin/tmux'
+# ...alongside
+set -g @plugin 'tmux-plugins/tpm'
+```
+
+3. (Optional) Set your preferred flavour, it defaults to `"mocha"`:
+
+```bash
+set -g @catppuccin_flavour 'latte' # or frappe, macchiato, mocha
+```
+
+### Manual
+
+1. Copy your desired theme's configuration contents into your Tmux config (usually stored at `~/.tmux.conf`)
+2. Reload Tmux by either restarting the session or reloading it with `tmux source-file ~/.tmux.conf`
+
+## Overview
+
+
+This is a diagram on how the theme is split between it's components.
+
+## Configuration options
+
+All flavours support certain levels of customization that match our [Catppuccin
+Style Guide][style-guide]. To add these customizations, add any of the following
+options to your Tmux configuration.
+
+### Window
+
+#### Set the window left separator:
+```sh
+set -g @catppuccin_window_left_separator "█"
+```
+
+#### Set the window middle separator:
+```sh
+set -g @catppuccin_window_middle_separator "█"
+```
+
+#### Set the window right separator:
+```sh
+set -g @catppuccin_window_right_separator "█"
+```
+
+#### Position the number:
+```sh
+set -g @catppuccin_window_number_position "left"
+```
+Values:
+- left - the number will be on the left part of the window
+- right - the number will be on the right part of the window
+
+#### Enable window status:
+```sh
+set -g @catppuccin_window_status_enable "yes"
+```
+Values:
+- yes - this will enable the window status part
+- no - this will disable the window status part
+
+#### Enable window status icons instead of text:
+```sh
+set -g @catppuccin_window_status_icon_enable "yes"
+```
+Values:
+- yes - this will replace the windows status text with icons
+- no - this will keep the windows status in text format
+
+#### Override windows status icons
+```sh
+set -g @catppuccin_icon_window_last ""
+set -g @catppuccin_icon_window_current ""
+set -g @catppuccin_icon_window_zoom ""
+set -g @catppuccin_icon_window_mark ""
+set -g @catppuccin_icon_window_silent ""
+set -g @catppuccin_icon_window_activity ""
+set -g @catppuccin_icon_window_bell ""
+```
+
+### Window default
+
+#### Set the window default color fill:
+```sh
+set -g @catppuccin_window_default_fill "number"
+```
+Values:
+- number - only the number of the window part will have color
+- all - the entire window part will have the same color
+- none - the entire window part will have no color
+
+#### Override the window default text:
+```sh
+set -g @catppuccin_window_default_text "#{b:pane_current_path}" # use "#W" for application instead of directory
+```
+
+### Window current
+
+#### Set the window current color fill:
+```sh
+set -g @catppuccin_window_current_fill "number"
+```
+Values:
+- number - only the number of the window part will have color
+- all - the entire window part will have the same color
+- none - the entire window part will have no color
+
+#### Override the window current text:
+```sh
+set -g @catppuccin_window_current_text "#{b:pane_current_path}" # use "#W" for application instead of directory
+```
+
+#### Set the current directory format
+```sh
+set -g @catppuccin_window_current_format_directory_text "#{b:pane_current_path}"
+```
+Use this to overide the way the current directory is displayed.
+
+#### Set the directory format
+```sh
+set -g @catppuccin_window_format_directory_text "#{b:pane_current_path}"
+```
+Use this to overide the way the directory is displayed.
+
+### Status
+
+#### Set the status module left separator:
+```sh
+set -g @catppuccin_status_left_separator ""
+```
+
+#### Set the status module right separator:
+```sh
+set -g @catppuccin_status_right_separator "█"
+```
+
+#### Set the status module right separator inverse:
+```sh
+set -g @catppuccin_status_right_separator_inverse "no"
+```
+Values:
+- yes - the colors will be inverted for the right separator
+- no - the colors will not be inverted for the right separator
+
+#### Set the status connect separator:
+```sh
+set -g @catppuccin_status_connect_separator "yes"
+```
+Values:
+- yes - the background color of the separator will not blend in with the brackground color of tmux
+- no - the background color of the separator will blend in with the brackground color of tmux
+
+
+#### Set the status module color fill:
+```sh
+set -g @catppuccin_status_fill "icon"
+```
+Values:
+- icon - only the icon of the module will have color
+- all - the entire module will have the same color
+
+#### Set the module list
+```sh
+set -g @catppuccin_status_modules "application session"
+```
+Provide a list of modules and the order in which you want them to appear in the status.
+
+Available modules:
+- application - display the current window running application
+- directory - display the basename of the current window path
+- session - display the number of tmux sessions running
+- user - display the username
+- host - display the hostname
+- date_time - display the date and time
+- [battery](#battery-module) - display the battery
+
+### Customizing modules
+
+Every module (except the module "session") supports the following overrides:
+
+#### Override the specific module icon
+```sh
+set -g @catppuccin_[module_name]_icon "icon"
+```
+
+#### Override the specific module color
+```sh
+set -g @catppuccin_[module_name]_color "color"
+```
+
+#### Override the specific module text
+```sh
+set -g @catppuccin_[module_name]_text "text"
+```
+
+#### Removing a specific module option
+```sh
+set -g @catppuccin_[module_name]_[option] "null"
+```
+This is for the situation where you want to remove the icon from a module.
+Ex:
+```sh
+set -g @catppuccin_date_time_icon "null"
+```
+
+### Battery module
+
+#### Requirements
+This module depends on [tmux-battery](https://github.com/tmux-plugins/tmux-battery/tree/master).
+
+#### Install
+The prefered way to install tmux-battery is using [TPM](https://github.com/tmux-plugins/tpm).
+
+#### Configure
+Load tmux-battery after you load catppuccin.
+```sh
+set -g @plugin 'catppuccin/tmux'
+...
+set -g @plugin 'tmux-plugins/tmux-battery'
+```
+
+Add the battery module to the status modules list.
+```sh
+set -g @catppuccin_status_modules "... battery ..."
+```
+
+## Create a custom module
+
+It is possible to add a new custom module or overrite any of the existing modules.
+
+Look into custom/README.md for more details.
+
+Any file added to the custom folder will be preserved when updating catppuccin.
+
+## Configuration Examples
+Below are provided a few configurations as examples or starting points.
+
+Note:
+When switching bettwen configurations run:
+```sh
+tmux kill-server
+```
+In order to kill the tmux server and clear all global variables.
+
+
+### Config 1
+
+
+```sh
+set -g @catppuccin_window_right_separator "█ "
+set -g @catppuccin_window_number_position "right"
+set -g @catppuccin_window_middle_separator " | "
+
+set -g @catppuccin_window_default_fill "none"
+
+set -g @catppuccin_window_current_fill "all"
+
+set -g @catppuccin_status_modules "application session user host date_time"
+set -g @catppuccin_status_left_separator "█"
+set -g @catppuccin_status_right_separator "█"
+
+set -g @catppuccin_date_time_text "%Y-%m-%d %H:%M:%S"
+```
+
+### Config 2
+
+
+```sh
+set -g @catppuccin_window_left_separator "█"
+set -g @catppuccin_window_right_separator "█ "
+set -g @catppuccin_window_number_position "right"
+set -g @catppuccin_window_middle_separator " █"
+
+set -g @catppuccin_window_default_fill "number"
+
+set -g @catppuccin_window_current_fill "number"
+set -g @catppuccin_window_current_text "#{pane_current_path}"
+
+set -g @catppuccin_status_modules "application session date_time"
+set -g @catppuccin_status_left_separator ""
+set -g @catppuccin_status_right_separator " "
+set -g @catppuccin_status_right_separator_inverse "yes"
+set -g @catppuccin_status_fill "all"
+set -g @catppuccin_status_connect_separator "no"
+```
+
+### Config 3
+
+
+```sh
+set -g @catppuccin_window_left_separator ""
+set -g @catppuccin_window_right_separator " "
+set -g @catppuccin_window_middle_separator " █"
+set -g @catppuccin_window_number_position "right"
+
+set -g @catppuccin_window_default_fill "number"
+set -g @catppuccin_window_default_text "#W"
+
+set -g @catppuccin_window_current_fill "number"
+set -g @catppuccin_window_current_text "#W"
+
+set -g @catppuccin_status_modules "directory user host session"
+set -g @catppuccin_status_left_separator " "
+set -g @catppuccin_status_right_separator ""
+set -g @catppuccin_status_right_separator_inverse "no"
+set -g @catppuccin_status_fill "icon"
+set -g @catppuccin_status_connect_separator "no"
+
+set -g @catppuccin_directory_text "#{pane_current_path}"
+```
+
+[style-guide]: https://github.com/catppuccin/catppuccin/blob/main/docs/style-guide.md
+
+## 💝 Thanks to
+
+- [Pocco81](https://github.com/catppuccin)
+- [vinnyA3](https://github.com/vinnyA3)
+- [rogeruiz](https://github.com/rogeruiz)
+
+
+
+
+Copyright © 2021-present Catppuccin Org
+

diff --git a/dot_config/tmux/plugins/tmux/assets/config1.png b/dot_config/tmux/plugins/tmux/assets/config1.png
new file mode 100644
index 0000000..79bc1af
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/assets/config1.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:19b8b4ff6c75075ab7593f1d20fcbee897dcc1bb8babe472bc8ce697aa7a8c83
+size 93462
diff --git a/dot_config/tmux/plugins/tmux/assets/config2.png b/dot_config/tmux/plugins/tmux/assets/config2.png
new file mode 100644
index 0000000..0a8a13e
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/assets/config2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:df84b94a68f3e94a9b89ca08c17df4411e6c6f260d8cf199b206fd00191a8c59
+size 79236
diff --git a/dot_config/tmux/plugins/tmux/assets/config3.png b/dot_config/tmux/plugins/tmux/assets/config3.png
new file mode 100644
index 0000000..40eb5a0
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/assets/config3.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0a96df00a128915de05e409aada417b9d57085c1df1af8c2bfe7eb53d441a1c5
+size 84927
diff --git a/dot_config/tmux/plugins/tmux/assets/frappe.webp b/dot_config/tmux/plugins/tmux/assets/frappe.webp
new file mode 100644
index 0000000..64c14f8
Binary files /dev/null and b/dot_config/tmux/plugins/tmux/assets/frappe.webp differ
diff --git a/dot_config/tmux/plugins/tmux/assets/latte.webp b/dot_config/tmux/plugins/tmux/assets/latte.webp
new file mode 100644
index 0000000..6e48ac9
Binary files /dev/null and b/dot_config/tmux/plugins/tmux/assets/latte.webp differ
diff --git a/dot_config/tmux/plugins/tmux/assets/macchiato.webp b/dot_config/tmux/plugins/tmux/assets/macchiato.webp
new file mode 100644
index 0000000..df3aa04
Binary files /dev/null and b/dot_config/tmux/plugins/tmux/assets/macchiato.webp differ
diff --git a/dot_config/tmux/plugins/tmux/assets/mocha.webp b/dot_config/tmux/plugins/tmux/assets/mocha.webp
new file mode 100644
index 0000000..d9ee469
Binary files /dev/null and b/dot_config/tmux/plugins/tmux/assets/mocha.webp differ
diff --git a/dot_config/tmux/plugins/tmux/assets/overview.png b/dot_config/tmux/plugins/tmux/assets/overview.png
new file mode 100644
index 0000000..02bc754
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/assets/overview.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cf7b173dfc74e285ff94e9ad649d736aedcdae6a2cd56d1488c75722594cf04e
+size 227645
diff --git a/dot_config/tmux/plugins/tmux/assets/preview.webp b/dot_config/tmux/plugins/tmux/assets/preview.webp
new file mode 100644
index 0000000..3224dc1
Binary files /dev/null and b/dot_config/tmux/plugins/tmux/assets/preview.webp differ
diff --git a/dot_config/tmux/plugins/tmux/catppuccin-frappe.tmuxtheme b/dot_config/tmux/plugins/tmux/catppuccin-frappe.tmuxtheme
new file mode 100644
index 0000000..a38a73f
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/catppuccin-frappe.tmuxtheme
@@ -0,0 +1,17 @@
+# NOTE: you can use vars with $ and ${} as long as the str is double quoted: ""
+# WARNING: hex colors can't contain capital letters
+
+# --> Catppuccin (Frappe)
+thm_bg="#303446"
+thm_fg="#c6d0f5"
+thm_cyan="#99d1db"
+thm_black="#292c3c"
+thm_gray="#414559"
+thm_magenta="#ca9ee6"
+thm_pink="#f4b8e4"
+thm_red="#e78284"
+thm_green="#a6d189"
+thm_yellow="#e5c890"
+thm_blue="#8caaee"
+thm_orange="#ef9f76"
+thm_black4="#626880"
diff --git a/dot_config/tmux/plugins/tmux/catppuccin-latte.tmuxtheme b/dot_config/tmux/plugins/tmux/catppuccin-latte.tmuxtheme
new file mode 100644
index 0000000..16f078f
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/catppuccin-latte.tmuxtheme
@@ -0,0 +1,17 @@
+# NOTE: you can use vars with $ and ${} as long as the str is double quoted: ""
+# WARNING: hex colors can't contain capital letters
+
+# --> Catppuccin (Latte)
+thm_bg="#dce0e8"
+thm_fg="#4c4f69"
+thm_cyan="#179299"
+thm_black="#e6e9ef"
+thm_gray="#bcc0cc"
+thm_magenta="#ea76cb"
+thm_pink="#8839ef"
+thm_red="#d20f39"
+thm_green="#40a02b"
+thm_yellow="#df8e1d"
+thm_blue="#1e66f5"
+thm_orange="#fe640b"
+thm_black4="#acb0be"
diff --git a/dot_config/tmux/plugins/tmux/catppuccin-macchiato.tmuxtheme b/dot_config/tmux/plugins/tmux/catppuccin-macchiato.tmuxtheme
new file mode 100644
index 0000000..c90bf76
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/catppuccin-macchiato.tmuxtheme
@@ -0,0 +1,17 @@
+# NOTE: you can use vars with $ and ${} as long as the str is double quoted: ""
+# WARNING: hex colors can't contain capital letters
+
+# --> Catppuccin (Macchiato)
+thm_bg="#24273a"
+thm_fg="#cad3f5"
+thm_cyan="#91d7e3"
+thm_black="#1e2030"
+thm_gray="#363a4f"
+thm_magenta="#c6a0f6"
+thm_pink="#f5bde6"
+thm_red="#ed8796"
+thm_green="#a6da95"
+thm_yellow="#eed49f"
+thm_blue="#8aadf4"
+thm_orange="#f5a97f"
+thm_black4="#5b6078"
diff --git a/dot_config/tmux/plugins/tmux/catppuccin-mocha.tmuxtheme b/dot_config/tmux/plugins/tmux/catppuccin-mocha.tmuxtheme
new file mode 100644
index 0000000..41e6369
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/catppuccin-mocha.tmuxtheme
@@ -0,0 +1,17 @@
+# NOTE: you can use vars with $ and ${} as long as the str is double quoted: ""
+# WARNING: hex colors can't contain capital letters
+
+# --> Catppuccin (Mocha)
+thm_bg="#1e1e2e"
+thm_fg="#cdd6f4"
+thm_cyan="#89dceb"
+thm_black="#181825"
+thm_gray="#313244"
+thm_magenta="#cba6f7"
+thm_pink="#f5c2e7"
+thm_red="#f38ba8"
+thm_green="#a6e3a1"
+thm_yellow="#f9e2af"
+thm_blue="#89b4fa"
+thm_orange="#fab387"
+thm_black4="#585b70"
diff --git a/dot_config/tmux/plugins/tmux/custom/README.md b/dot_config/tmux/plugins/tmux/custom/README.md
new file mode 100644
index 0000000..232df4a
--- /dev/null
+++ b/dot_config/tmux/plugins/tmux/custom/README.md
@@ -0,0 +1,32 @@
+# User defined modules
+
+## Description
+
+This folder is used to store user defined modules.
+You can use this folder to add a new module or override any existing module.
+To override an existing module, make sure you use the same name for your module as the module you want to override.
+You can also override the window module for current and default window.
+
+## Create a new module
+
+Use the [Module template](#module-template) (or example.sh) as a starting point when creating a new module.
+Save the new module under this folder using the module name as the file name and .sh as the extension.
+Update the status module list with your module.
+```sh
+set -g @catppuccin_status_modules "... ..."
+
+```
+
+## Module template
+```sh
+show_() { # save this module in a file with the name .sh
+ local index=$1 # this variable is used by the module loader in order to know the position of this module
+ local icon="$(get_tmux_option "@catppuccin__icon" "