/tmux

Soho vibes for tmux

Primary LanguageShellMIT LicenseMIT

Rosé Pine for tmux

All natural pine, faux fur and a bit of soho vibes for the classy minimalist

Usage

NOTE: It uses a Nerdfont by default for the icons, so it is recommended to have a Nerdfont set as your terminal font

  1. Install TPM

  1. Add the Rosé Pine plugin with the following lines:
set -g @plugin 'rose-pine/tmux'
# ... alongside
set -g @plugin 'tmux-plugins/tpm'
# To update plugin for future revisions or bug fixes, do the "Prefix + U" keycombo

  1. Set your preferred variant:
set -g @rose_pine_variant 'main' # Options are 'main', 'moon' or 'dawn'

  1. After adding TPM and the Rosé Pine theme to .tmux.conf, restart tmux and use the Prefix + I (capital I) combo to source your configuration. For updating the plugin, the key combination is Prefix + U (which TPM sets by default).

  1. Optional but recommended: Activate the extra modules, they are enabled by writing 'on' after the option name
set -g @rose_pine_host 'on' # Enables hostname in the status bar
set -g @rose_pine_date_time '' # It accepts the date UNIX command format (man date for info)
set -g @rose_pine_user 'on' # Turn on the username component in the statusbar
set -g @rose_pine_directory 'on' # Turn on the current folder component in the status bar
set -g @rose_pine_bar_bg_disable 'on' # Disables background color, for transparent terminal emulators
# If @rose_pine_bar_bg_disable is set to 'on', uses the provided value to set the background color
# It can be any of the on tmux (named colors, 256-color set, `default` or hex colors)
# See more on http://man.openbsd.org/OpenBSD-current/man1/tmux.1#STYLES
set -g @rose_pine_bar_bg_disabled_color_option 'default'

set -g @rose_pine_only_windows 'on' # Leaves only the window module, for max focus and space
set -g @rose_pine_disable_active_window_menu 'on' # Disables the menu that shows the active window on the left

set -g @rose_pine_default_window_behavior 'on' # Forces tmux default window list behaviour
set -g @rose_pine_show_current_program 'on' # Forces tmux to show the current running program as window name
set -g @rose_pine_show_pane_directory 'on' # Forces tmux to show the current directory as window name
# Previously set -g @rose_pine_window_tabs_enabled

# Example values for these can be:
set -g @rose_pine_left_separator ' > ' # The strings to use as separators are 1-space padded
set -g @rose_pine_right_separator ' < ' # Accepts both normal chars & nerdfont icons
set -g @rose_pine_field_separator ' | ' # Again, 1-space padding, it updates with prefix + I
set -g @rose_pine_window_separator ' - ' # Replaces the default `:` between the window number and name

# These are not padded
set -g @rose_pine_session_icon '' # Changes the default icon to the left of the session name
set -g @rose_pine_current_window_icon '' # Changes the default icon to the left of the active window name
set -g @rose_pine_folder_icon '' # Changes the default icon to the left of the current directory folder
set -g @rose_pine_username_icon '' # Changes the default icon to the right of the hostname
set -g @rose_pine_hostname_icon '󰒋' # Changes the default icon to the right of the hostname
set -g @rose_pine_date_time_icon '󰃰' # Changes the default icon to the right of the date module
set -g @rose_pine_window_status_separator "" # Changes the default icon that appears between window names

# Very beta and specific opt-in settings, tested on v3.2a, look at issue #10
set -g @rose_pine_prioritize_windows 'on' # Disables the right side functionality in a certain window count / terminal width
set -g @rose_pine_width_to_hide '80' # Specify a terminal width to toggle off most of the right side functionality
set -g @rose_pine_window_count '5' # Specify a number of windows, if there are more than the number, do the same as width_to_hide
  • The separator options should go back to the defaults ( →, ← and | NerdFont characters) if the options are unset and you close all tmux sessions (a full restart)
  • The @rose_pine_width_to_hide and rose_pine_window_count settings do not refresh automatically. They need to be refreshed manually, their current state is discussed here.
  • For @rose_pine_window_tabs_enabled and any further naming changes / notices, see issue #14.

  1. Integration with other status-bar plugins
# Add to the beginning / end of the left and right sections your own.
set -g @rose_pine_status_left_prepend_section '#{tmux_mode_indicator}'
set -g @rose_pine_status_left_append_section 'It works'
set -g @rose_pine_status_right_prepend_section 'with normal text'
set -g @rose_pine_status_right_append_section 'too'

This plugin is being developed and tested on tmux v3.2a on Pop_OS! (Ubuntu). If there are problems with other versions, do let me know.

Gallery

  • Main

image

  • Moon

image

  • Dawn

image

Thanks to