-
-
Save spicycode/1229612 to your computer and use it in GitHub Desktop.
# 0 is too far from ` ;) | |
set -g base-index 1 | |
# Automatically set window title | |
set-window-option -g automatic-rename on | |
set-option -g set-titles on | |
#set -g default-terminal screen-256color | |
set -g status-keys vi | |
set -g history-limit 10000 | |
setw -g mode-keys vi | |
setw -g mode-mouse on | |
setw -g monitor-activity on | |
bind-key v split-window -h | |
bind-key s split-window -v | |
bind-key J resize-pane -D 5 | |
bind-key K resize-pane -U 5 | |
bind-key H resize-pane -L 5 | |
bind-key L resize-pane -R 5 | |
bind-key M-j resize-pane -D | |
bind-key M-k resize-pane -U | |
bind-key M-h resize-pane -L | |
bind-key M-l resize-pane -R | |
# Vim style pane selection | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
# Use Alt-vim keys without prefix key to switch panes | |
bind -n M-h select-pane -L | |
bind -n M-j select-pane -D | |
bind -n M-k select-pane -U | |
bind -n M-l select-pane -R | |
# Use Alt-arrow keys without prefix key to switch panes | |
bind -n M-Left select-pane -L | |
bind -n M-Right select-pane -R | |
bind -n M-Up select-pane -U | |
bind -n M-Down select-pane -D | |
# Shift arrow to switch windows | |
bind -n S-Left previous-window | |
bind -n S-Right next-window | |
# No delay for escape key press | |
set -sg escape-time 0 | |
# Reload tmux config | |
bind r source-file ~/.tmux.conf | |
# THEME | |
set -g status-bg black | |
set -g status-fg white | |
set -g window-status-current-bg white | |
set -g window-status-current-fg black | |
set -g window-status-current-attr bold | |
set -g status-interval 60 | |
set -g status-left-length 30 | |
set -g status-left '#[fg=green](#S) #(whoami)' | |
set -g status-right '#[fg=yellow]#(cut -d " " -f 1-3 /proc/loadavg)#[default] #[fg=white]%H:%M#[default]' |
Use Alt-arrow keys without prefix key to switch panes
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -DThese don't work in MAC OSX. Please help!
@schadha17 you could try this instead, provided you don't already use these keys within tmux:
`
bind -n Home select-pane -L
bind -n End select-pane -R
bind -n Pageup select-pane -U
bind -n Pagedown select-pane -D
`
(They are the arrow keys but using 'fn' instead. The 'M' (alt) key does not really play ball with any shortcuts inside of tmux or text editors seemingly - see my above comment)
Looks great man. I cannot however for the love of my life understand how i can paste text from clipboard into nano or vim using this conf. Can anyone please help me?
Looks great man. I cannot however for the love of my life understand how i can paste text from clipboard into nano or vim using this conf. Can anyone please help me?
Use Ctrl+Shift+V to paste in terminal (vim or nano)
Looks great man. I cannot however for the love of my life understand how i can paste text from clipboard into nano or vim using this conf. Can anyone please help me?
Try Shift-Insert to paste.
Looks great man. I cannot however for the love of my life understand how i can paste text from clipboard into nano or vim using this conf. Can anyone please help me?
Try press the Shift
before you paste your text.
Not having a success getting the window switching to work.
Any suggestions for a Tmux 2.4 newb?# Shift arrow to switch windows bind -n S-Left previous-window bind -n S-Right next-window
I have the same question, anyone help?
set -g window-status-current-style bg=white,fg=black,bold
Thanks man !
Can someone explain about the bottom right status information.
What is being displayed there with time?
BTW the its the best conf!
Thanks man
Can someone explain about the bottom right status information.
What is being displayed there with time?BTW the its the best conf!
Thanks man
I believe it's CPU load
yeah figured its /proc/loadavg
Thank you for sharing! For those poor souls, like me, who have found themselves beating their heads against the wall (or other hard surfaces) after trying an unholy amounts [ and combinations ] of key bindings, including reserving to utilizing AutoHotKey scripts, while utilizing Windows Terminal - there is a cure!
You will have to un-bind the default actions from the key combinations in the settings.json. Example :
{ "command": { "action": "", "input": "" }, "keys": [ "alt+up" ] },
{ "command": { "action": "", "input": "" }, "keys": [ "alt+down" ] }
I am not sure if it works on all versions (in my case, version 1.2.2381.0). However, hopefully this tip will give the suffering individuals a direction at root of the cause => to check if their CLI/Terminal app is hijacking the commands.
Cheers.
mode-mouse
option is no more availble in new version. Instead you can use set -g mouse on
at line 13.
I love this thread. Thank you so much @premanuj, @juvenal, @spicycode 🙇♂️
Posted 9 years ago, and still the best game in town !
This conf. is almost perfect, it only needs the copy/paste feature, so for anybody reading this hopefully this spares you some time searching :
# Enable mouse & Copy/Paste - Requirements: xclip
set -g mouse on
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'select-pane -t=; copy-mode -e; send-keys -M'"
bind -n WheelDownPane select-pane -t= \; send-keys -M
bind -n C-WheelUpPane select-pane -t= \; copy-mode -e \; send-keys -M
bind -T copy-mode-vi C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-vi C-WheelDownPane send-keys -X halfpage-down
bind -T copy-mode-emacs C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-emacs C-WheelDownPane send-keys -X halfpage-down
# # Use vim keybindings in copy mode
setw -g mode-keys vi
# Update default binding of `Enter` to also use copy-pipe
unbind -T copy-mode-vi Enter
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -selection c"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard"
Source : https://unix.stackexchange.com/questions/318281/how-to-copy-and-paste-with-a-mouse-with-tmux
I've been using tmux for about 12 years, and I was today years old that I even thought to remap selecting panes. Omg this gist is amazing.
Pretty nice, but rescaling with hjkl
is suboptimal.
My proposition: use -r C-{hjkl}
to allow resizing by holding ctrl
and pressing b+jjj
(-r indicate repeatable key )
bind-key -r C-j resize-pane -D
bind-key -r C-k resize-pane -U
bind-key -r C-h resize-pane -L
bind-key -r C-l resize-pane -R
Also adding -r
to the walk bindings improves my work routine a lot. 😏
The only problem I had was that the left and right arrow keys send b and f respectively, so I did this:
# Use Alt-arrow keys without prefix key to switch panes
bind -n M-b select-pane -L
bind -n M-f select-pane -R
# ....
This might fix what @schadha17 and @IanVaughan are facing?
Very cool. How about set -g mouse-select-pane
to allow selecting panes using the mouse? (1.8)
Very cool. How about
set -g mouse-select-pane
to allow selecting panes using the mouse? (1.8)
works in xterm, however not in linux consoles
Very cool. How about
set -g mouse-select-pane
to allow selecting panes using the mouse? (1.8)works in xterm, however not in linux consoles
Okay, thanks for the info. That was not in my focus.
Sadly I found mouse-select-pane
broke my ability to copy/paste with my urxvt+Vim combo
Incompatible with tmux >= 2.9 (invalid option errors).
Related: tmux/tmux#1689
Hey guys, I'm back in Linux after 10+ yrs and this site...Great stuff! I need help w/TMUX, as it has really helped out w/SSD testing and debug, even though I'd only use it occasionally. But now I'm at Ricoh, and I've got 20+ dev machines to use. I need help with where to place my tmux.conf or how to set environment (Linux) so I can source (source ~/.tmux.conf) when I've done mods to that file...Please can you help??
invalid option: mode-mouse
invalid option: window-status-current-bg
invalid option: window-status-current-fg
invalid option: window-status-current-attr
Looks like some of these option names have changed over time. For example, window-status-current-bg looks like:
set-window-option -g window-status-current-style bg=default
Use Alt-arrow keys without prefix key to switch panes
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
These don't work in MAC OSX. Please help!