Skip to content

Commit

Permalink
feat: Added configuration for tmux a terminal multiplexer
Browse files Browse the repository at this point in the history
Closes #5
  • Loading branch information
mdsanima committed Jan 6, 2024
1 parent 78ac038 commit b5c38ba
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 1 deletion.
39 changes: 39 additions & 0 deletions .config/tmux/mdsanima.tmux.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copyright © 2023 MDSANIMA

# This is a tmux custom session configuration settings for my home lab hosts
# like RaspberryPi, nVidia Jetson Nano, Oracle Cloud, and other cloud provider.

# For launch this config, type `tmux source-file mdsanima.tmux.conf` in the
# terminal and then connect to the session, type `tmux attach -t mdsanima`.
# Uncomment the ssh options to connect for the hosts.

# Custom names for session, and first window.
rename-session mdsanima
rename-window dev

# Create new window, and panes for nVidia Jetson Nano host.
new-window -n "jet" #"ssh mdsanima@jet-1"
split-window -h -p 50 #"ssh mdsanima@jet-2"

# Create new window, and panes for RaspberryPi host.
new-window -n "rpi" #"ssh mdsanima@rpi-0"
split-window -v -p 50 #"ssh mdsanima@rpi-4"
select-pane -t 1
split-window -h -p 75 #"ssh mdsanima@rpi-1"
split-window -h -p 67 #"ssh mdsanima@rpi-2"
split-window -h -p 50 #"ssh mdsanima@rpi-3"
select-pane -t 5
split-window -h -p 75 #"ssh mdsanima@rpi-5"
split-window -h -p 67 #"ssh mdsanima@rpi-6"
split-window -h -p 50 #"ssh mdsanima@rpi-7"

# Create new window, and panes for Oracle Cloud host.
new-window -n "oracle" #"ssh oracle-node-1"
split-window -v -p 50 #"ssh oracle-node-3"
select-pane -t 1
split-window -h -p 50 #"ssh oracle-node-2"
select-pane -t 3
split-window -h -p 50 #"ssh oracle-node-4"

# Back to dev window.
select-window -t dev
55 changes: 54 additions & 1 deletion .tmux.conf
Original file line number Diff line number Diff line change
@@ -1,3 +1,56 @@
# Copyright © 2023 MDSANIMA

# Check the `Ubuntu 18.04 LTS` on wsl there is a sample `tmux_host.conf` file that needs to be added here.
# This is a tmux base global configuration settings for my home lab hosts and
# is simple as possible. Other custom configuration file is located on this
# repository in this `.config/tmux/mdsanima.tmux.conf` file.

# Set a new prefix key.
set -g prefix `
bind ` send-prefix

# Adding more scroll history in the buffer.
set -g history-limit 50000

# Window titles get renamed automatically.
setw -g automatic-rename

# Window index numbers get reordered on delete.
set-option -g renumber-windows on

# Windows and panes index start at 1, not 0.
set -g base-index 1
setw -g pane-base-index 1

# Enable full mouse support.
set -g mouse on

# Custom color options.
set -g status-style fg=colour11
set -g window-status-current-style fg=colour39
set -g pane-border-style fg=colour240
set -g pane-active-border-style fg=colour39

# Custom host name and clock on the status bar.
set -g status-right "#[fg=colour196]#H #[default]%H:%M"

# Status bar length.
set -g status-left-length 0
set -g status-right-length 0

# Unbind default keys.
unbind C-b
unbind '"'
unbind %

# Reload the tmux config.
bind-key r source-file ~/.tmux.conf

# Key bindings for split panes.
bind-key b split-window -v
bind-key v split-window -h

# Key bindings for move around panes with alt + arrow keys.
bind-key -n M-Up select-pane -U
bind-key -n M-Down select-pane -D
bind-key -n M-Left select-pane -L
bind-key -n M-Right select-pane -R

0 comments on commit b5c38ba

Please sign in to comment.