aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tmux.md
diff options
context:
space:
mode:
authorjohannst <johannes.stoelp@gmail.com>2020-04-19 22:13:44 +0200
committerjohannst <johannes.stoelp@gmail.com>2020-04-19 22:13:44 +0200
commitfef4d6ff2ad9f48e6dccde0f061453e6a3ac624e (patch)
treec21dfcf8e7c8895a94e1c72cb9588c94794656b1 /src/tmux.md
parent43e402ba2320ced7972d33c9442b2745afe230f6 (diff)
downloadnotes-fef4d6ff2ad9f48e6dccde0f061453e6a3ac624e.tar.gz
notes-fef4d6ff2ad9f48e6dccde0f061453e6a3ac624e.zip
added new hierarchy
Diffstat (limited to 'src/tmux.md')
-rw-r--r--src/tmux.md110
1 files changed, 0 insertions, 110 deletions
diff --git a/src/tmux.md b/src/tmux.md
deleted file mode 100644
index 04b1111..0000000
--- a/src/tmux.md
+++ /dev/null
@@ -1,110 +0,0 @@
-# tmux(1)
-
-Terminology:
-- `session` is a collection of pseudo terminals which can have multiple
- `windows`
-- `window` uses the entire screen and can be split into rectangular `panes`
-- `pane` is a single pseudo terminal instance
-
-# Tmux cli
-```markdown
-# Session
-tmux creates new session
-tmux ls list running sessions
-tmux kill-session -t <s> kill running session <s>
-tmux attach -t <s> [-d] attach to session <s>, detach other clients [-d]
-tmux detach -s <s> detach all clients from session <s>
-
-# Environment
-tmux showenv -g show global tmux environment variables
-tmux setenv -g <var> <val> set variable in global tmux env
-
-# Misc
-tmux source-file <file> source config <file>
-tmux lscm list available tmux commnds
-tmux show -g show global tmux options
-tmux display <msg> display message in tmux status line
-```
-## Scripting
-```markdown
-# Session
-tmux list-sessions -F '#S' list running sessions, only IDs
-
-# Window
-tmux list-windows -F '#I' -t <s> list window IDs for session <s>
-tmux selectw -t <s>:<w> select window <w> in session <s>
-
-# Pane
-tmux list-panes -F '#P' -t <s>:<w> list pane IDs for window <w> in session <s>
-tmux selectp -t <s>:<w>.<p> select pane <p> in window <w> in session <s>
-
-# Run commands
-tmux send -t <s>:<w>.<p> "ls" C-m send cmds/keys to pane
-tmux run -t <p> <sh-cmd> run shell command <sh-cmd> in background and report output on pane -t <p>
-```
-
-For example cycle through all panes in all windows in all sessions:
-```bash
-# bash
-for s in $(tmux list-sessions -F '#S'); do
- for w in $(tmux list-windows -F '#I' -t $s); do
- for p in $(tmux list-panes -F '#P' -t $s:$w); do
- echo $s:$w.$p
- done
- done
-done
-```
-
-# Bindings
-
-```markdown
-prefix d detach from current session
-prefix c create new window
-prefix w open window list
-prefix $ rename session
-prefix , rename window
-prefix . move current window
-```
-
-Following bindings are specific to my [`tmux.conf`](https://github.com/johannst/dotfiles/blob/master/tmux.conf):
-```markdown
-C-s prefix
-
-# Panes
-prefix s horizontal split
-prefix v vertical split
-prefix f toggle maximize/minimize current pane
-
-# Movement
-prefix Tab toggle between window
-
-prefix h move to pane left
-prefix j move to pane down
-prefix k move to pane up
-prefix l move to pane right
-
-# Resize
-prefix C-h resize pane left
-prefix C-j resize pane down
-prefix C-k resize pane up
-prefix C-l resize pane right
-
-# Copy/Paste
-prefix C-v enter copy mode
-prefix C-p paste yanked text
-prefix C-b open copy-buffer list
-
-# In Copy Mode
-v enable visual mode
-y yank selected text
-```
-
-# Command mode
-
-To enter command mode `prefix :`.
-
-Some useful commands are:
-```markdown
-setw synchronize-panes on/off enables/disables synchronized input to all panes
-list-keys -t vi-copy list keymaps for vi-copy mode
-```