diff options
Diffstat (limited to 'tmux.html.markdown')
| -rw-r--r-- | tmux.html.markdown | 236 | 
1 files changed, 48 insertions, 188 deletions
| diff --git a/tmux.html.markdown b/tmux.html.markdown index b4a9fde9..ed606998 100644 --- a/tmux.html.markdown +++ b/tmux.html.markdown @@ -8,74 +8,67 @@ filename: LearnTmux.txt  <a href="http://tmux.sourceforge.net/"> -tmux</a> is a terminal multiplexer: it enables a number of terminals to be  -created, accessed, and controlled from a single screen. tmux may be detached  +tmux</a> is a terminal multiplexer: it enables a number of terminals to be +created, accessed, and controlled from a single screen. tmux may be detached  from a screen and continue running in the background, then later reattached.  ``` +  tmux [command]     # Run a command +                     # 'tmux' with no commands will create a new session -  tmux [command]      # Run a command  -                      # 'tmux' with no commands will create a new session - -    new               # Create a new session -     -s "Session"     # Create named session -     -n "Window"      # Create named Window -     -c "/dir"        # Start in target directory -	     -    attach            # Attach last/available session -     -t "#"           # Attach target session -     -d               # Detach the session from other instances -	 -    ls                # List open sessions -     -a               # List all open sessions -	 -    lsw               # List windows -     -a               # List all windows -     -s               # List all windows in session -	 -    lsp               # List panes -     -a               # List all panes -     -s               # List all panes in session -     -t               # List app panes in target -	 -    kill-window       # Kill current window -     -t "#"           # Kill target window -     -a               # Kill all windows -     -a -t "#"        # Kill all windows but the target    -	         -    kill-session      # Kill current session -     -t "#"           # Kill target session -     -a               # Kill all sessions -     -a -t "#"        # Kill all sessions but the target    +    new              # Create a new session +     -s "Session"    # Create named session +     -n "Window"     # Create named Window +     -c "/dir"       # Start in target directory + +    attach           # Attach last/available session +     -t "#"          # Attach target session +     -d              # Detach the session from other instances + +    ls               # List open sessions +     -a              # List all open sessions + +    lsw              # List windows +     -a              # List all windows +     -s              # List all windows in session + +    lsp              # List panes +     -a              # List all panes +     -s              # List all panes in session +     -t              # List app panes in target + +    kill-window      # Kill current window +     -t "#"          # Kill target window +     -a              # Kill all windows +     -a -t "#"       # Kill all windows but the target + +    kill-session     # Kill current session +     -t "#"          # Kill target session +     -a              # Kill all sessions +     -a -t "#"       # Kill all sessions but the target  ## Key Bindings -#   The method of controlling an attached tmux session is fairly simple, but  -# there are two keys we will see repeated throughout this write-up (as well as -# the man pages).  -	 -  (C-b) == Ctrl + b +#   The method of controlling an attached tmux session is via key combinations +# called 'Prefix' keys. -  (M-1) == Alt + b -  	   -or- -  	   Meta + b +------------------------------------------------------------------------------ +  (C-b) = Ctrl + b    # 'Prefix' combination required to use keybinds -# The default keybinds are as follows: +  (M-1) = Alt + 1 +            -or- +          Meta + 1 + +------------------------------------------------------------------------------ -   C-b             # Send the prefix key (C-b) through to the application. -   C-o             # Rotate the panes in the current window forwards. -   C-z             # Suspend the tmux client.     ?               # List all key bindings.     :               # Enter the tmux command prompt.     r               # Force redraw of the attached client. -     c               # Create a new window. -   $               # Rename the current session. -   ,               # Rename the current window.     !               # Break the current pane out of the window.     %               # Split the current pane into two, left and right. @@ -92,14 +85,14 @@ from a screen and continue running in the background, then later reattached.     d               # Detach the current client.     D               # Choose a client to detach. -    +     &               # Kill the current window.     x               # Kill the current pane.     Up, Down        # Change to the pane above, below, left, or right.     Left, Right -   M-1 to M-5      # Arrange panes:  +   M-1 to M-5      # Arrange panes:                     #    1) even-horizontal                     #    2) even-vertical                     #    3) main-horizontal @@ -108,149 +101,16 @@ from a screen and continue running in the background, then later reattached.     C-Up, C-Down    # Resize the current pane in steps of one cell.     C-Left, C-Right -                +     M-Up, M-Down    # Resize the current pane in steps of five cells.     M-Left, M-Right - - - -### Configuring ~/.tmux.conf - -  tmux.conf can be used to set options automatically on start up, much  -like how .vimrc or init.el are used. - - -# Example tmux.conf   -# 2014.9   -   -   -### Keybinds   -###########################################################################   -   -# Unbind C-b as the default prefix    -unbind-key C-b   -   -# Set new default prefix   -set-option -g prefix `   -#set-option -g prefix C-a   -   -# Return to previous window when prefix is pressed twice   -bind-key C-a last-window   -bind-key ` last-window   -   -# Allow swapping C-a and ` using F11/F12    -bind-key F11 set-option -g prefix C-a   -bind-key F12 set-option -g prefix `   -   -# Activate inner-most session (when nesting tmux)   -# to send commands   -bind-key a send-prefix   -   -# Index Start   -set -g base-index 1   -   -# Window Cycle/Swap     -bind e previous-window   -bind f next-window   -bind E swap-window -t -1   -bind F swap-window -t +1   -   -# easy-to-remember split pane commands   -bind | split-window -h   -bind - split-window -v   -unbind '"'   -unbind %   -   -# moving between panes with vim movement keys   -bind h select-pane -L   -bind j select-pane -D   -bind k select-pane -U   -bind l select-pane -R   -   -   -### Theme   -###########################################################################   -   -# Statusbar Color Palatte   -set-option -g status-justify left   -set-option -g status-bg black   -set-option -g status-fg white   -set-option -g status-left-length 40   -set-option -g status-right-length 80   -   -# Pane Border Color Palette     -set-option -g pane-active-border-fg green   -set-option -g pane-active-border-bg black   -set-option -g pane-border-fg white   -set-option -g pane-border-bg black   -   -# Message Color Palette     -set-option -g message-fg black   -set-option -g message-bg green   -   -# Window Status Color Palette     -setw -g window-status-bg black   -setw -g window-status-current-fg green   -setw -g window-status-bell-attr default   -setw -g window-status-bell-fg red   -setw -g window-status-content-attr default   -setw -g window-status-content-fg yellow   -setw -g window-status-activity-attr default   -setw -g window-status-activity-fg yellow   -   -   -### UI   -###########################################################################   -   -# Statusbar   -set-option -g status-utf8 on   -   -# Keybind preference -setw -g mode-keys vi   -set-option -g status-keys vi   - -# Notification   -setw -g monitor-activity on   -set -g visual-activity on   -set-option -g bell-action any   -set-option -g visual-bell off   -   -# Mouse   -setw -g mode-mouse on   -set-option -g mouse-select-pane on   -set -g mouse-resize-pane on   -set -g mouse-select-window on   -   -# Automatically set window titles   -set-option -g set-titles on   -set-option -g set-titles-string '#H:#S.#I.#P #W #T' # window number,program name,active (or not)   -   -# Statusbar Adjustments   -set -g status-left '#[fg=red]#H#[fg=green]:#[fg=white]#S #[fg=green]][#[default] '   -set -g status-interval 3   -   -# Statusbar with right-aligned Date / Time   -#set -g status-right ' #[fg=green]][#[fg=white] #T #[fg=green]][ #[fg=blue]%Y-%m-%d #[fg=white]%H:%M#[default] '   -   -# Show performance counters in statusbar   -# Requires https://github.com/thewtex/tmux-mem-cpu-load/   -#set -g status-right ' #[fg=green]][#[fg=white] #(tmux-mem-cpu-load 5 4) #[fg=green]][ #[fg=yellow]%H:%M#[default] '   -  -   -### Misc                                                                                                                           -###########################################################################   -   -# Scrollback/History limit   -set -g history-limit 4096   -   -bind r source-file ~/.tmux.conf  ```  ### External Resources  <a href="http://tmux.sourceforge.net/">Tmux | Home</a><br> -<a href="http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man1/tmux.1?query=tmux">Manual page</a><br> -<a href="https://stackoverflow.com/questions/11558907/is-there-a-better-way-to-display-cpu-usage-in-tmux">Display CPU/MEM % in statusbar</a><br> +<a href="http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man1/tmux.1?query=tmux">Tmux Manual page</a><br>  <a href="http://wiki.gentoo.org/wiki/Tmux">Archlinux Wiki</a><br>  <a href="https://wiki.archlinux.org/index.php/Tmux">Gentoo Wiki</a><br> +<a href="https://stackoverflow.com/questions/11558907/is-there-a-better-way-to-display-cpu-usage-in-tmux">Display CPU/MEM % in statusbar</a><br> | 
