From 60f9e870747afb67526c226b872694913007b037 Mon Sep 17 00:00:00 2001 From: johannst Date: Thu, 10 Sep 2020 23:25:06 +0200 Subject: renamed misc -> tools --- src/misc/tmux.md | 110 ------------------------------------------------------- 1 file changed, 110 deletions(-) delete mode 100644 src/misc/tmux.md (limited to 'src/misc/tmux.md') diff --git a/src/misc/tmux.md b/src/misc/tmux.md deleted file mode 100644 index 04b1111..0000000 --- a/src/misc/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 kill running session -tmux attach -t [-d] attach to session , detach other clients [-d] -tmux detach -s detach all clients from session - -# Environment -tmux showenv -g show global tmux environment variables -tmux setenv -g set variable in global tmux env - -# Misc -tmux source-file source config -tmux lscm list available tmux commnds -tmux show -g show global tmux options -tmux display 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 list window IDs for session -tmux selectw -t : select window in session - -# Pane -tmux list-panes -F '#P' -t : list pane IDs for window in session -tmux selectp -t :.

select pane

in window in session - -# Run commands -tmux send -t :.

"ls" C-m send cmds/keys to pane -tmux run -t

run shell command in background and report output on pane -t

-``` - -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 -``` -- cgit v1.2.3