summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorRaymaekers Luca <raymaekers.luca@gmail.com>2023-07-15 23:17:24 +0200
committerRaymaekers Luca <raymaekers.luca@gmail.com>2023-07-15 23:17:24 +0200
commit3f157aa097a1c2a32ce9e94e4aca790032e8c223 (patch)
tree5fa53fb9c1447af490ae4b138444b503540e4b5d /config
parente3b6d0bac537bb8215908cea571f2a0307dc371c (diff)
cleanup on config
Diffstat (limited to 'config')
-rwxr-xr-xconfig/common/tmux/tmux.conf106
1 files changed, 5 insertions, 101 deletions
diff --git a/config/common/tmux/tmux.conf b/config/common/tmux/tmux.conf
index 7508667..409ad66 100755
--- a/config/common/tmux/tmux.conf
+++ b/config/common/tmux/tmux.conf
@@ -1,98 +1,47 @@
-#
# By Nicholas Marriott. Public domain.
# but -now- me.
-#
-
-###########################################################################
-################# MISC. ###################################################
-###########################################################################
-###########################################################################
# Some tweaks to the status line
set -g status-right "%H:%M"
set -g window-status-current-style "underscore"
-
-# If running inside (nested) tmux ($TMUX is set), then change the status line to red
-%if #{TMUX}
-set -g status-bg red
-%endif
-
# Enable RGB color if running in xterm
set-option -sa terminal-overrides ",xterm*:Tc"
-
# Change the default $TERM to xterm-256color
# Necessary because vim ctrl arrows must be defined through TERM
set -g default-terminal "xterm-256color"
set-window-option -g xterm-keys on
-
# No bells at all
set -g bell-action none
-
# Keep windows around after they exit
set -g remain-on-exit off
-
# More history lines
set -g history-limit 16384
-
# Base window is Numero Uno
set -g base-index 1
set-window-option -g pane-base-index 1
-
# Set vi mode when copying
set-window-option -g mode-keys vi
# compatibility with vim for focus based events
set -g focus-events on
-###########################################################################
-################# KEYBINDINGS #############################################
-###########################################################################
-###########################################################################
-
-
+# KEYBINDINGS
# Reload config file
-unbind r
bind r source-file ~/.tmux.conf \; display "Reloaded ~/.tmux.conf"
-
-########## CLIPBOARD ##########
-unbind -T copy-mode-vi Space; #Default for begin-selection
-unbind -T copy-mode-vi Enter; #Default for copy-selection
+# Clipboard
bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -r -selection clipboard"
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -r -selection clipboard"
-
# Unbind ESC
set -sg escape-time 0
-
# Toggle status bar
-unbind t
bind t set-option status
-
# Toggle monitoring window activity
bind m set monitor-activity\; display 'monitor-activity #{?monitor-activity,on,off}'
-
bind M run-shell "tmux set monitor-silence #{?monitor-silence,0,10}"\; display "monitor-silence #{?monitor-silence,on,off}"
-
-
-
-
-# if-shell "true" {
-# if-shell "#{?monitor-silence,true,false}" {
-# set monitor-silence 0
-# }
-# if-shell "#{?monitor-silence,false,true}" {
-# set monitor-silence 10
-# }
-# display "monitor-silence #{?monitor-silence,on,off} #{monitor-silence}"
-# }
-
# Toggle synchronized panes (sending keys to every pane)
-unbind y
bind y set synchronize-panes\; display 'synchronize-panes #{?synchronize-panes,on,off}'
-
# Paste from tmux buffer
-unbind p
bind p paste-buffer
-
# Kill all windows
bind x confirm -p "Kill Pane?" kill-pane
bind X confirm -p "Kill Window?" kill-window
@@ -100,16 +49,10 @@ bind M-x confirm -p "Kill Session?" kill-session
bind M-X confirm -p "Kill Server?" kill-server
# Restart pane
bind k run -C "respawn-pane -k; send-keys !! 'C-j'"
-
-########## SPLIT AND SWAP ###########
# Splitting
-unbind v
bind v split-window -h -c "#{pane_current_path}"
-unbind h
bind h split-window -v -c "#{pane_current_path}"
# Swapping left and right a la vim
-unbind -n M-H
-unbind -n M-L
bind -n M-H swap-pane -U
bind -n M-L swap-pane -D
## Resizing panes
@@ -117,70 +60,31 @@ bind -r C-H resize-pane -L 5
bind -r C-J resize-pane -D 5
bind -r C-K resize-pane -U 5
bind -r C-L resize-pane -R 5
-
-## Default keybindings for resizing
-unbind C-Up
-unbind C-Left
-unbind C-Down
-unbind C-Right
-unbind M-Up
-unbind M-Left
-unbind M-Down
-unbind M-Right
-
# Join and break windows
-unbind j
bind j command-prompt -1p "Take window:" "join-pane -s %%"
-unbind J
bind J command-prompt -1p "Send to window:" "join-pane -t \:%% ; select-window -l"
# Break pane without losing focus
-unbind b
bind b break-pane -t :
# Reset length and shit
-unbind z
bind z select-layout main-vertical
-
-########## NAVIGATION ##########
# Pane navigating with h|j|k|l a la vim
-unbind -n M-h
-unbind -n M-j
-unbind -n M-k
-unbind -n M-l
bind -n -N "select leftwards pane" M-h select-pane -L
bind -n -N "select downwards pane" M-j select-pane -D
bind -n -N "select upwards pane" M-k select-pane -U
bind -n -N "select rightwards pane" M-l select-pane -R
# Window navigating with M-u|i
-unbind -n M-u
-unbind -n M-i
bind -n M-u previous-window
bind -n M-i next-window
# Session navigeting with S-M-u|i
-unbind -n M-y
-unbind -n M-o
bind -n M-U switch-client -p
bind -n M-I switch-client -n
-
-########## Windows ##########
-# Rename window and open new window
-unbind n # DEFAULT KEY: move to next window
-unbind N
-unbind w # DEFAULT KEY: change current window interactively aka choose-tree -zW
+# Renaming
bind n command-prompt "rename-window '%%'"
bind N command-prompt "rename-session '%%'"
-# Start new window where tmux started, will be home because of xmonad
-bind w new-window -c "#{pane_current_path}" #-c "#{pane_current_path}"
+# Starting new windows
+bind w new-window -c "#{pane_current_path}"
bind W new-session -c "$HOME"
-
# Show tree
-unbind S
bind S choose-tree -Z
-
-# Turn the mouse on, but without copy mode dragging
-# set -g mouse on
-# unbind -n MouseDrag1Pane
-# unbind -T copy-mode MouseDrag1Pane
-
# Menu for mounting and ejecting devices.
-unbind E
bind E display-menu -T "#[align=centre]#I:#W" -x W -y W '' Mount 0 "display-popup -E 'amount'"