# **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 | | -------- | ---- | ----- | | | | |