# **Basic Information**
# **Start a Session**
```bash
tmux
tmux new -s <session_name>
```
# **Tmux Commands**
- The following commands can be ran after initiating the `tmux` command prefix.
```text
# default tmux command prefix
[CTRL + b]
# open new window, new window will be numbered at the bottom
c
# rename current window
,
# switch to different window
<window_number>
# split window vertically
[SHIFT + %]
# split window horizontally
[SHIFT + "]
# move between splits
use arrow keys
# zoom in or out of split
z
# adjust the height/width of split
[CTRL + arrow key]
# start or stop logging with tmux-logging plugin
[SHIFT + p]
# enter edit mode to scroll
[
# exit edit mode
q
```
# **Configuration File**
The following can be used to manage `tmux` plugins - https://github.com/tmux-plugins/tpm. To install it run the following:
```bash
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
vim ~/.tmux.conf
```
Below are the contents of `~/.tmux.conf`.
```text
# remap prefix to screens
set -g prefix C-a
bind C-a send-prefix
unbind C-b
# quality of life stuff
set -g history-limit 10000
set -g allow-rename off
# search mode set to vi, emac is the default
set-window-option -g mode-keys vi
# manage plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-logging'
run '~/.tmux/plugins/tpm/tpm'
# source tmux.conf
bind r source-file ~/.tmux.conf \; display "Reloaded!"
# windows and panes start at index 1
set -g base-index 1
setw -g pane-base-index 1
# renumber windows when one is closed
set -g renumber-windows on
# change key binds for splitting windows
bind | split-window -hc "#{pane_current_path}"
bind - split-window -vc "#{pane_current_path}"
# keep current path when creating new window
bind c new-window -c "#{pane_current_path}"
```
Reload `tmux` environment so TPM is sourced.
```
tmux source ~/.tmux.conf
```
Within a `tmux` session enter the command prefix followed by `[SHIFT + i]` to install the plugin(s).
# **References**
- [Tmux Config File](https://builtin.com/articles/tmux-config)
# **Practical Application**
| Platform | Name | Notes |
| -------- | ---- | ----- |
| | | |